How to Export and Sync Asana Tasks to Google Sheets with Automated 2-Way Updates
This guide will walk you through the process of syncing Asana tasks to Google Sheets with automated 2-way updates. Once you set up the workflow outlined in this article, you’ll have a simple no-code integration that turns newly created Asana tasks (or historical tasks) into rows in your Google Sheet. One thing to keep in mind is that you’ll first need to set up a header row in your spreadsheet. Give each cell in the first row a name that you can easily associate with fields in Asana (e.g., title, description, tag, etc…).
You’ll then use Unito to create your 2-way integration and match fields in Asana with those cells in the first row. Then, when it’s ready to launch, you can watch as Asana task details automatically populate your spreadsheet in real-time. New to Unito? Here’s more information about this Asana Google Sheets integration.
Put simply, your spreadsheet rows will become tasks and your columns will become fields.
Although this guide demonstrates how to sync Asana tasks with Google Sheets, the same principles apply to other spreadsheet software and databases, including Microsoft Excel, Airtable or Smartsheet. You can also substitute Asana for a different project management tool, including Trello, ClickUp, monday.com, Favro, Teamwork, MeisterTask, Wrike and more.
Watch Unito’s 2-way Asana Google Sheets integration in action:
Why connect Asana and Google Sheets with Unito?
Syncing tasks to spreadsheet rows is especially helpful when you want to speed up the process of reviewing tasks from the uniformity and flexibility of a spreadsheet. You can build reports for stakeholders quickly and efficiently through simple automation. It’s also handy for reviewing budgets and expenses; resource management; and collaborating with external contractors, clients, or other contacts.
It’s also useful for sharing specific information about a task or project with an external contact without giving them full access to your Asana organization or workspace. You can even allow your external contact’s changes in Google Sheets to be automatically reflected in your Asana tasks with a 2-way sync.
Connecting Asana with Google Sheets with Unito enables you to:
- Create new rows in Google Sheets populated with details from your Asana tasks, including: title, assignee, due date, status, sections & columns, descriptions, tags, attachments, and custom fields.
- Create new Asana tasks based on Google Sheets rows with specified fields.

Before we build our connection between Asana and Google Sheets:
- Make sure you have an account in each tool with the right permissions to access and modify data. If you aren’t sure, head to app.asana.com and docs.google.com/spreadsheets to check.
- Install the Unito add-on for Google Sheets by following these steps (also detailed below).
- Set up header rows in Google Sheets: the first row of each sheet needs to clearly identify the data you’ll sync from Asana tasks.
Step 1. Prepare your table header in Google Sheets
Unito syncs fields in Asana to rows in Google Sheets based on the table header. So be sure to give each column a name that’s intuitive and relates to whatever field you’re syncing over from an Asana task. As an example, the Asana fields: Task Name or Status should probably be synced to a sheet column with the same, or similar names.
If you aren’t sure where to begin, we created this Google Sheets template you can use to get started. We also have a similar template for Microsoft Excel users.

Step 2. Install the Unito add-on to your Google Workspace
You can either get the add-on from the Google Workspace marketplace or go to docs.google.com, select Extensions > Add-ons > Get add-ons. Do a quick search for “Unito” and add the extension to your workspace using the on-screen instructions.
Select your Unito add-on, Get started with Unito > Insert the two columns in this sheet. Unito will automatically create a column named UnitoID at the beginning of your first row and one named Last Modified at the end of it.
Step 3. Connect Asana and Google Sheets to Unito
Open the Unito App and click +Create Flow. Then, Start Here to connect Asana and Google Sheets. In our demo, we’ll put Asana on the left-hand side, and Google Sheets on the right. You’ll need to specify which account for each tool you wish to connect with Unito, as well as the specific board and sheet you wish to sync.

