A form backend is a URL your form posts to. It accepts each submission, filters spam, stores it and emails you, so a static site, a React app or a site builder can take messages without a server of your own.
All six services in this comparison do that core job the same way: you change your form's action, and submissions start arriving. What separates them is what the free plan keeps, what each step up costs, how they stop spam and how hard they are to leave.
We make Nisuform, one of the six, so weigh our pick with that in mind. Every number below comes from each product's own pricing page or docs, checked between October 26 and 28, 2026, and Nisuform gets the same "where it falls short" section as the others. Sources are listed at the end.
Summary
- Most free submissions: Web3Forms, with 250 a month and unlimited forms.
- No account required: FormSubmit. Your email address goes in the form.
- Sites hosted on Netlify: Netlify Forms, free and built in.
- Free file uploads, or 50,000 submissions a month: Forminit.
- Unlimited forms and chat alerts on the free plan: Formspree.
- Every submission kept on the free plan, and the lowest paid price: Nisuform, at $10 a month or $84 a year for 5,000.
How we compared them
- The free plan. Submissions a month, number of forms, and how long submissions are kept.
- Price at real volumes. What 250, 1,000, 5,000 and 20,000 submissions a month cost.
- Spam protection included without paying, and whether visitors have to solve a CAPTCHA.
- Lock-in. Whether the service only works on one host, and whether you can export your data.
- What goes in your HTML. A form key, an access key, a host attribute or your email address.
The six form backends at a glance
| Free submissions | Free forms | Free history | First paid plan | Any host | |
|---|---|---|---|---|---|
| Formspree | 50 a month | Unlimited | 30 days | $15 a month for 200 | Yes |
| Web3Forms | 250 a month | Unlimited | 30 days | $149 a year for 10,000 a month | Yes |
| FormSubmit | No stated limit | No limit | 30 days | None, it's free | Yes |
| Netlify Forms | No limit on credit-based plans | Any form Netlify detects | Kept in your Netlify dashboard | None for forms | Netlify only |
| Forminit | 100 a month | 1 | Kept until you delete it | $16 a month for 5,000 | Yes |
| Nisuform | 100 a month | 3 | Kept until you delete it | $10 a month for 5,000 | Yes |
Formspree
Best for: sites with many small forms, or teams that want Slack and Discord alerts without paying.
<form action="https://formspree.io/f/YOUR_FORM_ID" method="POST"> Formspree created the category in 2014. It is the endpoint most templates, tutorials and AI coding tools use for a contact form.
Where it's strong
- Unlimited forms on the free plan.
- Slack, Discord, Telegram and WhatsApp alerts on every plan, including Free.
- Domain restriction and custom reCAPTCHA on the free plan.
- Plans up to 20,000 submissions a month on Business, with custom plans above that.
Where it falls short
- The free plan is 50 submissions a month, archived for 30 days, with no search or export.
- Each paid step is small. $15 a month covers 200, $30 covers 2,000 and $90 covers 20,000. Billed yearly, that is $120, $240 and $720.
- Webhooks and autoresponses start on Professional, at $30 a month.
Web3Forms
Best for: getting the most free submissions across several small sites.
<form action="https://api.web3forms.com/submit" method="POST"> <input type="hidden" name="access_key" value="YOUR_ACCESS_KEY"> Web3Forms has operated since 2020. You receive an access key by email and add it to the form as a hidden input.
Where it's strong
- 250 submissions a month and unlimited forms, the largest free plan of any service here that requires an account.
- Free redirects to your own thank-you page.
- hCaptcha on the free plan, with a shared site key.
- Pro covers 10,000 submissions a month for $149 a year, with a discounted plan for students, non-profits and early-stage startups by application.
Where it falls short
- The free plan shows 30 days of history.
- Turnstile, reCAPTCHA, your own hCaptcha keys and domain restriction require a paid plan, so free forms can be posted to from any site.
- File uploads, webhooks, autoresponders and CC addresses also require a paid plan.
FormSubmit
Best for: a simple form that only needs to send email.
<form action="https://formsubmit.co/you@example.com" method="POST"> You put your email address in the action, submit the form once and confirm by email. There is no account and no fee.
Where it's strong
- No account and no cost.
- Redirects, autoresponses, webhooks, CC addresses and email templates are free, configured with special fields such as
_nextand_autoresponse. - FormSubmit reports that more than 400,000 websites have used it.
Where it falls short
- By default, your email address is visible in your page source, where scrapers collect addresses for spam.
- Submissions live in your inbox. Its help page states that it keeps them for 30 days and does not keep uploaded files.
- reCAPTCHA is on by default, and FormSubmit recommends keeping it on, so visitors may have to complete a challenge.
- As a free service, there is no paid plan to move to if you need more control or support.
Netlify Forms
Best for: plain HTML sites deployed on Netlify that will stay there.
<form name="contact" method="POST" data-netlify="true"> Netlify reads your HTML at deploy time, detects forms with data-netlify="true" and handles their submissions itself.
Where it's strong
- Free with no monthly limit on Netlify's credit-based plans since April 2026.
- No separate sign-up. Submissions appear in your existing Netlify dashboard, with CSV export.
- Email, Slack and webhook notifications at no extra cost.
- Akismet spam filtering, plus an optional honeypot and reCAPTCHA 2.
Where it falls short
- It only works on sites Netlify deploys. If you change hosts, your forms stop working.
- Forms rendered with JavaScript, including most React, Vue and AI-generated forms, are not in the HTML Netlify reads, so you need to maintain a hidden HTML copy with the same fields.
- No JSON submissions, and file uploads are limited to one file per field and 8 MB per request.
Forminit
Best for: forms that collect files, or sites with more than 5,000 submissions a month.
<form action="https://forminit.com/f/YOUR_FORM_ID" method="POST"> Forminit is the new name for Getform as of January 2026, and the service has operated since 2015. Older tutorials still show getform.io/f/ URLs.
Where it's strong
- File uploads on the free plan, with 100 MB of storage, and free redirects.
- Business covers 50,000 submissions a month for $50, or $594 a year, the largest priced plan in this comparison.
- Submissions are kept until you delete them, and on Pro each form can delete them automatically after 30, 90 or 365 days.
- An optional
_gotchahoneypot and Cloudflare Turnstile support on top of built-in filtering.
Where it falls short
- One form on the free plan.
- CSV export, webhooks, integrations and autoresponders require Pro, at $16 a month or $190 a year.
- Pro is limited to 10 forms. Unlimited forms require Business at $50 a month.
Nisuform
Best for: anyone who wants the free plan to keep their submissions, and an affordable first paid plan.
<form action="https://api.nisuform.com/s/YOUR_FORM_KEY" method="POST"> This is our product. The key in the URL only accepts new submissions and cannot be used to read them, so it is safe to include in public HTML. Forms work on any host, with or without JavaScript.
Where it's strong
- The free plan keeps every submission until you delete it, with search and CSV export.
- Spam filtering with no setup: a honeypot, a fill-time check, rate limits, and duplicate and link checks. Cloudflare Turnstile, Google reCAPTCHA and allowed websites are available on every plan, and spam never counts toward your monthly limit.
- Pro is $10 a month or $84 a year for 5,000 submissions and unlimited forms, with file uploads, webhooks, auto-replies, and Slack, Discord, Telegram and Google Sheets integrations.
- JSON responses with stable error codes, and a ready-made prompt on each form's Setup tab for Cursor, Claude Code or Lovable.
Where it falls short
- The free plan is 100 submissions a month and 3 forms, smaller than Web3Forms, and without Formspree's unlimited forms.
- Redirects, file uploads and chat alerts are Pro only. Web3Forms and Forminit include redirects for free, and Formspree includes chat alerts for free.
- Pro tops out at 5,000 submissions a month, with no larger plan yet.
- It is the newest service in this comparison, so it has the shortest track record.
Cost at each volume
Monthly prices for the four services with paid plans:
| Submissions a month | Formspree | Web3Forms | Forminit | Nisuform |
|---|---|---|---|---|
| 50 | Free | Free | Free | Free |
| 100 | $15 | Free | Free | Free |
| 250 | $30 | Free | $16 | $10 |
| 1,000 | $30 | $149 a year | $16 | $10 |
| 5,000 | $90 | $149 a year | $16 | $10 |
| 10,000 | $90 | $149 a year | $50 | Not offered |
| 20,000 | $90 | Agency plan | $50 | Not offered |
This assumes one form. If you need more than 1 free form on Forminit, or more than 3 on Nisuform, the Free rows move to the first paid plan.
Billed yearly at 5,000 submissions a month, the annual cost is $720 on Formspree, $190 on Forminit, $149 on Web3Forms and $84 on Nisuform.
FormSubmit and Netlify Forms do not charge for submissions at any volume. FormSubmit is limited to email delivery and 30 days of history. Netlify Forms requires your site to stay on Netlify.
Spam protection on the free plan
| Included for free | Requires a paid plan | |
|---|---|---|
| Formspree | Spam filtering, custom reCAPTCHA, domain restriction | Additional spam controls on Professional and Business |
| Web3Forms | hCaptcha with a shared key, a botcheck honeypot | Turnstile, reCAPTCHA, your own hCaptcha keys, domain restriction |
| FormSubmit | reCAPTCHA on by default, blocked phrases, honeypots | No paid plan |
| Netlify Forms | Akismet, optional honeypot, optional reCAPTCHA 2 | Nothing additional |
| Forminit | Built-in filtering, optional _gotcha honeypot, Turnstile | Not stated on its pricing page |
| Nisuform | Honeypot, fill-time check, rate limits, duplicate and link checks, Turnstile, reCAPTCHA, allowed websites | Nothing additional |
A CAPTCHA can cost you legitimate messages, because some visitors leave when they see one. Invisible checks such as a honeypot and a fill-time check stop most bots without asking visitors to do anything. Domain restriction prevents other sites from posting to your endpoint, so a copied key cannot be used from another page.
Questions to ask before choosing
- How many submissions will you receive? A portfolio contact form might get 20 a month, while a busy landing page can exceed 200. Compare the first paid plan, not only the free plan.
- Do you need to keep old submissions? The free plans of Formspree, Web3Forms and FormSubmit keep 30 days of history. If the only copy of a lead is an email that went to spam, it is lost.
- What ends up in your HTML? A form key or access key is designed to be public. An email address in the action is readable by anyone.
- Are you tied to your host? Netlify Forms stops working if your site moves. The other five work on any host.
- Is the form rendered by JavaScript? React, Vue, Svelte and AI app builders work with any endpoint-based service. Netlify Forms requires a hidden HTML copy.
- Can you export your data? CSV export is free on Nisuform and Netlify Forms, and starts on the Personal plan at Formspree and the Pro plan at Forminit.
Keeping your form portable
Every service here accepts a standard HTML form post, so you can move a form between them later. Keep the markup plain, give every field a name, and limit the service-specific parts to the action and a few special fields:
<form action="https://api.nisuform.com/s/YOUR_FORM_KEY" method="POST"> <label for="name">Name</label> <input id="name" type="text" name="name" autocomplete="name" required> <label for="email">Email</label> <input id="email" type="email" name="email" autocomplete="email" required> <label for="message">Message</label> <textarea id="message" name="message" rows="5" required></textarea> <input type="text" name="_gotcha" tabindex="-1" autocomplete="off" style="display:none"> <button type="submit">Send</button> </form> _gotcha is the honeypot field name on Formspree, Forminit and Nisuform. To move to Web3Forms, change the action and add the access_key input. For FormSubmit, put your email address in the action. For Netlify Forms, replace the action with name and data-netlify="true".
To submit without a page reload, keep the action and method so the form still works if JavaScript fails, and add a fetch handler:
const form = document.querySelector('form') const status = document.querySelector('#status') form.addEventListener('submit', async (event) => { event.preventDefault() const response = await fetch(form.action, { method: 'POST', headers: { Accept: 'application/json' }, body: new FormData(form), }) const result = await response.json() status.textContent = result.ok ? 'Thanks! We got your message.' : result.message if (result.ok) form.reset() }) Add <p id="status" role="status"></p> below the form so screen readers announce the result. The response format shown is Nisuform's. Each service returns its own JSON, so check its documentation for the field names.
Which to choose
Choose the service whose free plan covers your current traffic and whose first paid plan fits your budget when you outgrow it.
- Formspree for many small forms and free chat alerts.
- Web3Forms for the most free submissions.
- FormSubmit for email-only forms with no account.
- Netlify Forms for sites that will stay on Netlify.
- Forminit for file uploads or high volume.
- Nisuform for every submission kept on the free plan, and 5,000 a month for $10.
This comparison was originally published on the Nisuform blog. For a step-by-step setup guide, see how to add a contact form to a static website without a backend.
Sources
- Formspree plans, checked October 28, 2026
- Web3Forms pricing, Pro features and hCaptcha, checked October 26 to 28, 2026
- FormSubmit and FormSubmit help, checked October 28, 2026
- Netlify Forms setup, submissions, spam filters and Netlify pricing updates, April 2026
- Forminit pricing, honeypot and Turnstile, checked October 28, 2026
- Nisuform pricing and limits