AppsPricingBlogTry it
Google Sheets logo
Asana logo

Connect Google Sheets to Asana

Use 8 documented Google Sheets triggers to run 20 documented Asana actions.

8 source triggers
20 target actions
Reverse direction supported

Why Connect Google Sheets & Asana?

Start with a Google Sheets event

Choose from 8 documented triggers, including New Comment, New Comment (Instant), New Row Added.

Run a Asana action

Send the event into one of 20 documented actions, such as Add Task To Section, Create Project, Create Subtask.

Map and review the workflow

Choose the fields and conditions for the workflow, then test the result before activation.

Available Triggers & Actions

Google Sheets logo

Google Sheets

Triggers (8)

New Comment

Emit new event each time a comment is added to a spreadsheet.

polling
New Comment (Instant)

Emit new event each time a comment is added to a spreadsheet.

webhook
New Row Added

Emit new event each time a row or rows are added to the bottom of a spreadsheet.

polling
New Row Added (Instant)

Emit new event each time a row or rows are added to the bottom of a spreadsheet.

webhook
New Updates

Emit new event each time a row or cell is updated in a spreadsheet.

polling
New Updates (Instant)

Emit new event each time a row or cell is updated in a spreadsheet.

webhook
New Worksheet (Instant)

Emit new event each time a new worksheet is created in a spreadsheet.

webhook
New Worksheet (Polling)

Emit new event each time a new worksheet is created in a spreadsheet.

polling

Actions (24)

Add Single Row

Add a single row of data to Google Sheets. Optionally insert the row at a specific index (e.g., row 2 to insert after headers, shifting existing data down). See the documentation

Add Multiple Rows

Add multiple rows of data to a Google Sheet. See the documentation

Get Values in Range

Get all values or values from a range of cells using A1 notation. See the documentation

Add Conditional Format Rule

Create conditional formatting with color scales or custom formulas. See the documentation

Add Protected Range

Add edit protection to cell range with permissions. See the documentation

Add Rows

Append one or more rows to a Google Sheets worksheet. Pass rows as a JSON array. **Preferred format:** array of objects with column header keys (e.g., [{"Name": "Alice", "Email": "alice@example.com"}]). Use **Get Spreadsheet Info** first to discover the exact column header names — keys must match headers exactly (case-sensitive). Alternatively, pass rows as arrays of positional values matching column order. New rows are appended after the last row with data.

Add Worksheet

Add a new worksheet (tab) to an existing spreadsheet. Optionally set column headers. Use **Get Spreadsheet Info** to see existing worksheets before creating.

Clear Cell

Delete the content of a specific cell in a spreadsheet. See the documentation

Clear Rows

Delete the content of a row or rows in a spreadsheet. Deleted rows will appear as blank rows. See the documentation

Copy Worksheet

Copy an existing worksheet to another Google Sheets file. See the documentation

Create Column

Create a new column in a spreadsheet. See the documentation

Create Spreadsheet

Create a blank spreadsheet or duplicate an existing spreadsheet. See the documentation

Create Worksheet

Create a blank worksheet with a title. See the documentation

Delete Conditional Format Rule

Remove conditional formatting rule by index. See the documentation

Delete Rows

Deletes the specified rows from a spreadsheet. See the documentation

Delete Worksheet

Delete a specific worksheet. See the documentation

Find Row

Find one or more rows by a column and value. See the documentation

Find Rows

Search for rows matching a value in a specific column. Use **Get Spreadsheet Info** to discover column header names. Returns matching rows as objects with row numbers (useful for subsequent **Update Rows** calls). For simple reads without filtering, use **Read Rows** instead.

Get Cell

Fetch the contents of a specific cell in a spreadsheet. See the documentation

Get Current User

Retrieve Google Sheets account metadata for the authenticated user by calling Drive's about.get, returning the user profile (display name, email, permission ID) and storage quota information. Helpful when you need to verify which Google account is active, tailor sheet operations to available storage, or give an LLM clear context about the user identity before composing read/write actions. See the Drive API documentation.

Get Spreadsheet by ID

Returns the spreadsheet at the given ID. See the documentation for more information

Get Spreadsheet Info

Get the structure of a Google Spreadsheet — worksheet names, column headers (first row of each sheet), and row counts. **Call this first** before reading or writing data, so you know the worksheet names and column headers. The column headers are used as keys when writing data with **Add Rows** or **Update Rows**. The spreadsheet ID is the long string in the Google Sheets URL: https://docs.google.com/spreadsheets/d/{spreadsheetId}/edit.

Insert an Anchored Note

Insert a note on a spreadsheet cell. See the documentation

Insert Comment

Insert a comment into a spreadsheet. See the documentation

Asana logo

Asana

Triggers (12)

New Project Added To Workspace (Instant)

Emit new event for each new project added to a workspace.

webhook
New Story Added To Project (Instant)

Emit new event for each story added to a project.

webhook
New Subtask (Instant)

Emit new event for each subtask added to a project.

webhook
New Completed Task (Instant)

Emit new event for each task completed in a project.

webhook
New Tag

Emit new event for each tag created in a workspace.

polling
New Tag Added To Task (Instant)

Emit new event for each new tag added to a task.

webhook
New Tags added to any task (Instant)

Emit new event each time a tag is added to any task, optionally filtering by a given set of tags.

webhook
New Task (Instant)

Emit new event for each task added to a project. See docs here

webhook
New Task Assigned in Project (Instant)

Emit new event each time a task is assigned, reassigned or unassigned.

webhook
New Task Field Updated In Project (Instant)

Emit new event whenever given task fields are updated.

webhook
New Task Updated In Project (Instant)

Emit new event for each update to a task.

webhook
New Team

Emit new event for each team added to an organization.

polling

Actions (20)

Add Task To Section

Add a task to a specific, existing section. This will remove the task from other sections of the project. See the documentation

Create Project

Create a new project in a workspace or team. See the documentation

Create Subtask

Creates a new subtask and adds it to the parent task. See the documentation

Create Task

Creates a new task. See the documentation

Create Task Comment

Adds a comment to a task. See the documentation

Create Task from Template

Creates a new task from a task template. See the documentation

Delete Task

Deletes a specific and existing task. See the documentation

Find Task by ID

Searches for a task by id. Returns the complete task record for a single task. See the documentation

Get list of user projects

Return list of projects given the user and workspace gid. See the documentation

Get Tasks From Task List

Returns tasks from the user's personal **My Tasks** inbox — NOT a project task list. Use this when the user asks for 'my tasks', 'my task list', or 'My Tasks'. Only a workspace GID is needed; no project GID required. See the documentation

List Organizations Options

Retrieves available options for the Organizations field.

List Task Stories

List stories (including comments) for a task. See the documentation

List Teams

Retrieves all teams in a specified Asana workspace. Use this action to discover available teams for creating projects, adding team members, or organizing work by department. Requires a workspace GID, which you can obtain from the **List Workspaces** action. The authenticated user must have access to the workspace; only teams visible to the user are returned. Results are paginated (default 25, max 100 per page); use the returned offset token to fetch additional pages. To include optional fields like description, visibility, or access levels, specify them in Opt Fields. Consider following up with **Create Project** to create a project under a team, or **List Users** to find team members. See the documentation

List Users

Retrieves all users in a specified Asana workspace. Use this action to populate assignee choices for tasks, verify workspace membership, or audit user access. Requires a workspace GID, which you can obtain from the **List Workspaces** action. The authenticated user must have access to the workspace. Results are paginated; use the returned offset token to fetch additional pages. To include optional fields like email or photo, specify them in Opt Fields. Consider following up with **Create Task** or **Update Task** to assign work to the retrieved users. See the documentation

List Workspaces

List workspaces available to the authenticated Asana account. Use this when you need a workspace GID before running **List Teams** or other workspace-scoped actions. optFields can include optional workspace properties such as email_domains and is_organization; leave offset empty for the first page and pass a returned offset token (for example, 3:0:abcdef123456) to fetch the next page. See the documentation

Search Projects

Finds an existing project. See the documentation

Search Sections

Searches for a section by name within a particular project. See the documentation

Search Tasks

Searches for a Task by name within a Project. See the documentation

Search Tasks Premium

Searches for a task by name, assignee, section, project, completed since, and modified since. Requires a Premium Asana account. See the documentation

Update Task

Updates a specific and existing task. See the documentation

Integration Features

8 documented Google Sheets triggers
20 documented Asana actions
Configurable field mapping
Conditional workflow steps
Execution monitoring
A supported Asana to Google Sheets direction

Capability Examples

Google Sheets trigger → Asana action

Catalog example
Google SheetsGoogle Sheets

New Comment

AsanaAsana

Add Task To Section

Asana trigger → Google Sheets action

Reverse direction
AsanaAsana

New Project Added To Workspace (Instant)

Google SheetsGoogle Sheets

Add Single Row

How It Works

1

Connect Apps

Authenticate your Google Sheets and Asana accounts

2

Choose a Trigger

Select a documented Google Sheets event

3

Choose an Action

Select the documented Asana operation to run

Test and Review

Verify field mapping and provider responses before activation

Frequently Asked Questions

Integration Benefits

Trigger-driven Workflows

Start the supported direction from one of 8 documented Google Sheets triggers.

Automated Actions

Run one of 20 documented Asana actions after the selected trigger fires.

Provider Authentication

Review the authentication requirements published by each provider before activating the workflow.

Guided Configuration

Select a documented trigger, choose a target action, and map the fields required by the workflow.

Field Mapping

Map the fields exposed by the selected trigger and action, then review the required provider inputs.

Execution Review

Test the workflow and review provider responses before relying on it in production.

Asana logoGoogle Sheets logo

Reverse Integration Available

Also connect Asana to Google Sheets for bidirectional automation

View Integration
Google Sheets logo

All Google Sheets Integrations

Explore all available Google Sheets connections

View All Integrations
Asana logo

All Asana Integrations

Explore all available Asana connections

View All Integrations

Ready to Connect Google Sheets & Asana?

Build this supported workflow in Mazaal AI and test it with your own provider accounts.

Get Started Free