<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Forminit</title>
    <description>The latest articles on DEV Community by Forminit (@wssn).</description>
    <link>https://dev.to/wssn</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F172396%2F44d89e9c-0610-4bb7-9a39-0a977e091830.png</url>
      <title>DEV Community: Forminit</title>
      <link>https://dev.to/wssn</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/wssn"/>
    <language>en</language>
    <item>
      <title>The Best Form Backend Services in 2026</title>
      <dc:creator>Forminit</dc:creator>
      <pubDate>Sat, 30 May 2026 11:25:04 +0000</pubDate>
      <link>https://dev.to/wssn/the-best-form-backend-services-in-2026-540a</link>
      <guid>https://dev.to/wssn/the-best-form-backend-services-in-2026-540a</guid>
      <description>&lt;p&gt;&lt;em&gt;Updated 9 August 2026.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Short answer: &lt;a href="https://forminit.com/" rel="noopener noreferrer"&gt;Forminit&lt;/a&gt; is the best all-round form backend in 2026 if you need hosting-independent forms, stored file uploads, schema-based server-side validation, EU data hosting, and a path from a plain HTML endpoint to an authenticated API.&lt;/p&gt;

&lt;p&gt;Netlify Forms is the natural choice for sites already hosted on Netlify. Web3Forms offers the highest free submission allowance among hosting-independent services. Forminit and Basin both include 100 MB of file storage on their free plans.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best overall:&lt;/strong&gt; Forminit&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best for Netlify-hosted sites:&lt;/strong&gt; Netlify Forms&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Highest free submission allowance, hosting-independent:&lt;/strong&gt; Web3Forms (250/month)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best hosting-independent free stored uploads:&lt;/strong&gt; Forminit and Basin (100 MB each)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best no-account email forwarding:&lt;/strong&gt; FormSubmit&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best for templated client-side email:&lt;/strong&gt; EmailJS&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A form backend handles what happens after a visitor clicks submit: receiving the data, validation, storage, notifications, file uploads, spam protection, and integrations. You design the form in any framework or style; the backend gives you an endpoint to POST to.&lt;/p&gt;

&lt;h2&gt;
  
  
  How these services were compared
&lt;/h2&gt;

&lt;p&gt;I compared the plans available to new customers using each provider's official pricing, documentation, security, and legal pages. The criteria were setup, submission storage, file uploads, validation, spam protection, integrations, hosting portability, data residency, and price. The information below was checked on 9 August 2026.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Disclosure:&lt;/strong&gt; Forminit publishes this comparison. Where another service is stronger, the article says so. Check the linked provider pages before buying because pricing and limits can change.&lt;/p&gt;

