Search documentation...


Google Sheets

Sync warehouse data to spreadsheets used by sales, ops, and marketing teams


With the Google Sheets integration, Hightouch can sync your spreadsheets with your data sources.

This allows you to:

  1. Share data in an easily accessible way across teams
  2. Work with your data with familiar spreadsheet tools

Hightouch allows you to connect to Google Sheets in two ways:

  • User OAuth: The User OAuth authentication method allows Hightouch edit access to any Google Sheet your user has access to. This is for organizations that do not allow users from other domains to be added to a Google Sheet.
  • Service Account: The Service Account authentication method provides fine-grained control over access to your data. You add a unique Hightouch service account as an editor user to specific sheets that you want to sync.

Setup via OAuth

Select the Google Sheets destination option. Hightouch will prompt you to authorize our app with your Google account with the following scopes:

After authorizing, you will have successfully connected Hightouch to Google Sheets.

Setup via service account

Setting up the Google Sheets destination via the service account method allows you to limit what files Hightouch can access, instead of allowing access to all of a user's files.

Select the Google Sheets (Service Account) destination option. Then, after successfully generating the service account, make note of the service account email.

To give Hightouch access to a certain spreadsheet, share the spreadsheet with the service account email with the "Editor" permissions.

You're all set. You'll be able to sync directly to the spreadsheets while keeping the rest of your data private.


The Google Sheets destination allows you to mirror your data to a spreadsheet. Hightouch does this by overwriting the entire contents of the selected sheet. Note: please ensure that you have no other data that is not intended to be overwritten on the sheet.

Sheet configuration

In Hightouch, select the name of the spreadsheet that you would like to sync to. If you don't see your spreadsheet here, make sure you authorized the right account or invited the Hightouch service account email to your spreadsheet, depending on your setup mode.

Select the sheet within the spreadsheet that you would like to sync to. For Google Sheets, Hightouch deletes all the contents of the spreadsheet and writes your entire query result into the spreadsheet for every sync.

Data format

Google Sheets accepts inputted data in two ways, raw or user entered.

  • Raw The values the user has entered will not be parsed and will be stored as-is. Keep in mind that Hightouch does some casting so numbers and dates may be sent as strings.
  • User Entered The values will be parsed as if the user typed them into the UI. Numbers will stay as numbers, but strings may be converted to numbers, dates, etc. following the same rules that are applied when entering text into a cell via the Google Sheets UI.

Be sure your spreadsheet and sheet names do NOT contain any colons. Google Sheets is unable to parse names that contain colons.

Selecting a data range

Hightouch supports selecting a manual range in your Google Sheets that will be mirrored. This allows users to preserve formulas or notes in the margins of their spreadsheets.

To use a manual range enter a range into the Custom Cell Range input in the format A1:Z1000. If this field is left blank the entire spreadsheet will be mirrored.

If you are inserting null values using the Raw data format, these will not register as blank fields. Keep this in mind if you are using formulas that are looking for null values.

If you wish for your formulas to use null values, make sure you use the User Entered data format.

For more information, read the Google documentation.


Can't find sheet that originated from an Excel file upload

You may have trouble finding and updating that Google Sheet that was originally uploaded as an Excel file to Google Drive. If you are the owner of the file, but are unable to find the spreadsheet that you want to update in our drop-down, validate that it's not still an .XLS or .XLSX file. You can see this in the Google Sheets UI.

If this is the case, our integration will not be able to update this file. You'll need to convert it to a proper Google Sheets file. Go to File > Save as Google Sheets. Once that file is converted to Google sheet, it will become available in the drop-down selector in the Sync Configuration. Pro-tip: You may need to hit the refresh button next to the drop-down selector for spreadsheets after you convert it.

    Need help?

    Our team is relentlessly focused on your success. We're ready to jump on a call to help unblock you.

    • Connection issues with your data warehouse?
    • Confusing API responses from destination systems?
    • Unsupported destination objects or modes?
    • Help with complex SQL queries?

    Feature Requests?

    If you see something that's missing from our app, let us know and we'll work with you to build it!

    We want to hear your suggestions for new sources, destinations, and other features that would help you activate your data.

On this page

OverviewSetup via OAuthSetup via service accountSyncingSheet configurationData formatSelecting a data rangeTroubleshootingCan't find sheet that originated from an Excel file upload

Was this page helpful?