Formclick

How to Connect HTML Forms to Google Sheets

Send every HTML form submission to a Google Sheet automatically — no Apps Script, no Zapier. Plus the Apps Script method explained, and tips for clean, reportable data.

FFormclick Team3 min read
Focused business analysis with charts and graphs on a laptop in a modern office setting.
Photo by RDNE Stock project on Pexels
On this page
  1. Method 1: A built-in Google Sheets integration (easiest)
  2. Method 2: Google Apps Script (free, more work)
  3. Method 3: Automation tools (Zapier, Make, n8n)
  4. Which method should you choose?
  5. Tips for spreadsheet-friendly forms

Google Sheets is the easiest shared database most teams have. Sales can sort leads, support can track requests, and anyone can build a quick chart. So it's natural to want your website's form submissions to land there automatically — one row per submission.

There are three ways to do it. We'll cover each, starting with the simplest.

Method 1: A built-in Google Sheets integration (easiest)

With a form backend that has a native Sheets integration, you connect your Google account once and every new submission is added as a new row. No code, no scripts to maintain.

Step 1: Point your form at Formclick

<form action="https://api.formclick.io/submit" method="POST">
  <input type="hidden" name="access_key" value="YOUR_ACCESS_KEY">
  <input type="checkbox" name="botcheck" style="display: none;">

  <label for="name">Name</label>
  <input id="name" name="name" required>

  <label for="email">Email</label>
  <input id="email" name="email" type="email" required>

  <label for="company">Company</label>
  <input id="company" name="company">

  <label for="interest">Interested in</label>
  <select id="interest" name="interest">
    <option>Starter</option>
    <option>Pro</option>
    <option>Business</option>
  </select>

  <button type="submit">Request a demo</button>
</form>

Step 2: Connect Google Sheets

  1. Open your form in the Formclick dashboard and go to Integrations.
  2. Choose Google Sheets and sign in with Google.
  3. Pick the spreadsheet that should receive submissions.
  4. Send a test submission — it appears as a new row.

The Google Sheets integration is available on Pro plans. Submissions are still emailed to you and stored in your dashboard, so the sheet isn't your only copy.

Method 2: Google Apps Script (free, more work)

You can write a small Apps Script web app that receives a POST and appends a row. It's free, but you maintain it yourself.

// In your Google Sheet: Extensions → Apps Script
function doPost(e) {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Submissions');
  const data = e.parameter;
  sheet.appendRow([new Date(), data.name, data.email, data.message]);
  return ContentService
    .createTextOutput(JSON.stringify({ success: true }))
    .setMimeType(ContentService.MimeType.JSON);
}

Deploy it as a web app, set access to "Anyone", and use the deployment URL as your form's action. The downsides:

  • No spam protection — the URL is public and anyone can post junk into your sheet.
  • No email notifications unless you script them too.
  • Hard-coded columns — every new form field means editing the script and redeploying.
  • Quotas and redirects — Apps Script has execution limits, and its responses don't redirect visitors nicely.

Method 3: Automation tools (Zapier, Make, n8n)

Send submissions to an automation tool with a webhook, then add a "Create spreadsheet row" step. This is flexible — you can also add the person to a CRM or post to Slack in the same flow — but it's another service to pay for and maintain. Formclick supports custom webhooks on paid plans and has a native n8n integration.

Which method should you choose?

Built-in integration Apps Script Automation tool
Setup time Minutes An hour+ 15–30 minutes
Code to maintain None Yes None
Spam protection Yes No Depends on source
Email notifications Yes DIY Extra step
Extra cost Pro plan Free Tool subscription

Tips for spreadsheet-friendly forms

  • Use clear, stable field names — company_size makes a better column header than field3.
  • Prefer dropdowns and radios over free text where you'll want to filter or count.
  • Add hidden context fields such as source or page to see where leads came from.
  • Use standard formats — type="date" submits YYYY-MM-DD, which Sheets sorts correctly.
  • Don't edit the header row after connecting; add new columns at the end instead.

Want more destinations? Formclick also connects to Notion, Airtable, monday.com and databases — see all integrations, or read How to Receive HTML Form Submissions Online.

Found this useful? Share it.

All articles