splitforms.com

Feature · Google Sheets

Form to Google Sheets — every submission appended as a new row

Connect Google in 30 seconds. splitforms creates the spreadsheet and appends every submission as a new row in real time — new fields become new columns automatically. No Apps Script required.

  • 500 free / mo
  • No credit card
  • 30-sec setup
splitforms google sheets — Connect Google in 30 seconds. splitforms creates the spreadsheet and appends every submission as a new row in real time — new fields become new columns automatically. No Apps Script required.

No backend to build

Your form posts to one splitforms endpoint — no server, API route, or SDK. splitforms is the backend.

Straight to your dashboard

Every submission is saved to a searchable dashboard and emailed to you — spam filtered before it lands.

Google Sheets, built in

No glue code, no third-party middleman — it ships as part of splitforms and works from your first submission.

Copy-paste ready

Drop this into any project.

Replace YOUR_ACCESS_KEY with the key from your splitforms dashboard. No SDK to install, no build step — the same html you already write.

Generate access key
google-sheets.html
// 1. In your splitforms dashboard, open Integrations → Google Sheets.
// 2. Pick the scope (this form, or all forms) and sign in with Google.
// 3. splitforms creates a spreadsheet for you (a "Submissions" tab with a
//    starter header row) — you don't pick a sheet or configure a mapping.
// 4. The form below appends one row per submission — automatically, in real time.

<form action="https://splitforms.com/api/submit" method="POST">
  <input type="hidden" name="access_key" value="YOUR_ACCESS_KEY" />

  <!-- Each form field gets its own column, labelled with the field's
       "name" attribute. New fields become new columns automatically. -->
  <input type="text"  name="full_name" placeholder="Full name" required />
  <input type="email" name="email"     placeholder="Email"     required />
  <input type="text"  name="company"   placeholder="Company" />
  <input type="text"  name="source"    value="Landing page" />
  <textarea           name="message"   placeholder="What can we help with?" required></textarea>

  <input type="checkbox" name="botcheck" style="display:none" tabindex="-1" />

  <button type="submit">Send</button>
</form>

{/*
  Every row also carries system columns automatically: Submitted at (UTC),
  Form, Submission ID, Referer, and IP address — useful for ranking traffic
  sources or building cohort sheets without any configuration.
*/}

How to set it up

How to set up Google Sheets.

How google sheets flows through splitforms — what you do, what we do, and what lands in your inbox.

Open Integrations → Google Sheets in the dashboard

Choose the scope — one form, or all forms on your account — and click Connect. Sign in with the Google account that should own the spreadsheet. splitforms uses Google's non-sensitive drive.file OAuth scope, which only grants access to files splitforms itself creates — it cannot see, list, or modify anything else in your Drive.

splitforms creates the spreadsheet for you

A new spreadsheet appears in your Drive with a 'Submissions' tab and a starter header row: Submitted at, Form, Submission ID, Referer, and IP address. Each form field gets its own column automatically — the first time a new field name appears in a submission, splitforms adds a column for it. No mapping screen, nothing to maintain.

Submit a test — watch the row appear in real time

Hit Submit on your form. Within ~1 second a new row appears at the bottom of the sheet. Every subsequent submission appends in real time, so non-technical teammates can sort, filter, and pivot leads straight from the spreadsheet — and you can pipe that sheet into Looker, Geckoboard, or Notion.

How google sheets works

How does splitforms handle Google Sheets?

splitforms connects any HTML form to a Google Sheet without Apps Script, without copy-pasting webhook URLs into your spreadsheet, and without paying $20/month for a glue tool that polls every 5 minutes. In the dashboard, click Integrations → Google Sheets, choose the scope (one form, or every form on your account), and sign in with Google. Route the same submission to an email inbox or a webhook at the same time — nothing here is one-or-the-other.

  • 30-second OAuth setup — no Apps Script, no copy-pasting webhook URLs into formulas
  • Zero configuration — splitforms creates the spreadsheet and adds a column per field automatically
  • System columns on every row (Submitted at, Form, Submission ID, Referer, IP address)
splitforms google sheets in action

What you get

What do you get with Google Sheets?

Every reason below is the boring, reliable kind — the fundamentals of google sheets, built once and tested in production so you never have to.

  • Real-time append — new row appears within ~1 second of submit, not 5-minute polling
  • Scoped Drive access (drive.file) — splitforms can only touch the sheet it creates
  • Formula-injection safe — submitted values starting with =, +, -, or @ are escaped before writing
Why teams pick splitforms for google sheets

