How to Export Responses from Typeform to Google Sheets Manually, Automatically, and on a Schedule
The instructions provided in this article are sufficient for creating an automated Coda to Google Sheets integration. But please note that we are not responsible for the outcome if you use the instructions incorrectly, specify incorrect settings, or if there are changes in the app’s API. If you need help with the setup, we can offer this premium integration at an additional fee.
What do you use Typeform for in your project? Use cases may include customer onboarding, collecting feedback, and many other customer success purposes. For example, at Coupler.io, we use Typeform to learn which data integrations our clients would like to have in addition to the existing ones. Another form collects users’ feedback about our product. The results of this survey are then exported to Google Sheets for further analysis. In this blog post, we’ll explain how we do this and show other options for exporting results from Typeform.
How you can connect Typeform to Google Sheets
So, to connect Typeform to Google Sheets, you need to install Python and follow the instructions below. 😉 That’s a joke of course! No coding skills are required. We’ll check out three ways to do it:
- Native integration
- Third-party integration
- Manual export of Typeform responses in CSV or Excel
Which Typeform to Google Sheets integration will work for me?
The native Typeform Google Sheets integration will export results to your spreadsheet with every new record you get. This means that every time someone completes your form, the spreadsheet will be updated.
Who should consider it?
This integration may be praised by those who need to build further automation using the data. Examples may include pushing data to a mailing software for action or creating a ticket in your support system based on the Typeform responses.
The third-party option (using Coupler.io) is also automated, but it can export all data (not only responses) from Typeform to Google Sheets on a custom schedule – for example, every Tuesday at 6 p.m.
Who should consider it?
This option is more suitable if you want to:
- have a backup version of all your responses stored in a tabular format.
- create a reporting spreadsheet/dashboard based on the responses so you can be sure that you always have the latest version of all your responses in Google Sheets.
The final option, manual export of Typeform responses in CSV or Excel, is fine for one-time data export rather than frequent ones.
Pick the one that fits your project best!
Native Typeform to Google Sheets integration
Go to the Typeform you want to export the results from to Google Sheets, and click “Apps“.

Note: Instead of the “Apps” tab, you may see “Integrate”, like this in the free trial version of Typeform:

On the next page, click the “Connect” button associated with Google Sheets.

Then you’ll need to log in to your Google account and grant Typeform access to it.

Once you’ve connected, select where to send the Typeform results – use an existing spreadsheet or create a new one.
Let’s create a new spreadsheet right from Typeform. To do this, click “Create new sheet” => enter the name of your spreadsheet => click “Create sheet“. The last step is to activate the integration – click the button. If your typeform already has some responses, the integration will ask whether you want to send them to your spreadsheet right away. Click “Yes, send them” if you do.

Your Typeform to Google Sheets integration is ready. You can check out the results exported to the spreadsheet by clicking “View your spreadsheet“.

Now, every new response to your Typeform will be automatically exported as a new row in your spreadsheet. If you want to pause the export, toggle off the integration. Here is how the spreadsheet will look:

Save entries from multiple Typeforms to the same Google Sheets spreadsheet
Once you’ve set up the integration, you can connect other Typeforms to the same spreadsheet for exporting results. Repeat the initial steps as above: go to your form => Apps (Integration) => Connect. You’ll get a notification that you have a connection to Google account, and you’ll need to choose which one (if there are several).

Then, instead of creating a new sheet, you’ll need to click the “Use existing” button and insert the URL of your spreadsheet.

Click “Connect to spreadsheet” and then “Activate integration“. Typeform will ask again whether you want to send the available results to your spreadsheet right away. Let’s confirm and go to the spreadsheet to see how it looks now:

The results from the second Typeform have been added to a separate sheet within the spreadsheet. This will also happen to any other forms that you connect.
Can I save entries from multiple Typeforms to the same sheet?
The more interesting case is when you have multiple typeforms with the same questions. You will definitely collect their responses separately, but you will also need to combine them all together. Why? This will let you see who is your regular customer and build high-level analytics.
Doing this with the native Typeform – GSheets integration is not possible since every form can be connected to a single sheet. But you can use the Google Sheets importer by Coupler.io, which we’ll introduce later. It will let you import data from multiple sheets having the same structure to one sheet. Optionally, you can even define a pattern to import data from the expected sheets that will be created for your future Typeform surveys.
Possible errors when you export Typeform to Google Sheets
In the Typeform community, we found a case of an outage when users could not connect their forms to Google Sheets. The process was broken and returned an error. This issue affected some users, but Typeform has already fixed the problem. Sometimes issues can happen, and even if they can be fixed, we suggest you have a backup.
Automate Typeform to Google Sheets on a schedule
We will use Coupler.io to connect Typeform to Google Sheets. It’s a solution for importing data from various apps and sources to Google Sheets and BigQuery. Coupler.io provides several ready-to-use integrations, such as Slack, Pipedrive, Shopify, etc. Typeform is not on this list yet, but we can set up a custom integration with the Typeform API using the JSON Client.
Sign in to Coupler.io (it provides a free 14-day trial that you can use for testing) and click Add importer.