&lt;h2&gt;
  
  
  Quick comparison
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Forminit&lt;/th&gt;
&lt;th&gt;Formspree&lt;/th&gt;
&lt;th&gt;FormSubmit&lt;/th&gt;
&lt;th&gt;EmailJS&lt;/th&gt;
&lt;th&gt;Netlify Forms&lt;/th&gt;
&lt;th&gt;Basin&lt;/th&gt;
&lt;th&gt;Web3Forms&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Type&lt;/td&gt;
&lt;td&gt;Form backend API&lt;/td&gt;
&lt;td&gt;Form backend&lt;/td&gt;
&lt;td&gt;Email forwarding&lt;/td&gt;
&lt;td&gt;Email sending&lt;/td&gt;
&lt;td&gt;Platform forms&lt;/td&gt;
&lt;td&gt;Form backend&lt;/td&gt;
&lt;td&gt;Email relay&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Submission storage&lt;/td&gt;
&lt;td&gt;Inbox UI&lt;/td&gt;
&lt;td&gt;Table UI&lt;/td&gt;
&lt;td&gt;30 days, API only&lt;/td&gt;
&lt;td&gt;No submission store&lt;/td&gt;
&lt;td&gt;Table UI&lt;/td&gt;
&lt;td&gt;Dashboard&lt;/td&gt;
&lt;td&gt;30-day history on Free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Server-side validation&lt;/td&gt;
&lt;td&gt;Typed blocks&lt;/td&gt;
&lt;td&gt;Opt-in workflow rules&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Paid validation credits&lt;/td&gt;
&lt;td&gt;No schema validation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Protected submission mode&lt;/td&gt;
&lt;td&gt;Yes, &lt;code&gt;X-API-KEY&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Public client keys&lt;/td&gt;
&lt;td&gt;Platform-managed&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Free file uploads&lt;/td&gt;
&lt;td&gt;Yes, stored&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Email attachment only&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes, stored&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Maximum upload&lt;/td&gt;
&lt;td&gt;25 MB/submission&lt;/td&gt;
&lt;td&gt;25 MB/file; 100 MB request&lt;/td&gt;
&lt;td&gt;10 MB total&lt;/td&gt;
&lt;td&gt;30 MB on top plan&lt;/td&gt;
&lt;td&gt;8 MB request&lt;/td&gt;
&lt;td&gt;100 MB/file&lt;/td&gt;
&lt;td&gt;5 MB/file with standard Pro uploader&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Webhooks&lt;/td&gt;
&lt;td&gt;Pro, $19/month&lt;/td&gt;
&lt;td&gt;Paid&lt;/td&gt;
&lt;td&gt;Basic&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Outgoing notifications&lt;/td&gt;
&lt;td&gt;Growth, $24.17/month yearly&lt;/td&gt;
&lt;td&gt;Pro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Automatic UTM capture&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;EU data hosting&lt;/td&gt;
&lt;td&gt;Yes, AWS Ireland&lt;/td&gt;
&lt;td&gt;No, AWS US&lt;/td&gt;
&lt;td&gt;Not documented&lt;/td&gt;
&lt;td&gt;Not documented&lt;/td&gt;
&lt;td&gt;No EU-residency option&lt;/td&gt;
&lt;td&gt;No EU-residency option&lt;/td&gt;
&lt;td&gt;No, US-East documented&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Works with any host&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Netlify only&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Free allowance&lt;/td&gt;
&lt;td&gt;100 submissions/month&lt;/td&gt;
&lt;td&gt;50/month&lt;/td&gt;
&lt;td&gt;Free service&lt;/td&gt;
&lt;td&gt;200 requests/month&lt;/td&gt;
&lt;td&gt;Unlimited on credit-based plans&lt;/td&gt;
&lt;td&gt;50/month&lt;/td&gt;
&lt;td&gt;250/month&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Paid from&lt;/td&gt;
&lt;td&gt;$19/month&lt;/td&gt;
&lt;td&gt;$15/month&lt;/td&gt;
&lt;td&gt;No paid plan&lt;/td&gt;
&lt;td&gt;$9/month&lt;/td&gt;
&lt;td&gt;Credit-based&lt;/td&gt;
&lt;td&gt;$12.50/month yearly&lt;/td&gt;
&lt;td&gt;About $12/month yearly&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  1. Forminit
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://forminit.com/" rel="noopener noreferrer"&gt;Forminit&lt;/a&gt; — formerly Getform.io — is a headless form backend API built around typed data blocks. Instead of treating every submission as an unrestricted set of key-value pairs, fields can be defined as email, phone, URL, date, rating, file, country, and other block types. Forminit validates those types on the server before storing the submission.&lt;/p&gt;

&lt;p&gt;The product launched as Getform.io in October 2015 and rebranded to Forminit in January 2026. It has processed submissions for teams at Burger King, Volkswagen, Toyota, Lidl, Codecademy, Sticker Mule, and the University of Essex. That operating history matters when the service sits in the critical path between a website and its leads.&lt;/p&gt;

&lt;p&gt;Sources: &lt;a href="https://forminit.com/pricing/" rel="noopener noreferrer"&gt;pricing&lt;/a&gt; · &lt;a href="https://forminit.com/docs/" rel="noopener noreferrer"&gt;documentation&lt;/a&gt; · &lt;a href="https://forminit.com/gdpr/" rel="noopener noreferrer"&gt;GDPR and DPA&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  What Forminit does well
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;A complete free plan.&lt;/strong&gt; One form, 100 submissions per month, stored file uploads with 100 MB of total storage, validation, spam protection, redirects, email notifications, and an unlimited submission archive. No card is required.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Two submission modes.&lt;/strong&gt; Public mode works with a plain HTML form or browser &lt;code&gt;fetch&lt;/code&gt; request and requires no secret. It is rate-limited per originating IP. Protected mode accepts an &lt;code&gt;X-API-KEY&lt;/code&gt; header from a backend or proxy and supports up to five requests per second without exposing the key in browser code.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Built-in server validation.&lt;/strong&gt; Email, phone, URL, date, rating, and country blocks are checked against the format expected for that data type. Invalid data is rejected before it reaches the inbox.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Stored file uploads.&lt;/strong&gt; Every plan supports up to 25 MB per submission across more than 50 MIME types. Files are stored and available through download links in the dashboard. Total storage is 100 MB on Free, 1 GB on Pro, and 5 GB on Business.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;An optional 2 KB JavaScript SDK.&lt;/strong&gt; Plain HTML still works. The SDK adds upload progress, campaign attribution capture, and proxy handlers for Next.js and Nuxt.js.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A submission inbox rather than a basic table.&lt;/strong&gt; You can star entries, set statuses, add internal notes, filter submissions, and view field-level analytics.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Attribution data.&lt;/strong&gt; Forminit can capture UTM parameters, advertising click IDs, referrer, location, device, and browser alongside a submission.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;EU-hosted submission data.&lt;/strong&gt; Form data is encrypted in transit and at rest and stored in AWS's Ireland region. Forminit is UK-registered and ICO-listed and provides a DPA. Its public subprocessor list also identifies any optional global processing, such as Cloudflare Turnstile.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pricing:&lt;/strong&gt; Free (one form, 100 submissions/month, 100 MB uploads); Pro $19/month (5,000 submissions, 1 GB, webhooks, REST API, Google Sheets, Zapier, Slack/Discord, CSV export, and analytics); Business $49/month (10,000 submissions, 5 GB, autoresponder, custom email sender, and workspaces). Annual billing saves two months.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Best for:&lt;/strong&gt; Teams and agencies building their own form interfaces that need structured validation, stored uploads, EU data residency, attribution, and reliable forwarding to APIs and integrations. It still starts with a plain HTML form and does not require your own backend.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Formspree
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://formspree.io/" rel="noopener noreferrer"&gt;Formspree&lt;/a&gt; has offered POST endpoints for custom forms since 2014. Its familiar setup and mature React tooling make it one of the best-known services in this category.&lt;/p&gt;

&lt;p&gt;Sources: &lt;a href="https://formspree.io/plans" rel="noopener noreferrer"&gt;plans&lt;/a&gt; · &lt;a href="https://help.formspree.io/articles/building-your-form/getting-started-with-workflow/" rel="noopener noreferrer"&gt;workflow validation&lt;/a&gt; · &lt;a href="https://help.formspree.io/articles/building-your-form/file-uploads" rel="noopener noreferrer"&gt;file upload limits&lt;/a&gt; · &lt;a href="https://formspree.io/security/" rel="noopener noreferrer"&gt;security&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  What Formspree does well
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Submission storage and a straightforward dashboard, with 30 days of history on Free.&lt;/li&gt;
&lt;li&gt;Email notifications and a REST API for reading submissions.&lt;/li&gt;
&lt;li&gt;Opt-in workflow validation for text, number, email, URL, date/time, and file fields.&lt;/li&gt;
&lt;li&gt;A useful &lt;code&gt;@formspree/react&lt;/code&gt; package for React form state.&lt;/li&gt;
&lt;li&gt;Up to ten files per submission on paid plans, with a 25 MB per-file limit and a 100 MB total request limit.&lt;/li&gt;
&lt;li&gt;SOC 2 Type 2 compliance, a DPA, encryption, and published security documentation.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Where Formspree falls short
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Submission data is hosted on AWS in the United States. Formspree uses a DPA and Standard Contractual Clauses for EU transfers, but it does not meet a strict EU-data-residency requirement.&lt;/li&gt;
&lt;li&gt;File uploads are not included on Free. They begin on the $15/month Personal plan.&lt;/li&gt;
&lt;li&gt;Submission endpoints remain public. Formspree has API authentication for its management APIs, but there is no protected submission mode equivalent to requiring &lt;code&gt;X-API-KEY&lt;/code&gt; on every incoming form submission.&lt;/li&gt;
&lt;li&gt;Validation is opt-in and configured rule by rule. Fields without a rule are accepted as ordinary key-value data.&lt;/li&gt;
&lt;li&gt;Webhooks are paid, and there is no built-in UTM or advertising attribution capture.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pricing:&lt;/strong&gt; Free (50 submissions/month); Personal $15/month (200 submissions and 1 GB uploads); Professional $30/month (2,000 submissions); Business $90/month (20,000 submissions).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Best for:&lt;/strong&gt; Developers who want a familiar provider, mature React helper, and SOC 2 report, and who do not need free uploads or EU-only data residency.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. FormSubmit
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://formsubmit.co/" rel="noopener noreferrer"&gt;FormSubmit&lt;/a&gt; is a free email-forwarding service. Point the form action at &lt;code&gt;https://formsubmit.co/your@email.com&lt;/code&gt;, confirm the address, and new submissions arrive by email.&lt;/p&gt;

