All resources
Comparisons & alternatives

ShipMyForm vs Netlify Forms: A Netlify Forms Alternative

A fair comparison of ShipMyForm vs Netlify Forms. Why host lock-in and the 100/month cap push people to look for a Netlify Forms alternative that runs anywhere.

The ShipMyForm team

· 6 min read

You have a contact form on a static site, and you want the submissions to land somewhere useful: your inbox, a spreadsheet, a Slack channel. If your site is on Netlify, the obvious answer is Netlify Forms, and it is a genuinely good answer. But plenty of people end up searching for a Netlify Forms alternative, usually because they moved hosts, hit the free limit, or got a bill they did not expect.

This is a fair, developer-to-developer comparison of Netlify Forms against ShipMyForm. Full disclosure: we build ShipMyForm, so we will tell you exactly where Netlify Forms is the better call and where it holds you back.

What Netlify Forms does well

Credit where it is due. If you are already deploying on Netlify, Netlify Forms is close to zero effort. You add a netlify attribute to your form (plus a hidden form-name input), Netlify detects it at build time, and submissions start showing up in your dashboard. There is no endpoint URL to configure, no account to create somewhere else, no extra service in your stack.

It is also nicely integrated. Submissions live in the same Netlify dashboard where you already watch deploys, so there is one login and one place to look. It ships with basic spam protection out of the box (a honeypot field plus Akismet), and it supports file uploads on the form. For a small site that is staying on Netlify, that is a complete, sensible setup, and there is not much reason to reach for anything else.

So if you are all-in on Netlify and your volume is low, Netlify Forms is a fine choice. This article is about the cases where it is not.

Where it holds you back

Host lock-in is the big one. Netlify Forms is a feature of Netlify hosting, and it only works for sites hosted on Netlify. There is no endpoint you can post to from elsewhere. The day you move that site to Vercel, Cloudflare Pages, GitHub Pages, or an S3 bucket, Netlify Forms stops being an option and your form has to be rebuilt on something else. If you run several sites across different hosts, you cannot standardize on it. Your form backend is tied to your deploy platform, and those two decisions should really be independent.

The free limit and the way you cross it. Netlify's free plan caps form submissions at 100 per month. As of April 2026, form submissions no longer eat into Netlify's build credits, which is a welcome change, but the 100 per month cap still applies on the free plan. The part that catches people out is what happens next: if you go over 100, Netlify auto-upgrades you to Forms Level 1 (1,000 submissions) and charges you at the end of the billing cycle. A traffic spike or a burst of spam can quietly turn your free form into a paid one, and you find out when the invoice arrives. It is a reasonable business model, but it is a surprise bill waiting to happen if you are not watching.

ShipMyForm vs Netlify Forms at a glance

Here is how the two free tiers line up. Both are free with no credit card, so this is a comparison of what you actually get.

FeatureShipMyForm (free)Netlify Forms (free)
Free submissions / mo100100
Works on any hostYesNetlify only
Retention on free180 daysLimited
Spam filtering, no CAPTCHAYesHoneypot + Akismet
Connectors on freeEmail + WebhookNetlify integrations
File uploadsPaidYes
Behavior over the free limitBlocked and notified, stays freeAuto-upgrade + charge
Credit card for freeNoNo

Read the rows that matter to your situation rather than counting ticks. If you are staying on Netlify forever and want file uploads on the free tier, Netlify Forms has a real edge there. If you care about portability and predictable billing, ShipMyForm is built around those.

The headline difference: host independence

The single biggest reason people look for a Netlify Forms alternative is that they want their form backend to outlive their choice of host.

ShipMyForm is a hosted form backend that works on any host: Netlify, Vercel, GitHub Pages, Cloudflare Pages, S3, anything that can serve an HTML page. You keep your own markup in whatever framework you like, or none, and you point the form's action at a ShipMyForm URL. The submission is stored, filtered for spam, emailed to you, and routed to any connectors you have set up. None of that depends on where the page is hosted, because it is a plain form post to a URL.

That decoupling is worth more than it looks. You can migrate hosts without touching your forms. You can run a marketing site on Netlify and an app on Vercel and have both post to the same backend, with one inbox and one export. And if you decide to leave a host over pricing or features, your forms are not part of the decision.

