Docs & Support

Learn about all the Formidable features and get support from our amazing customer success team.

Add-onsOther Add Ons
Google Sheets Forms

Google Sheets Forms

Send your Formidable Forms data to Google Sheets when a user submits the form on your site. Each form has its own Google Sheets, and the data is added to the selected sheet as a new row.

Download and Install

To access this add-on, ensure you have the Business license or above.
  1. If you haven't already, install and activate the current version of Formidable Forms Premium on your WordPress site.
  2. After confirming your Formidable Forms license, proceed to the Formidable → Add-Ons page and toggle on the WordPress Google Sheets plugin.
    Install the Google Sheets add-on

Formidable Forms makes advanced site building simple. Launch forms, directories, dashboards, and custom WordPress apps faster than ever before.

Set up Google API Integration

Step 1: Create Google API project

  1. Go to the Google Cloud Platform Console. Select an existing project or create a new project.
  2. After opening the project, it will redirect you to the APIs & Services dashboard. Or you can click the menu icon at the top left corner of the screen and select APIs & Services.
    Google Sheets - API Services
  3. Click + Enable APIS and Services.
    Google Sheets - Enable API Services
  4. Search for the following APIs in the Library and enable each by clicking the Enable button.
    • Google Sheets API
    • Google Drive API

    Google Sheets - Search API Services

  1. After enabling all the required APIs, go to APIs & Services → OAuth Consent Screen.
    Google Sheets - Oauth Consent Screen
  2. Select External as the User type. Click the Create button.
    Google Sheets - Oauth Consent External
  3. Under App information, add an Application Name and User support email.
    Google Sheets - Oauth App Information
  4. Under the App domain, add a Website URL as your Application home page.
    Google Sheets - Oauth App Domain
  5. Add an Authorized Domain.
    Google Sheets - Oauth Authorized Domains
  6. Under Developer contact information, add an email address in the field. Click the Save and continue button at the bottom of the page.
    Google Sheets - Oauth Developer Contact
  7. Under Scopes, click the Save and continue button at the bottom of the page.
    Google Sheets - Oauth Scope
  8. Under Test Users, click the Add Users button and insert the email address of the test user associated with a Google account. Your app will start in testing mode and will only be available to users you add to the list of test users. Click the Save and continue button at the bottom of the page.
    Google Sheets - Oauth Test Users
  9. Under Summary, click the Back to Dashboard button at the bottom of the page to redirect you to the newly created app.
    Google Sheets - Oauth Summary

Step 3: Get OAuth Client ID

  1. Go to APIs & Services → Credentials. Click Create Credentials and select OAuth Client ID from the dropdown to generate the keys.
    Google Sheets - Create Credentials
  2. Select the Web Application from the Application type dropdown.
    Google Sheets - Oauth Application Type
  3. Use your website URL as the Authorized redirect URI in this field. Be sure to include the trailing slash at the end of your URL.
    Google Sheets - Oauth Authorized Redirect URI
  4. Click the Create button.
  5. In the popup window, copy your Client ID and Client Secret keys.
    Google Sheets - Oauth Client ID Secret

Step 4: Save project keys in settings

  1. After generating the project keys, go to Formidable → Global Settings → Google Sheets tab.
  2. Paste your Client ID and Client Secret ID on this page.
    Google Sheets - Global Settings
  3. Click the Authorize button to complete the connection.

Create a Google Sheets Form

Now that you have added the project keys to your Formidable settings, it is time to create your Google Sheets form.

  1. First, create a form in the same way as other Formidable Forms.
    Create Google Sheets Form
  2. Go to your form Settings → Actions & Notifications and click the Google Sheets icon.Google Sheets Form Action Icon
  3. Give your Google Sheets action an Action Name for easy reference. This name will only be seen in the back end.
    Google Sheets Form Action
  4. Choose when this action should be triggered: Entry is created, Entry is imported.
  5. In the Select File dropdown, choose the Google Sheets file where you want to send the form data. Add a column header in the selected Google Sheet to map your form fields to those headers.
  6. If you have multiple sheets in your file, you can choose which sheet the form data should go to in the Select Sheet dropdown.
  7. Under the Map Sheet Headers section, map your form fields to the sheet headers.
  8. Click the Update button to save your settings.