&lt;p&gt;Source: &lt;a href="https://formsubmit.co/documentation" rel="noopener noreferrer"&gt;documentation&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  What FormSubmit does well
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;No account is required.&lt;/li&gt;
&lt;li&gt;File attachments up to 10 MB per submission are supported at no cost.&lt;/li&gt;
&lt;li&gt;A hidden &lt;code&gt;_webhook&lt;/code&gt; field enables basic webhook delivery.&lt;/li&gt;
&lt;li&gt;It supports custom redirects, CC recipients, and autoresponse emails.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Where FormSubmit falls short
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;The default setup places your recipient address in the page source. A random alias is available after confirmation, but you need to switch the form action to it to stop exposing the original address.&lt;/li&gt;
&lt;li&gt;Uploaded files are forwarded as email attachments rather than stored in a file inbox.&lt;/li&gt;
&lt;li&gt;There is no normal dashboard. Submissions are retained for 30 days, but the archive is available only through an API limited to five requests per day.&lt;/li&gt;
&lt;li&gt;There is no schema validation, and the public documentation does not provide the same level of DPA, audit, or data-residency detail as the more compliance-focused services here.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pricing:&lt;/strong&gt; Free.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Best for:&lt;/strong&gt; Personal projects and prototypes where free email delivery is enough and you do not need durable storage, detailed compliance documentation, or submission management.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. EmailJS
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.emailjs.com/" rel="noopener noreferrer"&gt;EmailJS&lt;/a&gt; sends data from browser code through preconfigured email templates. It solves client-side email delivery; it is not a stored-submission backend.&lt;/p&gt;

&lt;p&gt;Sources: &lt;a href="https://www.emailjs.com/pricing/" rel="noopener noreferrer"&gt;pricing&lt;/a&gt; · &lt;a href="https://www.emailjs.com/docs/" rel="noopener noreferrer"&gt;documentation&lt;/a&gt; · &lt;a href="https://www.emailjs.com/legal/privacy-policy/" rel="noopener noreferrer"&gt;privacy&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  What EmailJS does well
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Flexible email templates with variables.&lt;/li&gt;
&lt;li&gt;Client-side integration without running a server.&lt;/li&gt;
&lt;li&gt;Support for Gmail, Outlook, and custom SMTP providers.&lt;/li&gt;
&lt;li&gt;A free tier with 200 requests per month and two templates.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Where EmailJS falls short
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;It does not provide a submission inbox, stored form records, search, webhooks, or a submission-management API.&lt;/li&gt;
&lt;li&gt;Attachments are paid: 500 KB on the $9 plan, 2 MB on the $15 plan, and 30 MB on the $40 plan.&lt;/li&gt;
&lt;li&gt;There is no schema-based server-side field validation.&lt;/li&gt;
&lt;li&gt;Service and template identifiers are visible in browser code.&lt;/li&gt;
&lt;li&gt;After the monthly quota is exhausted, further requests stop being processed and are ignored.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pricing:&lt;/strong&gt; Free (200 requests/month, no attachments); Personal $9/month (2,000 requests, 500 KB attachments); Professional $15/month (5,000 requests, 2 MB); Business $40/month (25,000 requests, 30 MB).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Best for:&lt;/strong&gt; Simple forms that only need templated email delivery and do not require stored submissions, a dashboard, or webhooks.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Netlify Forms
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://docs.netlify.com/manage/forms/setup/" rel="noopener noreferrer"&gt;Netlify Forms&lt;/a&gt; is built into Netlify hosting. Add a &lt;code&gt;netlify&lt;/code&gt; or &lt;code&gt;data-netlify="true"&lt;/code&gt; attribute to a deployed form and Netlify detects it during the build.&lt;/p&gt;

