Google Sheets
The Google Sheets integration appends a new row to a spreadsheet every time your form receives a submission. No code, no Zapier, no middleware.
Each row includes submission metadata and all submitted field values. Deliveries are async and retried automatically if Google is temporarily unavailable.
Plan availability
| Plan | Google Sheets destinations per form |
|---|---|
| Free | Not available |
| Starter | 1 |
| Pro | Unlimited |
See the pricing page for a full plan comparison.
Step 1: Connect your Google account
The Google connection is workspace-level. You connect once, then use it across all your forms.
Open Integrations settings
In the dashboard , go to Settings → Integrations.
Click Connect Google
Click Connect Google. You’ll be redirected to Google’s authorization screen.
Authorize access
Approve the permissions Formtorch requests:
| Permission | What it allows |
|---|---|
| Google Sheets — add submissions to selected spreadsheets | Formtorch can add rows only to the specific spreadsheet and sheet tab you choose |
| Google Drive — access only spreadsheets you choose | Access is limited to files you explicitly select through Google Picker — Formtorch cannot browse or access anything else in your Drive |
| Your email address | Identifies which Google account is connected in the dashboard |
After approving, you’ll be redirected back to the integrations page. See the Privacy Policy for how this data is used.
The Google account you connect doesn’t need to match the email you use to sign in to Formtorch — any Google account works, as long as it has access to the spreadsheets you want to use.
That’s it. Your Google account is connected. You can now add Google Sheets destinations to any form.
Step 2: Add a destination to a form
Each form can send to one or more spreadsheets. A destination is a specific sheet tab inside a specific spreadsheet.
Open your form’s Integrations tab
In the dashboard, open the form you want to connect. Click Integrations in the top navigation.
Add a destination
On the Google Sheets card, click Add Destination. This opens the Google Sheets destinations panel for the form. Click Add Destination again to start a new one.
Choose a spreadsheet
A picker lists the spreadsheets in your connected Google Drive. Choose the spreadsheet you want submissions to go to.
Choose a sheet tab
After selecting a spreadsheet, choose the sheet tab (the named tab at the bottom of the spreadsheet). Formtorch will append rows to that tab.
Add the destination
Click Add Destination. Formtorch begins delivering submissions immediately.
You can add multiple destinations on Pro. Each destination delivers independently — a failure on one sheet does not block others.
Row format
Each new submission appends one row. The column layout is:
| Column | Value |
|---|---|
submittedAt | ISO 8601 timestamp (UTC) |
submissionId | Formtorch submission ID |
formId | Formtorch form ID |
formName | Form display name |
isTest | true or false |
isSuspicious | true or false |
| (your fields) | One column per submitted field, alphabetically sorted |
Nested objects are flattened with _ as a separator. For example, { "address": { "city": "New York" } } becomes a column named address_city. Underscores in field names are escaped to __ to prevent collisions.
Values are stored as plain text — Google does not evaluate them as formulas, so inputs starting with =, +, or @ are safe.
What gets skipped
Formtorch does not append a row for:
- Spam submissions: detected by TorchWarden and suppressed before delivery
- Test submissions: submitted with
_test=true - Over-quota submissions: stored locked and delivered after a plan upgrade
Suspicious submissions (flagged but not definitively spam) are delivered normally — consistent with how email notifications and webhooks behave.
Delivery status
Google Sheets deliveries use the same async pipeline as webhooks and email notifications. Each delivery is tracked individually.
To check delivery status for a submission:
- Open the submission in the dashboard.
- Look at the Integrations section. It shows the delivery status for each Google Sheets destination.
If a delivery fails, Formtorch retries automatically. After 6 attempts (1 initial plus 5 retries), the delivery is marked permanently failed.
Common transient failures (Google rate limits, temporary outages) are retried automatically. Permanent failures (spreadsheet deleted, permissions removed) stop retrying immediately.
What happens if you downgrade
The Google Sheets cap is per form, not workspace-wide. If a downgrade puts one of your forms over its new limit, Formtorch keeps that form’s oldest destination active and automatically pauses the rest on that form; other forms are unaffected unless they’re also over the new cap. Downgrading to Free pauses every destination, on every form.
Nothing is deleted: paused destinations stay configured, and upgrading again restores them.
If rows stop appearing after a downgrade, check that form’s Integrations page: the destination may have been auto-paused rather than broken.
Reconnecting after access is revoked
Google can revoke your connection if you remove Formtorch from your Google account, change your password, or your token expires.
When this happens:
- Settings → Integrations shows a warning and a Reconnect button on the Google row.
- Each affected destination shows an Error badge with a link to reconnect.
Click Reconnect and complete the OAuth flow again. This restores the workspace connection, but it does not automatically clear destinations already marked Error — remove those and add them again to resume delivery.
Disconnecting
To disconnect your Google account, go to Settings → Integrations and click Disconnect on the Google row.
Disconnecting does not delete your form destinations. But any submissions received while disconnected will fail to deliver, and the affected destination will be marked Error — you’ll need to remove it and add it again after reconnecting.
Disconnecting revokes Google access immediately. Deliveries already queued when you disconnect will fail rather than being cancelled.
Troubleshooting
No rows are appearing in my sheet
Check the delivery status on the submission in the dashboard. If it shows an error, the most common causes are:
- The spreadsheet was deleted or moved to Trash.
- You removed Formtorch’s access in Google account settings.
- The sheet tab was renamed or deleted after the destination was created.
Rows are duplicated
In rare cases where a network timeout occurs after a row is written but before Formtorch records the success, the next retry will write a duplicate. Each row includes submissionId so you can identify and remove duplicates.
I can’t see my spreadsheet in the picker
The picker lists spreadsheets from your connected Google account’s Drive. If a spreadsheet is in a shared drive you don’t own, it may not appear. Create the spreadsheet under your own account and use that instead.
I need to send to a different Google account
Go to Settings → Integrations, disconnect the current account, then reconnect with the Google account you want to use.