Outgrow builder forms

Outgrow builder forms7 min read

Webflow form submission limit: what it is and how to get past it

Webflow's free Starter plan stops collecting after 50 form submissions per site and exported sites get none, so point the Form Block at Ikiform instead.

Preet SutharFounder, Ikiform

On the free Starter site plan, Webflow collects 50 form submissions per site in total, the count doesn't reset, and new submissions are not collected after that. Paid site plans list unlimited submissions, and sites exported to another host get no form handling at all. Set a custom action on the Form Block so the form posts to Ikiform, which works on Starter, on paid plans and in exported code.

What's different on Webflow

Webflow's limit is narrower than it used to be. As of October 2026, its pricing page lists 50 form submissions on the free Starter site plan and unlimited submissions on every paid site plan, starting with Basic. Webflow's help center says the Starter count is a total that doesn't reset. Older articles that quote monthly caps for paid plans describe pricing that has since changed.

So who actually hits the wall? Three groups:

  • Sites that stay on Starter. A personal site, a side project or an event page published on webflow.io without a site plan. Fifty submissions go fast once a bot finds the form.
  • Agencies building on staging. Every test submission while you build counts toward the same 50, before the client has paid for hosting.
  • Exported sites. Webflow's code export gives you the HTML, but forms on a site hosted elsewhere aren't processed by Webflow at all. The form posts nowhere useful.

If your site is on a paid plan and you're happy with Webflow's inbox and notifications, you don't need to move. People on paid plans move for other reasons: one place for forms across several sites, signed webhooks to their own tools, spam filtering they can tune, or a form that survives a move off Webflow.

Three Webflow situations and what to do in eachStarter siteon webflow.io, no siteplan50 in totalno reset, then notcollectedcustom actionset in the Form Blockpaid site planBasic or higherunlimitedlisted on the pricingpagestay, or move forfeaturesexported codehosted somewhere elseno form handlingWebflow never sees thepostedit the actionin the exported HTMLThree Webflow situations and what to do in eachStarter siteon webflow.io, no site plan50 in totalno reset, then not collectedcustom actionset in the Form Blockpaid site planBasic or higherunlimitedlisted on the pricing pagestay, or move for featuresexported codehosted somewhere elseno form handlingWebflow never sees the postedit the actionin the exported HTML
  1. A Starter site on webflow.io collects 50 submissions in total, with no reset, and then stops collecting. Set a custom action on the Form Block.
  2. A site on a paid site plan has unlimited submissions. Stay on Webflow's forms, or move only if you need features Webflow doesn't have.
  3. A site exported and hosted elsewhere gets no form handling from Webflow. Edit the form's action in the exported HTML.
Only the first and last rows are limits. The middle row is a choice about features, not a cap.

Set the custom action in the Designer

A custom action makes the visitor's browser post straight to the URL you give it. Webflow doesn't process the post, so it isn't one of Webflow's form submissions. The Form Block setting is available on Starter; you don't need custom code for this part.

  1. Create a form in the Ikiform dashboard and copy its endpoint.
  2. In the Designer, select the form element inside the Form Block, not the block itself, and open Settings.
  3. Under Send to, remove Webflow's own destinations, choose a custom action, paste the endpoint into Action and set Method to POST.
  4. Select each input and set its Name to a lowercase id: name, email, company, message. Webflow fills names from labels, which would give you Name and Field 2 in Ikiform.
  5. Remove any reCAPTCHA element from the form. Ikiform doesn't check it, and its token would arrive as an extra field.
  6. Add one more Input named _gotcha, hide it with Display: none, and add the custom attributes tabindex = -1 and autocomplete = off. That's the honeypot.
  7. Publish to your-site.webflow.io. Custom actions don't run in the Designer canvas.
Action
https://ikiform.com/f/frm_xxxxxxxxxxxxxxxx

What visitors see after they submit

Webflow's success and error blocks only appear when Webflow handles the post. With a custom action, the browser follows Ikiform's answer instead. Pick one of these:

OptionPlanWhat visitors see
Do nothingAnyIkiform's hosted thank-you page, with a link back to your site. Fine for testing, plain for a live site
Redirect after submitAnyYour own Webflow thank-you page. Create a page, publish it, and paste its full URL into the Ikiform form's settings
A fetch scriptPaid site planWebflow's own success and error blocks, filled in by a short script. Custom code needs a paid site plan or a Workspace plan

