Google Sheets Integration
Automatically sync form submissions to a Google spreadsheet
Static Forms has a built-in Google Sheets integration. Connect your Google account and every form submission is automatically appended as a new row in a spreadsheet — no Zapier, no Apps Script, no code.
Pro & Agency Feature
Google Sheets sync is available on the Pro and Agency plans (including their trials). The Starter plan includes plain HTTP webhooks, but not the OAuth data syncs. View plans to unlock it.
How It Works
- A dedicated spreadsheet is created in your Google Drive when you connect.
- Form field names become column headers automatically on the first submission.
- New form fields are added as new columns — existing data stays aligned.
- Each submission adds a row with submitted_at and submission_id meta-columns plus all form data.
- Errors are recorded and visible in the integration card — they never block the form submission itself.
Setup
Open the form's Delivery settings
Open the form in your dashboard, choose Delivery, and find the Google Sheets card.
Connect your Google account
Click Connect Google account. You will be redirected to Google to approve two scopes: drive.file, which lets Static Forms use only the files you create or open with it and gives no access to the rest of your Drive, and userinfo.email, which shows which Google account you connected.
Check the spreadsheet
After you approve, Static Forms creates a spreadsheet in your Google Drive titled Static Forms — (your form's name), or the form's delivery email if it has no name, with a Submissions tab. Click Open in Sheets on the card to open it. The card shows the Google account under Connected as. Rows start with the next submission.
Managing the Integration
Enable / Disable
Toggle the sync switch to pause or resume the form's own rows without disconnecting. Your spreadsheet and data stay intact. Form rules that send to Google Sheets keep adding rows while the switch is off, until you disconnect.
Send rows to another tab
Rows go to the Submissions tab by default, and a form rule can send rows to another tab of the same spreadsheet. If that tab does not exist when a submission is added, Static Forms creates it.
An AI agent with Manage integrations access can also change the default tab. Rows already written stay in the old tab. If the new tab does not exist, Static Forms creates it with the next row it adds.
Disconnect
Click Disconnect to remove the connection from Static Forms, including its stored tokens. Your spreadsheet remains in Google Drive. Disconnecting does not revoke Static Forms' access at Google; to do that, remove Static Forms at myaccount.google.com/permissions. Revoking removes every permission you gave Static Forms on that Google account: Sign in with Google, and every form connected to Google Sheets with that Google account, not only one. Those forms stop adding rows until they are connected again. You can still sign in with Google afterwards; Google asks for your consent again.
Per-Form Connections
Each form has its own Google Sheets connection. You can connect different Google accounts (or the same one) to different forms, each with its own spreadsheet.
Troubleshooting
Last error displayed
If a submission fails to sync, the error message and timestamp appear in the integration card. Common causes:
- Token expired / revoked — Disconnect and reconnect.
- Spreadsheet deleted — Disconnect and reconnect to create a new one.
Tab renamed or deleted
This does not show an error. The next submission recreates the tab under its configured name (Submissions by default) with a fresh header row. Rows already in a renamed tab stay there.
Missing columns
Columns are added dynamically. If a new form field appears after the first submission, it gets appended as a new column. Earlier rows will have blank cells for that column.









