splitforms.com
INTEGRATION · DATABASE

Send Form Submissions to Notion — splitforms

Append submissions as pages in a Notion database.

Create a Notion integration, share a database with it, and POST splitforms webhooks through a small relay that creates one page per submission. Each form field maps to a Notion property.

Delivery mode: Webhook + relay (or Zapier / Make)

Free for 1,000 submissions/month. No credit card required.

How to set up Notion with splitforms

6 steps. The whole flow typically takes a couple of minutes.

  1. Build a Notion database with one property per form field. The first column becomes the page title (use submitter name or email).

  2. At notion.so/my-integrations, create an internal integration and copy its secret. Share the database with the integration from the database's '... → Connections' menu.

  3. Spin up a relay (Cloudflare Worker, Vercel function) that receives the splitforms webhook and POSTs to https://api.notion.com/v1/pages with the database_id and field-to-property mapping in the body.

  4. Paste the relay URL into the form's Webhooks tab in splitforms.

  5. Submit a test entry. A new page should appear in the Notion database within a couple of seconds.

  6. Optional: filter which submissions go to Notion by branching inside the relay (e.g. only POST if the form's 'priority' field equals 'high').

example: form markup
<form action="https://splitforms.com/api/submit" method="POST">
  <input type="hidden" name="access_key" value="YOUR_SPLITFORMS_KEY" />
  <input type="hidden" name="_route" value="notion" />
  <input type="email" name="email" placeholder="you@example.com" required />
  <textarea name="message" placeholder="Your message" required></textarea>
  <button type="submit">Send to Notion</button>
</form>

The form posts to https://splitforms.com/api/submit. The Notionrouting is configured in the splitforms dashboard against the form's access key — there's no client-side Notion-specific code in your HTML.

Want the long-form walkthrough? Read the deep-dive Notion guide on the blog →

Who uses splitforms + Notion

A handful of patterns we've seen in the wild.

Frequently asked questions

Why a relay rather than a direct splitforms → Notion integration?

Notion's API expects a structured properties object that depends on the destination database's schema. splitforms doesn't know your Notion schema. A relay (or Zapier) is the right place for that mapping. Native Notion delivery is on our roadmap as a hosted version of this same translation layer.

Can I do this without code via Zapier?

Yes. Zapier's Notion connector exposes the database schema in its UI and lets you map each form field to a Notion property via dropdowns. The cost is the Zapier subscription itself.

How do I handle Notion's rate limits?

Notion permits about 3 requests per second per integration. For typical form-submission volumes, this is more than enough. If you exceed it, the relay should pass 429s back so splitforms can retry with exponential backoff.

Can I use formulas or rollups based on form data?

Yes — once the page is created in the Notion database, your existing formula and rollup properties run automatically. Use this for things like 'days since submission' or 'is_active' status flags.

Will field types like multi-select work?

Yes, but multi-select values must already exist as options in the database (or be created via the same API call with the appropriate body shape). Single-line text, email, phone, URL, date, checkbox, and select all map cleanly.

Are integration secrets safe?

Yes if you store the secret in your relay platform's secrets manager. Never commit it to a repo or hardcode it. Rotate from notion.so/my-integrations if it ever leaks.

Connect Notion in 60 seconds.

Free for 1,000 submissions per month. No credit card. Pro is $5/mo. The whole splitforms + Notion setup ships in under five minutes.

Start free Browse all integrations