Pricing changes, verify it:

Netlify Forms limits, the 100 per month free cap, and the auto-upgrade billing behavior described here are current as of July 2026 and are time sensitive. Netlify changes these, so confirm the current numbers on netlify.com before you make a decision.

Migrating from Netlify Forms

Because both are just endpoints a form posts to, moving over is mostly a markup change. On Netlify you have something like this:

html
<form name="contact" method="POST" netlify>
  <input type="hidden" name="form-name" value="contact" />
  <input type="email" name="email" required />
  <textarea name="message" required></textarea>
  <button type="submit">Send</button>
</form>

To switch to ShipMyForm, drop the netlify attribute and the hidden form-name input, and point action at your ShipMyForm endpoint:

html
<form action="https://shipmyform.com/f/YOUR_FORM_ID" method="POST">
  <input type="email" name="email" required />
  <textarea name="message" required></textarea>
  <button type="submit">Send</button>
</form>

Keep your field name attributes the same and everything downstream keeps working. ShipMyForm also understands Formspree-style reserved fields, so if you want a custom redirect after submit or a custom email subject you can add _redirect and _subject hidden inputs, and _gotcha as an extra honeypot. Point the new form at a test submission, confirm it arrives in your inbox, then deploy. There is no data model to rewrite.

Spam, without the CAPTCHA

Netlify Forms uses a honeypot plus Akismet, which is a solid baseline. ShipMyForm takes a similar no-CAPTCHA stance but layers it differently: a honeypot field, server-side rate limiting, content heuristics, and cross-form velocity checks that catch bots hammering several of your forms at once. Nobody has to solve a puzzle either way. If spam is the thing pushing you off your current setup, it is worth reading how to stop form spam without reCAPTCHA before you pick.

Who should pick which

Choose Netlify Forms if you are all-in on Netlify, your volume is comfortably under 100 submissions a month, and you value zero configuration and a single dashboard. Its file uploads on the free tier and its tight integration with the Netlify deploy pipeline are real advantages when you are not planning to leave the platform.

Choose ShipMyForm if you want portability across hosts, predictable billing that does not auto-upgrade you into a charge, or more connector reach on the free tier. The free plan covers 100 submissions a month across up to 5 forms with 180-day retention, email notifications, Email and Webhook connectors, full spam protection, CSV export, a stored inbox, and magic-link or passkey sign-in, no credit card. Paid Starter and Pro plans are launching soon and add the full set of 20+ connectors (Slack, Google Sheets, Notion, Airtable, Discord and more), file uploads, an auto-responder, and an API, with higher submission ceilings and longer retention. We are not quoting a price yet because pricing is not public, but you can start on the free plan today.

Next steps

Frequently asked questions

What is the best Netlify Forms alternative?
It depends on where your site is hosted. Netlify Forms only works for sites hosted on Netlify, so the moment you move to Vercel, Cloudflare Pages, or GitHub Pages you need something else. ShipMyForm is a host-independent form backend: you point your form's action at a ShipMyForm URL and it works the same on any host, with 100 free submissions a month and no credit card.
Does Netlify Forms work on Vercel or other hosts?
No. Netlify Forms is built into Netlify hosting and only works for sites deployed on Netlify. If your site lives on Vercel, Cloudflare Pages, GitHub Pages, or an S3 bucket, you cannot use it. A hosted form backend like ShipMyForm posts to a normal URL, so it runs on any host.
What is the Netlify Forms free limit?
As of July 2026, Netlify's free plan caps form submissions at 100 per month. If you exceed that, Netlify auto-upgrades you to Forms Level 1 (1,000 submissions) and charges you at the end of the billing cycle, so a surprise bill is possible. ShipMyForm's free plan is also 100 submissions a month, but it stays free when you hit the limit rather than auto-billing you.
How do I migrate from Netlify Forms to ShipMyForm?
Create a form in ShipMyForm, then change your form's action to the ShipMyForm endpoint and remove Netlify's netlify attribute and hidden form-name input. Because it is a standard POST, your existing field names keep working. ShipMyForm also supports Formspree-style reserved fields like _redirect and _subject, so redirects and subjects carry over.

Related guides