Create a form and open the builder
In your splitforms dashboard, create a form and open the Form builder tab. It's a drag-and-drop editor: field elements on one side, a live preview on the other.
Custom contact form
Drag and drop the fields you need, or paste your own HTML, CSS, and JavaScript — then embed the custom contact form on WordPress, Shopify, or any site.

Text, email, phone, dropdown, date, file upload, and long-message fields — reorder them and mark any one required.
Paste your own HTML, CSS, and JavaScript into the code panel — the builder wires up the form action and your access key.
A hidden honeypot and time-trap check screen bots before they reach your inbox — no reCAPTCHA and no custom code.
Custom contact form HTML
Prefer to hand-write it? Paste custom markup and styles into the builder’s code panel. Point the form action at https://splitforms.com/api/submit, keep a hidden access_key field and an empty botcheck honeypot, and it just works — no server and no API route.
<form action="https://splitforms.com/api/submit" method="POST">
<input type="hidden" name="access_key" value="YOUR_ACCESS_KEY" />
<!-- Honeypot: keep this field empty and hidden -->
<input type="checkbox" name="botcheck" style="display:none" tabindex="-1" autocomplete="off" />
<label>Full name <input name="name" required /></label>
<label>Email <input name="email" type="email" required /></label>
<label>Budget
<select name="budget">
<option>Under $1k</option>
<option>$1k–$5k</option>
<option>$5k+</option>
</select>
</label>
<label>Project details <textarea name="message" required></textarea></label>
<button type="submit">Send request</button>
</form>Step-by-step guide
Five steps from a blank canvas to a branded, embeddable custom contact form connected to your inbox.
In your splitforms dashboard, create a form and open the Form builder tab. It's a drag-and-drop editor: field elements on one side, a live preview on the other.
Drag in the fields you need — name, email, phone, dropdowns, dates, file uploads, long messages — reorder them, set labels and placeholders, and mark which are required.
Pick a layout and style preset, or switch to the custom-code panel and paste your own HTML, CSS, and JavaScript. The builder auto-wires the form action and your access key, so if you hand-write markup you only need one endpoint: https://splitforms.com/api/submit.
Open the form's Embed tab, choose your platform — WordPress, Shopify, plain HTML, or React — and copy the matching embed code. Every version already points at your form's access key, so there's nothing else to wire up.
Paste the code on your page. Submissions land in your dashboard and your inbox right away, with the honeypot field and time-trap check filtering spam by default — free on every plan.
Your fields, your design
A custom contact form is one where you choose the fields, layout, and design yourself instead of using a fixed template. Build it in the drag-and-drop editor or hand-write it with the HTML form generator — every field, label, and style is yours, and each form posts to a single hosted endpoint with your access key.

Embed anywhere
Copy the [splitforms] shortcode for a WordPress contact form, or drop the self-contained iframe onto Shopify, Webflow, Framer, or any plain HTML page. Both render the exact form you designed — fields, styling, and spam filtering included, with no extra scripts.

Spam filtering
Every custom contact form ships with spam filtering by default — no reCAPTCHA to bolt on and no custom code to write. Add per-form allowed domains and an optional reCAPTCHA v2 whenever you want an extra layer.

How SplitForms works
Connect your form, collect every submission, and send data where it needs to go — without building backend infrastructure.

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
SplitForms works with the destinations you route to and the platforms you build on — from Slack and Sheets to WordPress, Shopify, and Next.js.

Trusted by indie teams and agencies shipping forms worldwide
Testimonials
40 quotes on record — from indie hacks to agency migrations.
“I replaced a Lambda + DynamoDB + SES contact form with six lines of HTML. It took eleven minutes, and the dashboard is better than what I was going to build.”
“We migrated 14 client sites off Formspree in a single weekend. The price is a third of what we paid, the API is more honest, and the spam filter actually works.”
“The webhook payload is signed, idempotent, and well-shaped. It reads like code from a competent team, not a CRUD app held together with duct tape.”
“I stopped reaching for Typeform on small marketing sites. splitforms covers 90% of the use case at none of the bloat.”
“I onboarded our whole agency in an afternoon. The MCP integration meant Cursor literally dropped the form straight into our client repos for us.”
“The free plan gave me 500 submissions before I paid a cent, and Pro is five dollars a month. I've spent more on coffee deciding which backend to use.”
“Spam went from forty junk entries a day to zero, with no reCAPTCHA puzzle ruining the form. The honeypot and time-trap just quietly do their job.”
“Point the form action at one endpoint and you're done. No SDK, no client library, no build step. This is how a form backend should feel.”
“Leads land in Slack the second someone submits, and a copy goes to Google Sheets for the sales team. I wired both up in under ten minutes.”
“I run a static Hugo site on a five-dollar VPS. splitforms gave it a real contact form without me standing up a single server.”
Custom contact form FAQ
Use the splitforms Form builder: a drag-and-drop editor where you add any fields, set labels and validation, and choose a style. If you want full control, the custom-code panel accepts your own HTML, CSS, and JavaScript with a live preview.
Yes. The builder supports text, email, phone, URL, number, date, dropdown, long text, and file upload fields. You can reorder them and mark any field required.
Yes. Switch the builder to the custom-code panel and paste your own HTML, CSS, and JavaScript. The preview renders it live, and the form posts to the splitforms endpoint with your access key.
Copy the [splitforms] shortcode and paste it with the free plugin, or copy the self-contained iframe embed and drop it into a Custom HTML block. Both render the exact form you designed.
Yes. Every form has its own access key, so a custom quote form, a support form, and a newsletter form each keep their submissions, styling, and integrations separate.
Yes. The Free plan includes unlimited custom forms, 500 submissions a month, email notifications, spam filtering, and the dashboard — no credit card required. Pro is $5/month for 5,000 submissions if you also want exports, webhooks, or an auto-responder.
Every form ships with a hidden honeypot field, a time-trap check that flags submissions sent too fast after the page loads, and server-side content heuristics — plus per-form allowed domains and an optional reCAPTCHA v2 if you want an extra layer. None of it needs custom code.
Yes. Add a hidden redirect field with your thank-you page URL, and splitforms sends the visitor there right after a successful submission — useful for tracking conversions or showing a custom confirmation message.
Simple pricing
Choose a plan that fits your workflow — from a free form endpoint to full automations, exports, and higher submission limits.
Free forever
For side projects and indie devs.
For agencies and growing products.
Pay $59. 3 years sorted.
No credit card required on Free • Cancel anytime