This is a research guide based on cited documentation. It is not a report of firsthand testing. Our editorial method

Every documented destination

Framer's help article on contact forms lists three groups. Native forms send to email, Google Sheets or custom webhooks. Built-in integrations cover Formspark, HubSpot and Typeform, with Calendly and Intercom mentioned in the FAQ. The Input component handles email signups to Loops, Mailchimp, Formspark and GetWaitlist, and any provider with embed code, such as beehiiv or Tally, can go in an Embed component. Fully custom forms are possible with Code Components. [1]

DestinationSetup effortWho it suits
EmailLow: choose Email under Send ToContact forms on small sites with low volume
Google SheetsLow: choose Google Sheets under Send ToAnyone who wants a running log to sort, share or export
WebhookMedium to high: endpoint, secret, signature checkDevelopers, or Zapier and similar tools on a paid plan
Formspark, HubSpot, Typeform integrationsMedium: account with that providerTeams already using that provider
Email signup input (Loops, Mailchimp, Formspark, GetWaitlist)Low to mediumNewsletter or waitlist signups
Third-party embed (Tally, beehiiv and others)Low: paste embed codeForms needing features Framer's native form lacks

What native forms can collect

Insert a native form from the Insert menu under Forms. Framer's field-types article lists Text, Checkbox, Radio and Select, added from the plus icon in the bottom toolbar after selecting the Form layer, and any field can be marked required in the properties panel. [1][5]

Hidden fields add data the visitor does not see, such as the page a form sits on. Add an Input, turn on its Hidden property and give it a Name, which is what appears in the submission. Do not use the Visible property instead, because invisible inputs are excluded from submissions entirely. Hidden fields do not capture UTM parameters automatically; that needs a code override. Framer's examples send hidden fields to a webhook or Google Sheet. [4]

Webhooks in detail

Select the form, click Add next to Send To and choose Webhook. The webhook address must use HTTPS. Framer posts the data as JSON with input names as keys and input values as values. [2]

Set a secret of at least 32 characters; it cannot be viewed again. Each request carries a Framer-Signature header (sha256= followed by an HMAC of the body and submission ID) and a Framer-Webhook-Submission-Id header. Framer provides Go and Node.js examples for verifying the signature. [2]

Your endpoint must return a 2xx status. Otherwise Framer retries up to 5 times, and redirects (3xx) are not followed. Retries mean the same submission can arrive more than once; the Framer-Webhook-Submission-Id header is unique per submission, so store it and ignore repeats. [2]

If you plan to send the webhook to Zapier, note that Zapier lists Webhooks by Zapier on Professional, Team and Enterprise plans, not Free. [8]

Limits, spam and what the pricing page says

Framer's pricing page does not list a cap on form submissions for any plan. The nearest item is the Convert add-on, priced at $50 per 500,000 events, which counts a submission through a tracked form as an event. If you expect very high volume, confirm with Framer rather than assuming there is no ceiling, and check the limits of any third-party destination you choose. [7]

Native forms include built-in spam protection and rate limiting. Framer describes it as a background puzzle the visitor's device solves, so visitors do not type characters from an image. If spam still arrives, Framer says you may need to filter entries manually wherever they are stored. [1][3]

Setup and test checklist

Framer's own form-audit skill makes the key point: a configured destination does not prove delivery, and a form should not be called working until delivery is confirmed. Use the list below on the published site. [6]

  • Confirm every form has a Send To destination; a missing one is a launch blocker.
  • Check each field has a visible label, not just placeholder text, and the right submission name.
  • Mark required fields and try submitting with one left empty.
  • Publish, then submit a test entry from the live address on desktop and phone.
  • Find the entry at the destination: the inbox, the sheet row, or your webhook log.
  • For webhooks, confirm your endpoint returns 2xx directly and verifies the Framer-Signature header.
  • Check what the visitor sees after submitting and that it says what happens next.
  • Add the destination service to your privacy notice.

Which destination to choose

For a portfolio or small business contact form, email plus a Google Sheet covers most needs with no code. Choose a webhook only if you have somewhere to receive it, such as your own backend or a paid automation tool, and are prepared to verify signatures and handle retries. Use an embed when you need features the native field types lack, such as field types beyond Framer's documented Text, Checkbox, Radio and Select, accepting that styling and data then live with that provider. [1][2][5]

Questions before you decide

Where do Framer form submissions go?

Wherever you set under Send To: Framer's help lists email, Google Sheets and custom webhooks for native forms, plus built-in integrations such as Formspark, HubSpot and Typeform.

Is there a limit on Framer form submissions?

Framer's pricing page lists no submission cap for any plan. The Convert add-on counts tracked form submissions as events at $50 per 500,000 events.

How do I verify a Framer form webhook is genuine?

Set a secret of at least 32 characters, then recompute the HMAC of the body and submission ID and compare it with the Framer-Signature header. Framer provides Go and Node.js examples.

What happens if my webhook endpoint fails?

Framer retries up to 5 times if it does not get a 2xx response, and it does not follow 3xx redirects, so the endpoint must answer directly.

Sources & verification

Product details and prices can change. Check the linked provider before buying.

  1. Framer Help: Adding a contact form Accessed 30 Oct 2026
  2. Framer Help: Connect Framer forms to a webhook Accessed 30 Oct 2026
  3. Framer Help: How Framer's built-in form spam protection works Accessed 30 Oct 2026
  4. Framer Help: Add hidden fields to forms for tracking Accessed 30 Oct 2026
  5. Framer Help: Add different field types to a native form Accessed 30 Oct 2026
  6. Framer Skill: Form audit Accessed 30 Oct 2026
  7. Framer pricing Accessed 30 Oct 2026
  8. Zapier Help: Trigger Zap workflows from webhooks Accessed 30 Oct 2026

Sources link directly to providers. Product buttons may use separately labeled affiliate links. Read our disclosure.

Your decision at a glance

Compare the options

Full comparison

Documentation-based guidance. No tested ranking or performance score.

Website builders

Framer

Consider it for
Consider Framer for a multi-page visual site with CMS collections. The reviewed Basic plan displayed $10 per month on annual billing, with $120 due upfront. Free does not include a custom domain.
Starting cost
Free plan; Basic $10/month displayed on yearly billing ($120/year)
Before you choose
Annual billing requires the full payment upfront. Add-ons and editor seats can add cost.

Checked 13 Sep 2026 · Pricing source

View Framer plans

Direct provider link; no affiliate tracking added by this publication. Link disclosure

Website and course platforms

systeme.io

Consider it for
An integrated option for a launch that needs website pages, email follow-up, and course delivery. Evaluate one complete visitor journey before migrating separate tools.
Starting cost
Free starting point; confirm current paid-plan prices and limits
Before you choose
Documentation-based research, not a hands-on delivery benchmark. Check contact and course limits, payment costs, and export options before moving an audience.

Checked 20 Sep 2026 · Pricing source

View systeme.io plans

Affiliate link: we may earn a commission on an eligible purchase. Link disclosure

Website builders

Carrd

Consider it for
Publish a compact landing page on Pro Standard ($19/year), which lists custom domains and forms; Pro Lite excludes those features, so skip it when a custom domain or native form is required.
Starting cost
Free start; Pro Standard $19/year
Before you choose
Pro Lite lacks custom domains and forms. Registration and external services may cost extra.

Checked 13 Sep 2026 · Pricing source

View Carrd plans

Affiliate link: we may earn a commission on an eligible purchase. Link disclosure