Send existing entries

If you have existing entries in your form, click the Send existing entries button to append all the existing form entries to the selected Google sheet. To avoid errors, remember to map the sheet headers to form fields before sending the data.
Google Sheets - Send Existing Entries

Note: Proceed with caution when performing this action, as it will export all existing entries to the selected Google sheet and may cause duplication.

Limitations

  • The Google Sheets add-on doesn't currently support two-way sync. The information is synced one way from Formidable to Google Sheets.
  • The Google Sheets actions do not currently support Excel and Open Document spreadsheet files.
  • The Google Sheets add-on is set to trigger actions when a new entry is created or imported. Currently, it does not support updating rows when an entry is modified within Formidable.

Troubleshooting

Missing sheet in form action

If you are experiencing issues where a specific sheet does not appear in your list, it may need the correct mime type. If you upload an Excel file to Google Drive or an Open Document spreadsheet file, the mime type must be changed to the Google Sheets mime type. To resolve this issue, follow the steps below.

  1. Identify if the file has the correct mime type. If you see a big green .XLSX tag next to the file name, it must be changed. If you select this tag, it will show it as an Office-formatted file.
    Google Sheets - Incorrect mime type
  2. To change the mime type, go to File → Save as Google Sheets.
    Google Sheets - Change mime type

Redirect URI mismatch

If you see the error message Error 400: redirect_uri_mismatch, you might have incorrectly entered the redirect URI in your OAuth Client ID settings. Be sure to include the trailing slash at the end of your URI.
Google Sheets - Redirect URI mismatch

Google app verification error

If you see the error message Google hasn’t verified this app, you might have published the app, which can cause issues with the Google Sheets API. Publishing your app will require submitting it to Google for verification. If you do not verify your app, it will be identified to users by its redirect location or client data. To resolve this error, you can unpublish the app by following the steps below:

    1. Go back to APIs & Services → OAuth Consent Screen.
    2. Click the Back to Testing button, and it will prompt you to confirm this action.
    3. If you haven’t yet, ensure you have added the email address with access to the Google Sheet as a test user.

Unable to parse range

If you encounter the Unable to parse range error, this message often occurs when you have renamed a worksheet in your Google Sheets. To resolve the error, follow these steps:

  • Clear your cache: Your browser might still hold the old references. Clearing your cache can help it recognize the updated worksheet name.
  • Re-map the form action: If the error persists, you may need to re-map the Google Sheets form action referencing the renamed worksheet. It involves manually updating the Select Sheet dropdown within the form action.

Connection issues with Google Sheets API

Follow these steps to troubleshoot common issues when integrating Google Sheets with your site. These issues could be related to authentication tokens expiring or being invalidated, or they may arise due to caching or security settings affecting the API connection.

  1. Verify that the email used for connecting to Google Sheets matches the administrator email in the Formidable settings of your site. Refer to this guide for more information.
  2. Check for security and cache plugins or settings that might interfere with the API connection. To troubleshoot these issues, temporarily disable any security or caching plugins. If you're using external caching services like Cloudflare, switch to Developer mode for testing purposes.
  3. If your Google app is still in testing mode, authorization may expire after seven days. To ensure uninterrupted access, follow these steps:
    • Check the current OAuth Client Status of your app.
    • Confirm that your app is published and not in testing mode.
    • If applicable, ensure that any received refresh tokens received are valid and have not expired.
Was this article helpful? *

This article may contain affiliate links. Once in a while, we earn commissions from those links. But we only recommend products we like, with or without commissions.

In this article

    We have a small, but amazing team of dedicated people who are committed to helping you achieve your goals and project requirements.


    Copyright © 2025 Strategy11, LLC. Formidable Forms® is a registered trademark Strategy11, LLC.

    Join 400,000+ using Formidable Forms to create form-focused solutions fast. Get Formidable Forms