✓ No server to run • We handle form submissions on our backend

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

Set Up in 3 Steps

No server setup. No SMTP headaches. You keep the form — we handle processing and delivery.

1

Create an Endpoint

Sign up, create an endpoint, choose delivery (email, WhatsApp, or both), and add allowed domains.

2

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