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.
Form to email
Updated · plan facts checked against /pricing
Form to email means your HTML form's submissions arrive in your inbox without PHP, an SMTP account, or a server. splitforms does it for free: point the form's action at one hosted endpoint on any host, and every submission is spam-checked, stored in your dashboard, and emailed to you — 500 free submissions, no card.

No PHP, SMTP account, or server route — the hosted endpoint is your form's backend.
Honeypot, time-trap, and rate limits screen bots before they reach your inbox.
Accepted submissions are saved to the dashboard before owner notification email is attempted. Delivery time and inbox placement depend on provider and recipient settings.
Copy-paste ready
Drop this into any page and point the action at the endpoint — that's the entire integration. No server, no build step, no SMTP setup. Replace YOUR_ACCESS_KEY with the key from your dashboard; the full field reference is in the docs.
<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="[email protected]" 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>Setup
No server, no SMTP setup. These are the same five steps whether you paste the form into raw HTML, a React component, or a Next.js page — pick your framework and copy-paste the example below.
Sign up at splitforms.com with your email. No credit card. Your access key is created instantly and works right away.
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.
Paste in the hidden botcheck input from the code example above. It's invisible to visitors and catches most bots before they ever reach your inbox.
Fill out and send the form once yourself. A successful POST returns immediately and the submission shows up in your dashboard right away.
Owner notification email is included on every plan and is attempted after the accepted submission is saved. Delivery time and inbox placement depend on provider and recipient settings. Reply to it and your response goes to the visitor.
How it works
A form-to-email flow only looks simple. Behind the single URL, splitforms receives the POST, screens it for spam, stores accepted submissions, and attempts an owner notification email. Route it through a hosted form endpoint and there's nothing for you to run.

Where submissions go
Every submission is emailed to you and saved to a searchable dashboard — spam-filtered before it ever reaches you. Search, export to CSV, or forward it to a webhook or Slack on Pro.

No backend needed
PHP mail() and Node SMTP both cost you: mail() doesn't run on Vercel, Netlify, or static hosts; sender authentication and inbox placement depend on provider settings; Node SMTP means you run a backend, manage credentials, handle bounces, and build the spam filter yourself. Splitforms collapses all of it into one URL — read the full spam and security stack.

How SplitForms works
splitforms receives the submission, filters spam, saves it to your dashboard and emails you — then, on paid plans, sends it on to your webhooks and integrations. No backend infrastructure to build.

Point your form to your unique SplitForms endpoint. That's it.

We instantly capture and organize every submission in your inbox.

Send data to email, spreadsheets, CRMs, webhooks, and 7,000+ apps.

No credit card required. Set up in under 60 seconds.
Connect & automate
On paid plans, submissions can also go to Slack, Discord, Google Sheets, Notion, Airtable, Zapier or any signed webhook — and splitforms works on the platforms you build on, from WordPress and Shopify to Next.js. With Stripe connected, your forms can take payments too.

Form to email
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.
Yes. Free includes 500 submissions total, unlimited forms, spam filtering, owner email delivery, and a real dashboard — no credit card, no trial clock. Pro is $5/month for 5,000 submissions a month when you want signed webhooks, exports, integrations, an auto-responder, CC/BCC and priority support; Annual is $49/year for 15,000 a month. Full breakdown on the pricing page.
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.
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.
Yes. Owner notification emails can be sent to Gmail, Outlook, iCloud, and other addresses. Recipient providers apply their own spam and inbox filtering, so check your dashboard if a notification is delayed or filtered. Paid plans support custom SMTP if you want to send through your own provider.
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.
A hosted endpoint lets you avoid running a form server and storing submissions yourself. splitforms saves accepted submissions to the dashboard, sends owner notification emails, and applies its spam controls. You can keep PHP and configure your own authenticated mail provider if that fits your stack better.
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.
Yes. Submit the form once yourself after wiring it up — the accepted submission is saved to your dashboard before owner notification email is attempted. Delivery time and inbox placement depend on provider and recipient settings. splitforms also runs a free spam test tool if you want to check your form's spam defenses specifically.
Simple pricing
Free gives you 500 submissions for $0 — no card, no time limit. Pro is $5/month for 5,000 submissions a month, and Annual is $49/year for 15,000 a month with every Pro feature.
For side projects and indie devs.
Every paid feature, for agencies and growing products.
Every Pro feature with triple the volume — $0.27 per 1,000 at full use.
No credit card required on Free • Cancel anytime • Full pricing and FAQ