Name it whatever you want and complete three steps:
- Set up Source
- Set up Destination
- Set up Schedule
Set up Source
- Select JSON Client as the source application. Click Continue.
- Insert the following JSON URL:
https://api.typeform.com/forms/{form_id}/responses
{form_id}
– replace with the ID of your form. You can find it in the URL.

Click Continue.
- Insert the following string in the HTTP headers field:
Authorization: Bearer {your_access_token}
{your_access_token}
– replace with your personal access token. Check out how to get an access token in Typeform.
Click Proceed to Destination Settings.

Set up Destination
- Select Google Sheets as the destination application. Click Continue.
- Connect your Google account – click Connect and log in to your account. Click Continue.
- Choose the spreadsheet and the sheet to export data to. Click Continue.
- In the next steps, you can specify the first cell to import your data range to, as well as the import mode – replace or append. Click Continue.

Set up Schedule
Customize the frequency for export automation from Typeform to Google Sheets.

When all the settings are configured, click Save and Run. Here is how the Typeform results exported to Google Sheets with Coupler.io will look:

Coupler.io will pull much more detailed information. If you do not need so many columns, you can filter out the required data using either FILTER or QUERY functions in Google Sheets – check out the respective blog posts we have on the blog.
Retrieve more than 25 rows from the Typeform API
We know that we have 105 responses in the form, but the exported results only have 25 rows. This is the default page size limit of the Typeform API. To get more than this value, use the page_size
parameter in the “URL query string” field – for example:
page_size: 1000

Now everything looks good.
Note: If you need to export more than 1,000 rows (maximum value) from Typeform, use the following query parameters, which will let you narrow the scope of the requested data:
since
– the requested data will be limited to responses submitted since the specified date and time in the format yyyy-mm-ddThh:mm:ss. For example:
since: 2020-11-23T14:23:01
before
– the requested data will be limited to responses submitted before the specified date and time in the format yyyy-mm-ddThh:mm:ss. For example:
before: 2020-11-23T14:23:01
until
– the requested data will be limited to responses submitted before the specified token. For example:
until: m1ip6qj6rj2ev2oiyqivm1ipuf08ny5i
after
– the requested data will be limited to responses submitted after the specified token. For example:
after: m1ip6qj6rj2ev2oiyqivm1ipuf08ny5i
How to get a personal access token in Typeform
Fortunately, obtaining an access token for the Typeform API is a breeze. Log in to your Typeform account and complete the following steps:
- Go to the account settings. You’ll find them in the drop-down menu of your profile photo.

- Click the Personal tokens tab in the left menu.

- Click “Generate a new token“.

- You’ll need to name your token and choose scopes. After that, click “Generate token“.

Tada! Here is your Typeform personal token, which you can use for connecting to the API.

Export other data from Typeform to Google Sheets
With Coupler.io, you can retrieve not only responses from Typeform to Google Sheets, but also:
https://api.typeform.com/{endpoint}
Data entity | {endpoint} | URL query string |
---|---|---|
Own user information | .../me | |
List of forms | ../forms | workspace_id:{workspace-id} |
Details of a form | ../forms/{form-ID} | |
Insights of a form | .../insights/{form-ID)/summary | |
Custom form messages | ../forms/{form-ID}/messages | |
List of workspaces | .../workspaces | page_size:{10-to-200} |
List of workspaces you have access to within the specific account. | .../accounts/{account_id}/workspaces | page_size:{10-to-200} |
Details of a workspace | .../workspaces/{workspace-ID} |
Another option for how you can export Typeform results to Google Sheets
Setting up integrations may not be what you need, as your exporting purpose is going to be a one-time action. In this case, Typeform offers an actionable solution that will download all your typeform responses as a CSV or Excel file to your device.
You need to go to the “Results” of your typeform and click the “Reponses” tab.

Next, click the “Download all responses” button and choose the file format to download – CSV or Excel. Both of them can later be uploaded to Google Sheets.

Click “Download” to download the file to your device. Then you can upload it to Google Sheets. If you need assistance, here are the guides on how to:
That’s it! We hope that you will choose the best option for getting data from Typeform to Google Sheets that suits your purposes. Good luck!
Back to Blog