How SplitForms works

From form to workflow in 3 simple steps.

Connect your form, collect every submission, and send data where it needs to go — without building backend infrastructure.

A SplitForms contact form submission launching straight to your inbox

Add your endpoint

Point your form to your unique SplitForms endpoint. That's it.

HTML form pointing at a SplitForms submit endpoint

Receive submissions

We instantly capture and organize every submission in your inbox.

Submissions inbox with searchable leads and status pills

Route anywhere

Send data to email, spreadsheets, CRMs, webhooks, and 7,000+ apps.

Generic integration tiles for email, sheets, chat, CRM, automate, and webhook

No credit card required. Set up in under 60 seconds.

Connect & automate

Connect your favorite tools and automate everything

SplitForms works with the destinations you route to and the platforms you build on — from Slack and Sheets to WordPress, Shopify, and Next.js.

Connect your SplitForms form to Slack, Google Sheets, Mailchimp, Zapier and more

Trusted by indie teams and agencies shipping forms worldwide

PETAL/COKRAFT.DELINEAR-XBUILD.DEVSTUDIO 71MERIDIANFRAME&CO

Testimonials

Loved by developers shipping at every scale.

40 quotes on record — from indie hacks to agency migrations.

Common questions

Google Sheets questions.

View all FAQs
How does form to Google Sheets work in splitforms — do I need Apps Script or Zapier?

No to both. splitforms has a native Google Sheets integration on paid plans: Dashboard → Integrations → Google Sheets → choose the scope (one form or all forms) → sign in with Google. splitforms creates the spreadsheet itself and from then on every submission appends a new row in real time (within ~1 second), with no Apps Script to maintain and no Zapier task fees. Columns are created automatically from your field names, and writes don't count against any external task quota.

What plan includes the Google Sheets integration?

Google Sheets unlocks on Pro ($5/month) and above with no row caps, no per-write fees, and no time-based throttling beyond your monthly submission limit. Pro includes 5,000 submissions/month and unlimited forms; Pro ($5/month) raises submissions to 5,000/month, and the $59 3-year plan raises it further.

How do I enable form to Google Sheets and what permissions does it ask for?

Open the dashboard → Integrations → Google Sheets → Connect. The OAuth flow requests only Google's drive.file scope, which is non-sensitive: it grants access solely to files splitforms itself creates, never your existing spreadsheets or the rest of your Drive — that's why the consent screen is clean, with no 'Google hasn't verified this app' warning. After you sign in, splitforms creates the spreadsheet and starts appending rows; there is nothing else to configure. To revoke access at any time: Google Account → Security → Third-party apps → splitforms → Remove access, or disconnect from the splitforms dashboard.

What happens if I rename, reorder, or delete a column in the sheet?

Treat the splitforms-managed 'Submissions' tab as append-only. splitforms writes rows in its own recorded column order and rewrites the header row whenever a new form field needs a column — so a header you rename by hand can be overwritten, and manually inserting, deleting, or reordering columns can misalign future rows against the headers. If you want to sort, annotate, or restructure the data, do it on a second tab or spreadsheet that references the managed one. Nothing is ever lost either way: every submission stays saved on the splitforms side and visible in the dashboard regardless of what happens in the sheet.

Can I send only certain submissions to the sheet, or send different forms to different sheets?

Different forms to different sheets: yes. Connect Google Sheets with no form selected and every form on your account writes to one shared spreadsheet; connect it scoped to a specific form and that form gets its own dedicated spreadsheet instead — a form with its own sheet never double-writes into the account-wide one. Filtering which submissions get written (e.g. 'only append rows where source = careers') isn't supported today — every submission on a connected form becomes a row. If you need conditional routing, point a signed splitforms webhook at your own endpoint (or a Zapier filter step) and write to the Sheets API from there.

Simple pricing

Start free. Scale when you need more.

Choose a plan that fits your workflow — from a free form endpoint to full automations, exports, and higher submission limits.

Free

$0

Free forever

 
Best for testing

For side projects and indie devs.

  • 500 submissions / mo
  • Unlimited forms
  • Email notifications included
  • Honeypot spam filtering
  • Submissions dashboard
  • MCP setup stays free
  • No credit card required

3-Year

$59/ 36 months
was $99 · save 40% · new-user price

Pay $59. 3 years sorted.

  • 15,000 submissions / mo
  • Unlimited forms
  • Everything in Pro
  • Renews every 3 years
  • Long-term discount
  • Priority support included
  • Vote on the roadmap

No credit card required on Free • Cancel anytime