Form to email — no PHP, no SMTP, no backend.
Form to email means your HTML form's POST request gets routed through a hosted endpoint that emails you the submission — no PHP, no SMTP account, no backend code. splitforms is that endpoint: point your form's action at https://splitforms.com/api/submit with a hidden access_key field, and every submission is spam-checked, stored in your dashboard, and emailed to you. Email notifications are included free on every plan — no upgrade needed just to get notified.
The whole thing, in one HTML snippet
<form action="https://splitforms.com/api/submit" method="POST">
<input type="hidden" name="access_key" value="YOUR_ACCESS_KEY" />
<input type="hidden" name="redirect" value="https://yoursite.com/thanks" />
<input name="name" placeholder="Your name" required />
<input name="email" type="email" placeholder="you@example.com" required />
<textarea name="message" placeholder="What's up?" required></textarea>
<!-- Honeypot for spam (hidden from humans) -->
<input type="checkbox" name="botcheck" style="display:none" tabindex="-1" />
<button type="submit">Send</button>
</form>That's the entire integration. Replace YOUR_ACCESS_KEY with the one in your splitforms dashboard. When a visitor submits, you get an email with every field and the dashboard updates live — free on every plan. Upgrade to Starter to add signed webhooks, exports, and an auto-responder. Full field reference is in the docs.
How to send an HTML form to email without a backend
Get a free splitforms access key
Sign up at splitforms.com with your email. No credit card. Your access key is created instantly and works right away.
Point your form's action at the endpoint
In any HTML, React, or Next.js form, set action="https://splitforms.com/api/submit" method="POST" and add a hidden access_key input with your key as the value.
Add the honeypot field
Paste in the hidden botcheck input from the code example below. It's invisible to visitors and catches most bots before they ever reach your inbox.
Submit a test entry
Fill out and send the form once yourself. A successful POST returns immediately and the submission shows up in your dashboard right away.
Check your inbox
Owner notification email arrives within seconds — free on every plan, including Free. Reply to it and your reply goes straight to the visitor.
What happens when a visitor submits
Browser POSTs the form
Standard application/x-www-form-urlencoded POST to splitforms.com/api/submit. No JavaScript required.
splitforms checks it for spam
Origin check, honeypot trap, a time-trap that catches instant non-human submits, and content heuristics. Flagged submissions are held back; legitimate ones proceed.
Email delivered to your inbox
Dedicated SMTP with SPF/DKIM, free on every plan. Reply-To is set to the submitter's email automatically when your form has an email field.
Stored, dashboarded, optionally webhooked
Every submission is stored and searchable in your dashboard. Starter adds CSV/XML/PDF exports and signed webhooks — see the form-to-webhook guide.
Why not PHP mail() or Node SMTP?
PHP mail()was the indie web standard for two decades. It worked on cheap shared hosts, required no setup, and got the message through often enough. In 2026 it's a tax on your time: shared-host PHP runtimes are extinct on Vercel, Netlify, Cloudflare Pages, and S3-hosted static sites. SPF and DKIM enforcement means mail() emails from shared IPs land in spam reliably. The vector for form-spam abuse is well-known and hard to defend.
Node SMTP (Nodemailer, AWS SES, Resend, Postmark) solves the deliverability problem but adds the infrastructure cost: you run a backend, manage credentials, write the email-sending logic, handle bounces, deal with rate limits, build the spam filter, and ship the dashboard yourself. Even the simplest implementation is hours of work and ongoing maintenance.
splitforms collapses all of that into one URL. The form POSTs, we send the email through our dedicated SMTP with managed reputation, we run honeypot and rate-limit spam checks, and we store the submission in your dashboard. Your job is the HTML. See how the whole request lifecycle works in the docs, or read up on the full spam and security stack.
Form-to-email FAQ
How do I send HTML form submissions to my email without a backend?
Point your form's `action` attribute at a form-backend service like splitforms. The form POSTs the submission, splitforms stores it in your dashboard and sends the owner email notification on Free. No PHP, no Node.js, no SMTP setup. The HTML is the same `<form action method=POST>` you already wrote — only the URL changes.
Is splitforms really free?
Yes. Free includes 500 submissions per month, unlimited forms, spam filtering, owner email delivery, and a real dashboard — no credit card, no trial clock. Starter is $1/month when you want signed webhooks, exports, integrations, and an auto-responder. Pro is $5/mo for 5,000 submissions with CC/BCC and priority support; the $59 3-Year plan covers 15,000/mo for 36 months. Full breakdown on the pricing page.
Will my email show me who submitted the form?
Yes. Owner notification emails are included free on every plan and arrive with every field from the form — name, email, message, plus any custom fields you added. If your form has a field named email, splitforms automatically sets Reply-To to that address, so hitting Reply in your inbox goes straight to the visitor. Add a replyto hidden field to override it. The dashboard also stores the full submission with search and filter.
What about spam — will I get flooded?
No. Every submission passes through a honeypot field (bots fill it, humans never see it) plus a time-trap that rejects instant, non-human submits, server-side content heuristics, and a rate limit of 6 submissions per minute per IP (20 per 15 minutes sustained) — abusive traffic gets HTTP 429. You can also lock a form to specific domains or add your own reCAPTCHA v2 key for an extra challenge. Flagged submissions don't reach your inbox.
Does this work with Gmail, Outlook, iCloud, etc.?
Yes. splitforms delivers via dedicated SMTP with proper SPF/DKIM authentication, so emails land in the inbox across every major provider — no shared sending pool dragging down your deliverability.
What if I want to send to multiple recipients?
Set up multiple recipient emails in your splitforms dashboard, or use the `cc` and `bcc` fields in the form (CC/BCC is a Pro feature). Every submission can fan out to a team channel, an archive inbox, and a primary recipient — all configured per form, no code changes.
How does this compare to PHP mail() or Node.js SMTP?
PHP mail() and direct SMTP both require a server you operate, a sending reputation you have to maintain, and spam defenses you build yourself. splitforms handles all three: hosted endpoint, dedicated SMTP with managed reputation, honeypot and rate-limit spam filtering built in. Setup is one URL change instead of a server build.
Can I send form data as JSON or fetch() instead of a plain HTML form?
Yes. POST JSON or FormData to https://splitforms.com/api/submit with fetch(), Axios, or any HTTP client — same access_key field, same spam filtering, same email delivery. Useful for React, Next.js, or any form you validate and submit with JavaScript instead of a native browser POST.
Can I test my form-to-email setup before going live?
Yes. Submit the form once yourself after wiring it up — the submission and the resulting email both arrive within seconds, and you'll see it land in your dashboard. splitforms also runs a free spam test tool if you want to check your form's spam defenses specifically.
Form to email, in 60 seconds.
Free for 500 submissions/month, email notifications included. No credit card. Point your form's action at splitforms and submissions arrive in your inbox. Need more volume or webhooks? Compare plans on pricing.
Get a free access key →