DEV Community

Cover image for Best Form Backend in 2026: 6 Free Options Compared
han
han

Posted on

Best Form Backend in 2026: 6 Free Options Compared

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">
Enter fullscreen mode Exit fullscreen mode

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">
Enter fullscreen mode Exit fullscreen mode

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">
Enter fullscreen mode Exit fullscreen mode

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 _next and _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">
Enter fullscreen mode Exit fullscreen mode

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">
Enter fullscreen mode Exit fullscreen mode

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 _gotcha honeypot 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">
Enter fullscreen mode Exit fullscreen mode

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

  1. 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.
  2. 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.
  3. 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.
  4. Are you tied to your host? Netlify Forms stops working if your site moves. The other five work on any host.
  5. 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.
  6. 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>
Enter fullscreen mode Exit fullscreen mode

_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()
})
Enter fullscreen mode Exit fullscreen mode

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

Top comments (0)