Google Sheets integration
Append Formkove submissions to a Google Sheet automatically. This is a Pro and Agency feature.
How It Works
Section titled “How It Works”Formkove connects to Google Sheets through a Google Apps Script that you deploy to your Google account. When a submission comes in, Formkove sends the data to your script’s URL, which writes it to your spreadsheet.
This approach keeps your data in your own Google account — no third-party access required.
1. Create the Apps Script Project
Section titled “1. Create the Apps Script Project”- Open the Google Sheet you want submissions in, then go to Extensions → Apps Script
- Delete any placeholder code and paste this starter script (also shown in the Formkove dashboard):
function doPost(e) { const payload = JSON.parse(e.postData.contents || "{}"); const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
sheet.appendRow([ new Date(payload.created_at), payload.submission_id || "", payload.form_id || "", payload.form_name || "", JSON.stringify(payload.data) ]);
return ContentService .createTextOutput(JSON.stringify({ ok: true })) .setMimeType(ContentService.MimeType.JSON);}- Want one column per field? Replace
JSON.stringify(payload.data)with the fields you need, e.g.payload.data.name, payload.data.email. AI results are inpayload.ai(sentiment,tags,spam_score) when AI is on. - Click Deploy → New deployment
- Choose Web app as the deployment type
- Set Execute as to Me and Who has access to Anyone
- Click Deploy and copy the Web app URL (it looks like
https://script.google.com/macros/s/.../exec). Only/execURLs work;/devURLs are rejected.
2. Connect to Formkove
Section titled “2. Connect to Formkove”- Open app.formkove.com and select your form
- Go to Integrations → Google Sheets
- Paste your Apps Script web app URL
- Save
3. Test
Section titled “3. Test”Use the Send test button on the connection, or submit a real entry through your form. A new row should appear within a few seconds. Test rows have payload.test set to true.
Troubleshooting
Section titled “Troubleshooting”| Problem | Fix |
|---|---|
| No data appears | Check the script’s execution logs in the Apps Script editor |
| Authorization error | Redeploy the script and ensure access is set to Anyone |
| Wrong columns | Edit the appendRow([...]) list in your script, then create a new deployment version |