How to export Asana to Excel, Google Sheets or CSV

Asana exports projects as CSV on every plan, including Personal. Open the project menu, choose Export or sync, then Project tasks CSV/XLSX, and pick XLSX for Excel: it keeps the long Task IDs and the dates intact. With a CSV, import Task ID as text.

The project tasks export leaves out comments and attachments, and tracked time is a separate file. Use the project export options for a spreadsheet, and compare direct importers if you need to move more of the project history.

Disclosure: We make Breeze, which is mentioned below as a migration option.

What do you click to export an Asana project?

The drop-down arrow next to the project's title, then Export or sync, then Project tasks CSV/XLSX. It is in the project's own menu, not in settings, and not in the admin console.

  1. Open the project in Asana.
  2. Click the drop-down arrow next to the project's name at the top of the page.
  3. Hover over Export or sync. Its Export section lists Project tasks CSV/XLSX and JSON, plus Time entries CSV on plans with time tracking. Older Asana help pages call this menu Export/Print.
  4. Choose Project tasks CSV/XLSX. A dialog asks for the format and which custom fields to include.
  5. For Excel, choose XLSX and Export. The workbook opens with Task IDs as text and dates as dates, the project name in row 1 and the headers in row 3.
  6. For a CSV, choose CSV instead. In Excel use Data, then From Text/CSV, choose Transform Data and set Task ID to Text before loading it.
  7. Save a working copy before adding formatting, and keep the original export untouched.
Asana project menu with Export or sync open, listing Project tasks CSV/XLSX, Time entries CSV and JSON
Export or sync splits into Export, for files, and Sync, for calendars and Google Sheets.
Asana's Export project tasks dialog with CSV and XLSX format options and a custom fields choice
The format choice comes after the menu. The recommended custom-fields option keeps the export to fields used in this project.

Large projects behave differently. Asana notes that the CSV is not downloaded immediately for big projects; a message says your CSV is being generated and you will get an email when it is finished, and the email contains a link to the file. If nothing downloads, check your inbox before exporting again.

Excel for the web works from OneDrive rather than your downloads folder. Upload a file on its start page puts the export there. An XLSX opens ready to edit. A CSV opens read-only, and switching to Editing converts it to a workbook, with the CSV kept as a backup, since a CSV cannot keep formatting, filters or formulas.

Why do Task IDs and dates break in Excel, and how do you fix them?

Only the CSV has this problem. Asana's XLSX stores each Task ID as text and each date as a date, so the 16-digit IDs arrive whole. From a CSV, Excel can interpret a long Task ID as a number and keep only its first 15 significant digits. Date columns may also be interpreted differently according to your locale. Importing with explicit column types avoids those problems.

Asana XLSX export open in Excel with the full 16-digit Task ID in column A and in the formula bar
From the XLSX, the full Task ID shows in the cell and the formula bar, and the date columns are real dates.

If you skipped the type settings during import, start again from the original CSV. Under Data, then From Text/CSV, choose Transform Data, set Task ID to Text and set the date columns to Date or Date/Time as appropriate. Check a few rows against Asana before using the report.

After that, the clean-up is the usual spreadsheet housekeeping, and it is worth doing before building a report.

  • Make it a table. Ctrl+T (Cmd+T on a Mac) gives every column a filter and keeps the header visible.
  • Separate subtasks from tasks. Filter Parent task for blanks to see only top-level tasks, or sort by it to group subtasks under their parents.
  • Tame the Notes column. Task descriptions arrive with their line breaks and make rows tall. Switch off Wrap Text for that column or move it to the far right.
  • Drop the empty custom fields. Hide, do not delete, any field column that is blank for most rows. You may want it back when the sheet is reused next month.
  • Build the pivot the export was for. Open tasks per section, tasks per assignee, and tasks past their due date are what most Asana exports exist to show. Insert, then PivotTable, with Section/Column as rows and Name as the count, is the first one.
  • Save as .xlsx. Keep the original CSV alongside it as the untouched copy.

What fields does the Asana CSV contain?

The export has one row per task, including subtasks. Columns describe the task, its dates and its assignee. The exact columns can vary with the project and its custom fields.

An export of a ten-task sample project with no custom fields had these columns: Task ID, Created At, Completed At, Last Modified, Name, Section/Column, Assignee, Assignee Email, Start Date, Due Date, Tags, Notes, Projects, Parent task, Blocked By (Dependencies) and Blocking (Dependencies). Custom fields add a column each. Check three columns before building the report:

  • Parent task is how subtasks arrive. Subtasks are rows of their own, tied to their parent only by the parent's name. There is no parent ID, which forum users have been asking for, so two tasks with the same name make the relationship ambiguous.
  • Section/Column is your board. It holds the section or board column each task sits in, which is what you filter on to rebuild the board view as a spreadsheet.
  • Completed At doubles as status. An open task has nothing in it. Filter the column for blanks and you have the live work.

Custom fields can make the export wide. Hide fields you do not need for the report while retaining an untouched copy of the file.

What the standard project CSV leaves out

  • Comments. There is no comments column, and nothing in the export carries the discussion on a task. If the history matters, it stays in Asana.
  • Attachments. A CSV cannot carry files, and the export does not list them either.
  • Tracked time. Individual time entries are not in the project tasks file. On plans with time tracking, Time entries CSV in the same submenu exports them separately, and a complete export across the workspace is still a script against Asana's API.
  • Rules and automations. They are project configuration, not task data.
  • A way back. Asana's CSV importer can only add new tasks to a project and cannot update existing ones, so an edited export re-imported makes duplicates rather than corrections.

JSON opens as an authenticated project link rather than a spreadsheet download. It is useful for structured data; use CSV for the Excel steps here.

Should you sync Asana to Google Sheets or import the CSV?

Sync if your plan allows it and the sheet is meant to stay current; import the CSV if you are on Personal or Starter, or if you want a snapshot that stops changing. Both end up as a spreadsheet report, but the data and refresh behaviour can differ.

The CSV route, on any plan

  1. Export the project as CSV from Export or sync.
  2. In Google Sheets, choose File, then Import. The Import file window has an Upload tab.
  3. Drop the CSV on the Upload tab.
  4. Choose where the data goes, a new spreadsheet or the current sheet, and leave Convert text to numbers, dates, and formulas switched on. Sheets keeps the 16-digit Task IDs exact, as text, and turns the date columns into dates.
  5. Import, then freeze the header row from View, then Freeze.
Google Sheets Import file dialog for an Asana CSV with Convert text to numbers, dates, and formulas ticked
With the conversion option ticked, Sheets turns the dates into dates and leaves the Task IDs exact.

The direct route, on Advanced and above

Asana's help centre states that Google Sheets reporting is available on Advanced, Enterprise and Enterprise+, as well as the legacy Business and Legacy Enterprise tiers, for projects, portfolios and advanced search results. The setup is a one-off: install the Asana Exports add-on in Google Drive, then in Asana choose Export or sync from the project's drop-down and select Google Sheets under Sync. A sheet opens in a new tab, and the address shown in the dialog is what the add-on uses to refresh the data later.

The Sheets add-on produces a report that can refresh from Asana; it is not an instant two-way sync. CSV is a fixed snapshot that works on every plan. Choose the add-on for a report you will refresh, or CSV for a dated export.

Should you use CSV to move an Asana project?

Use CSV when the destination accepts the task fields you need. If comments or tracked time matter, compare a direct importer or a separate API export before moving.

Breeze can import Asana projects directly, including tasks, comments and tracked time. Subtasks become checklist items on their parent task. Attachments do not transfer.

A repeat import can update the Breeze project without sending changes back to Asana. Check the Breeze import help and test one project before moving the rest.

Breeze costs $9 per user per month billed yearly, or $10 billed monthly, with every feature included. Compare Breeze and Asana for product fit, or see the broader Asana export options for organisation exports and time records. The Trello CSV export has different plan requirements.