Contact Form No Server
Collect Submissions Without Hosting Backend Code
If your site is static (or you just don’t want to deploy and maintain backend code), you still need a reliable place for submissions to go. Web2Phone runs the backend on our servers — you keep your HTML form and paste a small snippet.
Works with static HTML, GitHub Pages, Webflow, WordPress (custom forms), Netlify, Cloudflare Pages, and more.
Quick win
If you’re building on a static site, this is the cleanest “no server” setup:
Why “No Server” Forms Usually Break
People think a contact form is frontend-only. It isn’t. A form needs server-side processing: receiving POST requests, validating data, blocking abuse, and delivering messages.
- Static sites can’t process form submissions without a backend service.
- Email-only setups fail silently (spam, DNS auth, host restrictions).
- Plugins and form builders add bloat and ongoing maintenance.
- “Quick hacks” turn into permanent support tickets.
Web2Phone solves this by running the backend for you. We receive submissions, apply protections, attempt delivery to your chosen channels, and store a dashboard record.
✓ What You Get
- Keep your existing HTML form and styling
- Web2Phone processes submissions on our backend
- Deliver to email, WhatsApp, or both (per endpoint)
- Domain allow-listing + rate limiting
- Automated spam checks in the embed script
- Dashboard record so nothing vanishes
Comparing form backends?
Set Up in 3 Steps
No server setup. No SMTP headaches. You keep the form — we handle processing and delivery.
Create an Endpoint
Sign up, create an endpoint, choose delivery (email, WhatsApp, or both), and add allowed domains.
Add the Embed Script
Add attributes to your form and include the Web2Phone embed script on the page.
Receive + Log
We attempt delivery to your selected channels and store the submission in your dashboard.
Example: Contact Form No Server (HTML)
<form data-web2phone="form"
data-public-key="YOUR_PUBLIC_KEY"
data-endpoint="https://web2phone.co.uk/api/v1/submit/">
<input type="text" name="name" placeholder="Your name" required>
<input type="email" name="email" placeholder="Your email" required>
<textarea name="message" placeholder="Your message" required></textarea>
<button type="submit">Send</button>
<p data-w2p-output></p>
</form>
<script src="https://web2phone.co.uk/static/formsapp/js/embed.js"></script>
Tip: Enable domain allow-listing so only your approved domains can submit.
Want faster responses? Many users deliver submissions to WhatsApp as well as email.
Contact Form to WhatsApp →Common Mistakes (And Quick Fixes)
If your “no server” form isn’t working, it’s usually one of these.
Domain allow-listing doesn’t match
If allow-listing is enabled, submissions must originate from an allowed domain. Add your real domain (and staging domain).
Testing from file:// or restricted previews
Local files and some preview tools don’t send reliable Origin/Referer. Test from a real URL.
Embed script missing or blocked
Ensure the script is included and not blocked by strict CSP, privacy tools, or ad blockers.
Missing name attributes
Inputs must have name attributes (e.g. name="email") or nothing meaningful gets submitted.
Another script hijacks submit
Some themes/builders intercept form submits. Test with a plain HTML form first to confirm baseline behaviour.
You forgot the output element
Include <p data-w2p-output></p> so users see immediate success/error feedback.
Ready to Add a Contact Form Without Running a Server?
Web2Phone processes submissions on our backend, attempts delivery to your chosen channels, and stores a record in your dashboard. Keep your site simple — and stop maintaining “just a little backend”.
✓ Free plan available • ✓ No credit card required • ✓ Setup in minutes