When you’re ready, click Confirm.
Step 4. Set a 1-way flow direction from Asana to Google Sheets
Your data can sync either from only one app to the other, or bidirectionally. Flow direction determines how new rows are created but not modified in your spreadsheets. So if we choose a 1-way flow to Excel, that would mean adding any new rows in Google Sheets would add identical rows to your Excel spreadsheet, but not the other way around.`

NOTE: Here’s a breakdown of each option:
- One-way from Asana to Google Sheets: tasks created in your Asana project will appear as new rows in the connected sheet, but not vice versa. This is a great option for building reports on work performed in Asana from the flexibility of a Google Sheet.
- One-way from Google Sheets to Asana: Rows created in your connected sheet will appear as new Asana tasks, but not vice versa. This could be useful if you wanted to assign work from Google Sheets to users in Asana.
- Two-way sync: Any new sheet rows or tasks created in their respective tools will appear in the other (rows as tasks, and tasks as rows).
Click Confirm when you’ve chosen a flow direction.
Step 5. Set up rules to filter data between Asana and Google Sheets
Now we can choose rules that tell Unito when and which triggers will create new tasks in Asana and/or rows in Google Sheets. This step is only for row and task creation; if you choose a one-way flow here, you can still create a two-way sync for individual fields later on.
These triggers are intended to help you keep only the most relevant information in sync to avoid oversharing unnecessary details. There can be a lot of variability here that will depend on your particular needs and tool setup. By customizing your Asana tags, you can be even more precise about what kind of data is shared with Google Sheets.

For this demo, we’ve told the system to create a matching row in Google Sheets for every task in our Asana project with the tags: “Demo Tag 1” and “Demo Tag 2.” If you’re syncing tasks, you consider filtering rules by progress, opting for tag names such as: in progress, blocked, done, etc.

In order to sync new rows back to Asana, you’ll have to add a column in your spreadsheet. In our case, we named it “sync” but you can pick any name that’s intuitive to your use case. Then, simply add that field as a trigger with the option: “any value”. This mean that if you fill in that cell, a new task will appear in Asana.
Find out more about setting rules.
Step 6. Set up field mappings between Asana and Google Sheets
At this stage, you’ll be presented with two options: if you choose Auto-map, Unito will pre-populate a list of suggested field mappings which you can then adjust. If you prefer a DIY approach, Start from scratch. We recommend mapping fields from scratch for this particular flow.

When selecting your fields, you can break down the precise information you wish to sync by mapping them here. As mentioned above, each cell in your table header becomes a custom field that Unito can sync. You can then map those fields one-way or bi-directionally. In each case the flow direction functions as you might imagine:
- In a one-way field mapping, changes in the source tool affect the other but not vice versa.
- In a two-way field mapping, any change in Google Sheets or Asana will appear in the other.

After you’ve chosen a field in one tool, Unito will suggest compatible matches in the second tool when you click on the other drop-down menu. We recommend starting with Google Sheets, since there will be fewer fields to choose from.
Note: If you change a column name in a synced spreadsheet, be sure to update your flow’s field mappings in Unito or else your data will stop syncing.
Click Confirm when you’re satisfied with your field mappings to proceed.
Find out more about setting field mappings.
Step 7. Save, close, and launch your Asana – Google Sheets Flow!
And that’s it! Follow the remaining instructions to complete your flow and it should start syncing momentarily. Congratulations!
If you’ve followed the steps above, your flow will now create a row in Google Sheets whenever a new task is added in Asana based on the rules we set in Step 3.


If you have any questions, don’t hesitate to reach out and let us know.
What’s next after syncing Asana tasks to Google Sheets rows?
- Duplicate this flow to sync tasks from other projects to your Google Sheet.
- Got questions about this integration? Check out this pre-recorded Asana – Google Sheets webinar.
- Read our overviews of Asana and Google Sheets to better understand the capabilities and limitations of each integration.
- Connect Asana projects across orgs with this step-by-step guide.
- Attend a demo webinar to find out what else you can do with Unito.
Best practices and troubleshooting for Unito’s Google Sheets integration
Common error messages
If you see either of the error messages below, it likely indicates that one or both of the columns: “UnitoID” and “Last Modified” have been deleted or modified from your sheet. You’ll need to re-insert them (either manually or with the add-on) before your data will sync again.
“We’ve detected that mandatory columns have been removed from your Google Sheet. Let’s get you back up and running.”
“The container configuration does not allow us to sync.”
Getting around with Google Sheets and Unito
You can find more information on the following topics in Unito’s knowledge base: