splitforms.com
INTEGRATION · SPREADSHEETS

Send Form Submissions to Google Sheets — splitforms

Auto-append every form submission as a row in Google Sheets.

Use a Google Apps Script web app or Zapier as a thin glue layer and every splitforms submission becomes a new row in your sheet — append-only, timestamped, no manual export.

Delivery mode: Outbound webhook

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

How to set up Google Sheets with splitforms

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

  1. Create or open the Google Sheet where rows should land. Add a header row with one column per form field (e.g. timestamp, name, email, message).

  2. Open Extensions → Apps Script. Paste a small doPost() handler that reads the splitforms JSON body and appends a row to the active sheet, then deploy it as a Web App with 'Anyone' access.

  3. Copy the Web App URL. In splitforms, open your form's Webhooks tab and paste it as the destination.

  4. Submit a test entry. A new row should land in the sheet immediately. Open the Apps Script execution log if it doesn't, to debug column ordering.

  5. Optional: use named columns and look up by header in the Apps Script handler to make the script tolerant of new fields you add to the form later.

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="google-sheets" />
  <input type="email" name="email" placeholder="you@example.com" required />
  <textarea name="message" placeholder="Your message" required></textarea>
  <button type="submit">Send to Google Sheets</button>
</form>

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

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

Who uses splitforms + Google Sheets

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

Why splitforms for Google Sheets?

Zapier's Google Sheets connector starts at $20/mo above the free tier; the Apps Script route is free. splitforms is free for 1,000 submissions per month, $5/mo on Pro, or $59 for a 4-year plan (15,000 submissions/month, 48 months of access). No per-integration add-on fees.

Frequently asked questions

Why a script — why not a native Sheets integration?

splitforms ships outbound webhooks rather than a native Google Sheets API integration, because Google's quotas, OAuth refresh tokens, and per-user authorisation make 'native' Sheets integrations brittle in practice. A 15-line Apps Script web app sidesteps all of that and runs on Google's own infrastructure under your account.

Can I do this without writing any code?

Yes — use the splitforms-to-Zapier integration (also documented at /integrations/zapier) and pipe submissions through Zapier's 'Add row to Google Sheets' action. The trade-off is that Zapier costs $20/mo above their free tier, while the Apps Script approach is free.

Will the spreadsheet slow down at high volume?

Google Sheets handles tens of thousands of rows fine. If you expect more than ~50,000 submissions in a single sheet, archive older rows into a second sheet on a weekly cron. The Apps Script execution time matters more than sheet size.

Can the sheet be shared with my team?

Yes — share the sheet using Google Sheets' normal sharing controls. The Apps Script web app runs under your account regardless of who else has the sheet open, so sharing doesn't affect the row-append logic.

Is this safe to expose as a public webhook?

The Apps Script web app URL is unguessable and not enumerable, but it is technically callable by anyone with the URL. For higher security, validate the splitforms HMAC signature inside the doPost handler — splitforms includes one in every webhook request.

Does this require Pro?

No. Outbound webhooks (and therefore the Sheets integration) are available on the splitforms free plan with 1,000 submissions per month.

Connect Google Sheets in 60 seconds.

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

Start free Browse all integrations