&lt;p&gt;Sources: &lt;a href="https://docs.netlify.com/manage/forms/usage-and-billing/" rel="noopener noreferrer"&gt;forms usage and billing&lt;/a&gt; · &lt;a href="https://docs.netlify.com/manage/forms/setup/" rel="noopener noreferrer"&gt;forms setup and upload limits&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  What Netlify Forms does well
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Almost no setup when the site already runs on Netlify.&lt;/li&gt;
&lt;li&gt;Forms are free and unlimited on Netlify's newer credit-based plans. Accounts created before 4 September 2025 may remain on legacy limits.&lt;/li&gt;
&lt;li&gt;Built-in Akismet spam filtering.&lt;/li&gt;
&lt;li&gt;Submission storage plus email and outgoing HTTP notifications.&lt;/li&gt;
&lt;li&gt;File uploads are available without buying a separate form service.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Where Netlify Forms falls short
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;It is tied to Netlify hosting. Moving the site to Vercel, Cloudflare, or another host means replacing the form backend.&lt;/li&gt;
&lt;li&gt;The whole request, including files, must remain under 8 MB. Uploads time out after 30 seconds, and only one file is supported per file field.&lt;/li&gt;
&lt;li&gt;There is no typed server-side field schema, attribution capture, or dedicated form SDK.&lt;/li&gt;
&lt;li&gt;Submission management is more basic than a purpose-built inbox with statuses, notes, and field analytics.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pricing:&lt;/strong&gt; Form submissions are free and unlimited on credit-based plans. Legacy accounts retain their legacy usage and billing rules.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Best for:&lt;/strong&gt; Sites already committed to Netlify that need dependable basic contact forms and can accept the hosting lock-in and 8 MB request cap.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. Basin
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://usebasin.com/" rel="noopener noreferrer"&gt;Basin&lt;/a&gt; combines a form endpoint, stored submissions, email notifications, spam controls, and a growing form-management feature set. Its Free plan includes one endpoint, 50 submissions per month, 30-day retention, 100 MB of file storage, and Zapier.&lt;/p&gt;

&lt;p&gt;Sources: &lt;a href="https://usebasin.com/pricing" rel="noopener noreferrer"&gt;pricing&lt;/a&gt; · &lt;a href="https://docs.usebasin.com/advanced-features/email-validation/" rel="noopener noreferrer"&gt;validation&lt;/a&gt; · &lt;a href="https://docs.usebasin.com/faq/" rel="noopener noreferrer"&gt;security and compliance FAQ&lt;/a&gt; · &lt;a href="https://usebasin.com/dpa" rel="noopener noreferrer"&gt;DPA&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  What Basin does well
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Stored uploads on Free, with 100 MB of total storage. Basin currently documents a maximum of 100 MB per file across plans.&lt;/li&gt;
&lt;li&gt;Zapier on every plan, including Free.&lt;/li&gt;
&lt;li&gt;A polished dashboard, email notifications, and multiple spam-protection options.&lt;/li&gt;
&lt;li&gt;Paid validation credits for real-time email and phone checks.&lt;/li&gt;
&lt;li&gt;A public DPA, configurable retention, export and deletion controls, and token-authenticated management APIs.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Where Basin falls short
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Free is limited to 50 submissions per month, one endpoint, and 30 days of retention.&lt;/li&gt;
&lt;li&gt;Webhooks and API access start on Growth at $24.17/month when billed yearly.&lt;/li&gt;
&lt;li&gt;Basin is operated from Canada and uses subprocessors in multiple regions, including the US. It does not offer an EU-only data-residency option.&lt;/li&gt;
&lt;li&gt;Validation is credit-based rather than part of a typed submission schema. Free includes no validation credits.&lt;/li&gt;
&lt;li&gt;Incoming form endpoints do not provide a protected submission mode, and there is no built-in UTM attribution system comparable with Forminit's.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pricing:&lt;/strong&gt; Free (50 submissions, one form, 100 MB); Starter $12.50/month yearly (250 submissions, three forms, 500 MB); Growth $24.17/month yearly (1,000 submissions, API and webhooks); Pro $40.83/month, or about $30.62/month on yearly billing (5,000 submissions, 10 GB).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Best for:&lt;/strong&gt; Small projects that value a polished dashboard, large per-file uploads, stored files, and free Zapier, and can work within the free submission and retention limits.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. Web3Forms
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://web3forms.com/" rel="noopener noreferrer"&gt;Web3Forms&lt;/a&gt; is an access-key form service for static sites. The public access key is placed in the HTML by design, so it hides the raw recipient email address but does not authenticate the submitting browser.&lt;/p&gt;