On Starter, the redirect is the right choice: it needs no code and looks like the rest of your site. The script for paid plans is in the Webflow docs. It posts with fetch, so it can't show Ikiform's human check; leave the Spam check off if you use it.

Exported Webflow sites

When you export code and host it on Netlify, Vercel, Cloudflare Pages or your own server, the form markup comes with it but Webflow's form handling doesn't. Open the exported HTML file that holds the form, set the action and method, rename the inputs, and add a redirect and the honeypot:

contact.html
<form id="wf-form-Contact" name="wf-form-Contact" data-name="Contact"
  method="post" action="https://ikiform.com/f/frm_xxxxxxxxxxxxxxxx" class="contact-form">
  <label for="name">Name</label>
  <input class="w-input" maxlength="256" name="name" id="name" type="text" required>
  <label for="email">Email</label>
  <input class="w-input" maxlength="256" name="email" id="email" type="email" required>
  <label for="company">Company</label>
  <input class="w-input" maxlength="256" name="company" id="company" type="text">
  <label for="message">Message</label>
  <textarea class="w-input" maxlength="5000" name="message" id="message" required></textarea>
  <input type="hidden" name="_redirect" value="https://studio.example/thanks">
  <input name="_gotcha" type="text" tabindex="-1" autocomplete="off" hidden>
  <input type="submit" class="w-button" value="Send">
</form>
  • Keep the w-input and w-button classes so the exported CSS still styles the form.
  • _redirect sends the browser to your thank-you page after a successful post. It only works for an https: URL on one of the form's Allowed domains.
  • Make the change in the Designer too, as a custom action, so the next export doesn't overwrite it with Webflow's default.
  • Submit once from the host and watch the browser's network panel. The post should go to https://ikiform.com/f/ and answer 303 with a redirect, not to a Webflow address.
If you host the export on Netlify, don't add data-netlify to the same form. A form posts only to its action, so Netlify would list a form in its Forms tab that never receives anything.

Allowed domains for Webflow

Add your-site.webflow.io and your custom domain under the form's Allowed domains. Subdomains of a listed domain already match, so example.com covers www.example.com. Don't add webflow.io on its own: that would allow every Webflow site to post to your form. For an exported site, add the domain it's hosted on.

Webflow's file upload field, which its pricing page lists on Premium, has no Ikiform equivalent. File uploads aren't supported yet. A post with a file gets 422 files_not_supported. Remove the upload field from the form, or keep that one form on Webflow.

Check it works on Webflow

  1. Under the form's Allowed domains, add your site's domain, plus localhost while you develop. Leave it empty to accept posts from anywhere.
  2. Publish to webflow.io and submit the form from the published page, not the Designer.
  3. Confirm you land on your thank-you page, or see Webflow's success block if you added the script.
  4. Open Submissions in the dashboard. The new submission is there with every field you sent.
  5. Read the field names. They should be name, email, company and message, with no Field 2 and no honeypot.
  6. Check the inbox of each notification recipient. Each gets an email with the fields, and Reply goes to the submitter when the form has an email field.
  7. Open Webflow's form submissions for the site and confirm the test isn't there. Webflow no longer counts it.

Gotchas

ProblemWhat to do
A 404 not_found response after submitMethod is GET. Set it to POST and publish again.
Ikiform's thank-you page instead of your ownSet Redirect after submit to your Webflow page's full URL, and add its domain to Allowed domains.
Submissions still appear in WebflowYou changed a different form, or didn't publish. Each Form Block has its own Send to setting; check every page that has a form.
422 validation_failed with an Unknown field such as Email or g-recaptcha-responseAn input name doesn't match your field ids, or a reCAPTCHA element is still in the form. Rename or remove it.
403 origin_not_allowed, or every post lands in spamThe page's domain isn't in the form's Allowed domains. Add it, plus localhost for local tests. Subdomains of a listed domain are allowed.
422 files_not_supportedThe form has an <input type="file"> with a file chosen. File uploads aren't supported yet; remove the input or ask for a link instead.

Questions

Stuck on a step, or want a guide for your situation? Email hello@ikiform.com.