Skip to main content

Export to Google Sheets

Google Sheets Schedules allows you toautomatically export data from a reports or dashboards directly to Google Sheets.

This is useful when you need to push raw data from your database into a spreadsheet for further analysis or calculations.

Data Freshness

Check out Data Freshness for more details.

Set up Google Sheets Schedules

To set a Google Sheets schedule for a dashboard, in the dashboard view page, click on Export > Send to Google Sheets:

Navigating to 'Send to Google Sheets' from the dashboard export menu

You'll see the following form:

Google Sheets schedule modal
  • Title: Provide a name for your schedule
  • Spreadsheet: Select a spreadsheet to which you want to export data.
  • Controls (optional): Customize dashboard controls before sending each export. You can adjust Filters, Period Comparison, and Date Drill.
    • Changes made here will not affect the main dashboard.
    • You can only modify existing controls. New controls cannot be created.
  • Exported widget: Select the widget(s) and the worksheet page(s) that you want to export your widget to the spreadsheet. We support exporting multiple widgets in the same data delivery, and each widget must have its worksheet page
  • Frequency: Set the schedule interval (e.g., every X hours, daily, weekly, monthly, etc.)
  • Failure Recipient Email (optional): A comma-separated list of email addresses to receive notifications when the Google Sheets schedule fails to deliver, in addition to the schedule creator and the report/dashboard creator. Learn more in Notify Delivery Failures.
Note
  • For the first time you select a spreadsheet, the system will prompt you to authorize Holistics to get access to your Google Drive. The credential token is kept to keep the schedule running recurringly.
  • When authorizing, make sure that the account you use in the login popup is the account that you logged into in the Google Chrome browser.

Caveats

  • The maximum number of records that are pushed to Google Sheets is 15,000 per execution. This is a limit imposed to prevent timeout and over-exceeding quota on Google Sheets API.
  • At the moment, only the underlying data behind the charts/widgets will be exported. No charts or pivot tables will be exported.

FAQs

Will the entire Google Spreadsheet document (with multiple sheets) be overridden?

No. Each schedule will export data from a single chart widget into a single sheet in your spreadsheet document. The other sheets will remain intact.

How can I export more than 15000 rows on Google Sheet Export?

  • You can split your report result into smaller results using a filter. Then create multiple Google Sheet exports for each page.

  • Otherwise, please contact us via [email protected] to raise the Google sheet export limit for your Holistics account.

    Kindly specify the new limit you would like to have, and kindly note that higher limits might negatively affect the performance and reliability of the exporting. But we can still adjust later if there is any issue.

I face a “Google Authentication Permission Error”, what should I do?

If you encounter any permission issues (For example the forbidden: the caller does not have permission error which means you do not have permission to access the Google spreadsheet, The API developer key is invalid error or the OAuth flow fails with a 400 error stating the request is malformed and shouldn't be retried), please simply open the Edit schedule dialog and click refresh the token.

Note
  • You only need to refresh the token one time for all schedules created by one account.
  • Make sure that your browser is allowing third-party cookies. If you are using Chrome, you should be able to find the settings under chrome://settings/cookies.

Can other Holistics users use my Google authentication credentials?

We link the Google credential token only to your Holistics account and will not share the token with anyone. It means if your colleagues also have a Holistics account, they will not reuse your token but instead, they will need to go through the process of generating their own token.


Let us know what you think about this document :)