&lt;p&gt;Sources: &lt;a href="https://web3forms.com/pricing" rel="noopener noreferrer"&gt;pricing&lt;/a&gt; · &lt;a href="https://docs.web3forms.com/getting-started/faq" rel="noopener noreferrer"&gt;FAQ and server location&lt;/a&gt; · &lt;a href="https://docs.web3forms.com/getting-started/pro-features/file-attachments" rel="noopener noreferrer"&gt;file upload documentation&lt;/a&gt; · &lt;a href="https://web3forms.com/privacy" rel="noopener noreferrer"&gt;privacy&lt;/a&gt; · &lt;a href="https://web3forms.com/dpa" rel="noopener noreferrer"&gt;DPA&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  What Web3Forms does well
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;The highest free submission allowance in this comparison: 250 per month.&lt;/li&gt;
&lt;li&gt;Unlimited forms and access keys on Free.&lt;/li&gt;
&lt;li&gt;A 30-day submission history, dashboard, custom redirects, advanced spam protection, honeypot support, and hCaptcha on Free.&lt;/li&gt;
&lt;li&gt;A paid Submissions API and integrations with services such as Google Sheets, Notion, Slack, Discord, and webhooks.&lt;/li&gt;
&lt;li&gt;A public DPA that includes Standard Contractual Clauses for international transfers.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Where Web3Forms falls short
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;File uploads are paid. The standard Pro uploader supports a single file up to 5 MB; an advanced uploader is available for larger or multiple files.&lt;/li&gt;
&lt;li&gt;Webhooks, autoresponders, the Submissions API, and third-party integrations are paid features.&lt;/li&gt;
&lt;li&gt;The access key is public and there is no protected server submission mode. Web3Forms recommends client-side use; server-side senders may require paid IP allowlisting.&lt;/li&gt;
&lt;li&gt;There is no typed server-side submission schema.&lt;/li&gt;
&lt;li&gt;Its documentation identifies US-East servers, while the company operates from India and uses international subprocessors. A DPA and SCCs are available, but there is no EU-only data-residency option.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pricing:&lt;/strong&gt; Free (250 submissions/month, unlimited forms, 30-day history); Pro $149/year, or about $12.40/month (10,000 submissions, one-year visible history, uploads, webhooks, autoresponders, and integrations).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Best for:&lt;/strong&gt; Static sites that prioritise a high free submission allowance and unlimited forms over free uploads, authenticated server-side submission, or EU data residency.&lt;/p&gt;

&lt;h2&gt;
  
  
  Which form backend includes file uploads on a free plan?
&lt;/h2&gt;

&lt;p&gt;Forminit and Basin are the two hosting-independent services here that store uploads on a free plan. Netlify Forms also supports free uploads, but only for sites hosted on Netlify. FormSubmit forwards files as email attachments without storing them in a file inbox.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Service&lt;/th&gt;
&lt;th&gt;Uploads on Free&lt;/th&gt;
&lt;th&gt;Details&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Forminit&lt;/td&gt;
&lt;td&gt;Yes, stored&lt;/td&gt;
&lt;td&gt;100 MB storage; 25 MB/submission; 100 submissions/month&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Formspree&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Paid from $15/month; 25 MB/file&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;FormSubmit&lt;/td&gt;
&lt;td&gt;Email-only&lt;/td&gt;
&lt;td&gt;10 MB total; attached to email rather than stored&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;EmailJS&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Attachments start at $9/month with a 500 KB cap&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Netlify Forms&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;8 MB total request cap; Netlify hosting required&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Basin&lt;/td&gt;
&lt;td&gt;Yes, stored&lt;/td&gt;
&lt;td&gt;100 MB free storage; up to 100 MB/file; 50 submissions and one form&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Web3Forms&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Paid Pro uploader; 5 MB/file with the standard uploader&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Choose Forminit when typed validation, twice Basin's free submission allowance, and EU data hosting matter. Choose Basin when the larger per-file limit and free Zapier matter more. Both Free plans allow one form endpoint.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is the best Formspree alternative for EU data residency?
&lt;/h2&gt;

&lt;p&gt;Forminit is the clearest choice in this list when submission data must remain hosted in the EU. Forminit stores form data in AWS Ireland, provides a DPA, and publishes its subprocessors. Formspree is SOC 2 Type 2 audited and provides a DPA, but its service runs on AWS in the United States and relies on SCCs for EU transfers.&lt;/p&gt;

&lt;p&gt;Web3Forms also now publishes a DPA and SCCs, while Basin publishes a DPA and operates from Canada with international subprocessors. Those safeguards can support GDPR transfers, but they are not the same as keeping submission data in an EU region. FormSubmit does not publish comparable data-residency detail.&lt;/p&gt;

&lt;h2&gt;
  
  
  Which service should you choose?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Choose &lt;strong&gt;Forminit&lt;/strong&gt; for the broadest free feature mix, typed validation, stored uploads, EU-hosted data, attribution, and an upgrade path to authenticated server-side submissions.&lt;/li&gt;
&lt;li&gt;Choose &lt;strong&gt;Formspree&lt;/strong&gt; for a familiar provider, SOC 2 Type 2 report, and mature React helper when US hosting is acceptable.&lt;/li&gt;
&lt;li&gt;Choose &lt;strong&gt;FormSubmit&lt;/strong&gt; for a free, no-account email forwarder on a low-risk personal project.&lt;/li&gt;
&lt;li&gt;Choose &lt;strong&gt;EmailJS&lt;/strong&gt; when templated client-side email is the requirement and you do not need a stored-submission backend.&lt;/li&gt;
&lt;li&gt;Choose &lt;strong&gt;Netlify Forms&lt;/strong&gt; for free, unlimited basic forms on a site that will stay on Netlify.&lt;/li&gt;
&lt;li&gt;Choose &lt;strong&gt;Basin&lt;/strong&gt; for a polished dashboard, free stored uploads, a large per-file limit, and Zapier on Free.&lt;/li&gt;
&lt;li&gt;Choose &lt;strong&gt;Web3Forms&lt;/strong&gt; for 250 free submissions and unlimited forms on a static site when free uploads and protected server submission are not required.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Frequently asked questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What is a form backend?
&lt;/h3&gt;

&lt;p&gt;A form backend is an API service that receives form submissions, validates or filters the data, stores it, sends notifications, handles files, and forwards information to other services. You build the form interface; the backend supplies the endpoint and infrastructure.&lt;/p&gt;

&lt;h3&gt;
  
  
  Which form backend has the most complete free plan?
&lt;/h3&gt;

&lt;p&gt;By feature mix, Forminit: its Free plan combines 100 submissions per month, one form, stored uploads with 100 MB of storage, typed validation, spam protection, redirects, email notifications, and an unlimited archive. Web3Forms has the highest raw allowance at 250 submissions and unlimited forms but no free uploads. Basin includes stored uploads and Zapier but is limited to 50 submissions, one form, and 30-day retention.&lt;/p&gt;

&lt;h3&gt;
  
  
  Which form backend offers the largest free stored upload size?
&lt;/h3&gt;

&lt;p&gt;Basin documents uploads up to 100 MB per file and includes 100 MB of total storage on Free. Forminit also includes 100 MB of total storage, with a 25 MB maximum per submission. Netlify Forms allows uploads on its credit-based plans but caps the entire request at 8 MB.&lt;/p&gt;

&lt;h3&gt;
  
  
  Does Web3Forms provide a DPA?
&lt;/h3&gt;

&lt;p&gt;Yes. Web3Forms published a DPA in July 2026, incorporating Standard Contractual Clauses for relevant international transfers. Its documentation still identifies US-East hosting, so a DPA should not be confused with EU data residency.&lt;/p&gt;

&lt;h3&gt;
  
  
  Is FormSubmit suitable for production?
&lt;/h3&gt;

&lt;p&gt;It can handle simple production email forwarding, but it is a weaker fit where durable storage, a searchable dashboard, detailed compliance documentation, or reliable file retention is required. The default setup also exposes the recipient email until you replace it with the generated alias.&lt;/p&gt;

&lt;h2&gt;
  
  
  Further reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://forminit.com/blog/what-is-a-headless-form-backend/" rel="noopener noreferrer"&gt;What is a headless form backend?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://forminit.com/blog/file-upload-contact-form/" rel="noopener noreferrer"&gt;How to add file uploads to a contact form&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://forminit.com/docs/formspree-alternatives/" rel="noopener noreferrer"&gt;Forminit vs Formspree&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://forminit.com/blog/how-to-choose-form-backend-api/" rel="noopener noreferrer"&gt;How to choose a form backend API&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://forminit.com/docs/" rel="noopener noreferrer"&gt;Forminit documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What are you using for form handling in 2026? Share your setup in the comments.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>forms</category>
      <category>api</category>
    </item>
    <item>
      <title>Handle Static Webflow Forms</title>
      <dc:creator>Forminit</dc:creator>
      <pubDate>Sat, 01 Jun 2019 21:26:39 +0000</pubDate>
      <link>https://dev.to/wssn/handle-static-webflow-forms-fbe</link>
      <guid>https://dev.to/wssn/handle-static-webflow-forms-fbe</guid>
      <description>&lt;p&gt;&lt;a href="https://webflow.com" rel="noopener noreferrer"&gt;Webflow&lt;/a&gt; is a web-based drag and drop tool for building responsive websites. There are hundreds of professionally-designed templates. You can customize your selected template so that it’s perfect for your brand and goals. &lt;a href="https://webflow.com/feature/changes-to-forms" rel="noopener noreferrer"&gt;Webflow&lt;/a&gt; recently stopped supporting form handling for exported sites.&lt;br&gt;
You can easily handle your forms, receive files, integrate with over 1000 apps (Slack, Google Spreadsheet, E-mail, Google Docs and more) via &lt;a href="https://forminit.com" rel="noopener noreferrer"&gt;Forminit&lt;/a&gt;.  &lt;/p&gt;

&lt;p&gt;Set up your Webflow form with 3 easy steps:&lt;br&gt;
1- Create your first form in &lt;a href="https://forminit.com" rel="noopener noreferrer"&gt;Forminit&lt;/a&gt; and get your form endpoint url.&lt;/p&gt;

&lt;p&gt;2- Choose form element in Webflow and select its settings. Paste your Forminit endpoint into Action input and set your method as POST. 3- Publish your website and send your first submission. Voilà&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/NNvwKW2HFP4"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Getform features:&lt;br&gt;
&lt;a href="https://forminit.com/docs/file-upload/" rel="noopener noreferrer"&gt;File upload support&lt;/a&gt;,&lt;br&gt;
CSV Export,&lt;br&gt;
&lt;a href="https://forminit.com/docs/email-notifications/" rel="noopener noreferrer"&gt;E-mail notification&lt;/a&gt;,&lt;br&gt;
&lt;a href="https://forminit.com/docs/webhooks/" rel="noopener noreferrer"&gt;Webhook support&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webflow</category>
      <category>form</category>
      <category>html</category>
      <category>serverless</category>
    </item>
  </channel>
</rss>
