AppsPricingBlogTry it
Google Sheets logo
Smartsheet logo

Connect Google Sheets to Smartsheet

Automate workflows and sync data between Google Sheets and Smartsheet with AI-powered automation

5-minute setup
Enterprise secure
No coding required

Why Connect Google Sheets & Smartsheet?

Intelligent Automation Workflows

Leverage 8 available triggers from Google Sheets to execute 24 targeted actions in Smartsheet automatically.

Eliminate Manual Data Entry

Replace time-consuming manual processes with intelligent automation that keeps Google Sheets and Smartsheet perfectly synchronized.

Real-time Business Intelligence

Create a unified data flow between Google Sheets and Smartsheet for instant insights and improved decision-making across your tech stack.

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

Smartsheet logo

Smartsheet

Triggers (4)

New Comment Added (Instant)

Emit new event when a comment is added in a sheet.

webhook
New Row Added (Instant)

Emit new event when a row is added to a sheet.

webhook
New Row Deleted (Instant)

Emit new event when a row is deleted from a sheet.

webhook
New Row Updated (Instant)

Emit new event when a row is updated in a sheet.

webhook

Actions (24)

Add Column

Add a new column to a sheet. Specify the column title, type, and optionally the position and picklist options. For PICKLIST columns, provide the options array with valid values. Use **List Columns** to see existing columns before adding. See the documentation

Add Row to Sheet

Add one or more rows to a sheet. Accepts column NAMES as keys — resolves to column IDs internally. Call **Get Sheet** or **List Columns** first to learn column names. Pass rows as a JSON array of objects mapping column names to values: [{"Task": "Review doc", "Status": "Open"}]. For a single row, pass a one-element array. See the documentation

Copy Rows

Copy one or more rows from a source sheet to a destination sheet. The rows remain in the source sheet and are duplicated in the destination. Cell values, formatting, and attachments are copied. The destination sheet must have compatible columns. Use **Get Sheet** to find row IDs in the source sheet. To move rows instead (removing them from the source), use **Move Rows**. See the documentation

Copy Sheet

Copy an existing sheet to a new location. Creates a complete duplicate including all rows, columns, formatting, and attachments. Specify a destination workspace or folder, or omit both to copy to the user's home (Sheets folder). Returns the new sheet's ID and permalink. Use **List Sheets** to find the source sheet ID. To move a sheet instead (removing it from the original location), use **Move Sheet**. See the documentation

Create Sheet

Create a new blank sheet with column definitions in a workspace or folder. Columns array defines the schema — each column needs a title and type. Supported column types: TEXT_NUMBER, DATE, DATETIME, CONTACT_LIST, CHECKBOX, PICKLIST, DURATION, PREDECESSOR, ABSTRACT_DATETIME. For PICKLIST columns, include an options array with the valid values. You must provide either a Workspace ID or Folder ID — the home-level create endpoint is deprecated. Use **List Sheets** to verify the sheet was created. See the documentation

Delete Column

Permanently delete a column from a sheet. WARNING: This is irreversible — all cell data in the column is permanently destroyed. Use **List Columns** to find the column ID before deleting. Consider using **Get Sheet** to review the column's data before deletion. See the documentation

Delete Rows

Delete one or more rows from a sheet by row ID. This is permanent and cannot be undone. Use **Get Sheet** or **Search** to find row IDs first. See the documentation

Delete Sheet

Permanently delete a sheet. This is irreversible — all data, rows, and columns are destroyed. Use **List Sheets** to find the sheet ID first. See the documentation

Email Sheet

Send a sheet as an email attachment to one or more recipients. The sheet can be sent as PDF, Excel, or PDF Gantt format. Use **List Sheets** to find the sheet ID. See the documentation

Get Current User

Get the authenticated user's identity — returns user ID, email, first/last name, and account details. Use this when the user says 'my sheets' or 'my account' to identify the owner. See the documentation

Get Row

Retrieve a single row from a sheet by row ID, with cell values keyed by column name instead of column ID. Returns a human-readable object like {"Species": "Velociraptor", "Status": "Monitoring"} plus row metadata. When a cell has a displayValue (formatted date, contact name), that is returned instead of the raw value. Use **Get Sheet** or **Search** to find row IDs. To update a row after reading it, use **Update Row**. See the documentation

Get Sheet

Get a sheet's full structure: column definitions (name, type, options, ID), all rows with cell values, and sheet metadata. This is the primary schema discovery tool — call it BEFORE **Add Row to Sheet** or **Update Row** to learn column names, types, and IDs. Returns rows with cell values keyed by column name for readability. For a lightweight column-only view, use **List Columns** instead. See the documentation

Import Sheet

Import a CSV or XLSX file as a new Smartsheet sheet in a workspace or folder. The file's first row becomes column headers by default (adjust with Header Row Index). You must provide either a Workspace ID or Folder ID — the home-level import endpoint is deprecated. Supported formats: CSV (.csv) and Excel XLSX (.xlsx). Use **List Sheets** to verify the sheet was created after import. See the documentation

List Columns

List all columns in a sheet, returning each column's ID, title, type, options (for PICKLIST/CONTACT_LIST), validation, and position index. This is lighter-weight than **Get Sheet** when you only need the column schema and not row data. Use this before **Add Row to Sheet** or **Update Row** to discover column names and types. For full sheet data including rows, use **Get Sheet** instead. See the documentation

List Folder Options

Retrieves available folder options from a workspace. See the documentation

List Sheet Options

Retrieves available options for the Sheet field. See the documentation

List Sheets

List all sheets the authenticated user can access, with name, ID, creation/modification dates, owner, and permalink. Use this to find sheet IDs before calling **Get Sheet**, **Add Row to Sheet**, **Update Row**, **Delete Rows**, **Copy Sheet**, or **Move Sheet**. To search sheets by content rather than listing them, use **Search** instead. See the documentation

List Template ID Options

Retrieves available options for the Template ID field.

List Workspace Options

Retrieves available options for the Workspace field using token-based pagination. See the documentation

List Workspace Templates

Lists templates available in your workspaces. Use this to find template IDs for **New Sheet From Template**. See the documentation

Move Rows

Move one or more rows from a source sheet to a destination sheet. WARNING: Rows are permanently removed from the source sheet. Cell values, formatting, and attachments are transferred. The destination sheet must have compatible columns. Use **Get Sheet** to find row IDs in the source sheet. To copy rows instead (keeping them in the source), use **Copy Rows**. See the documentation

Move Sheet

Move a sheet to a different workspace, folder, or home. The sheet is removed from its current location. As of 2025-12-23, destinationType is required. Use **List Sheets** to find the sheet ID. To copy a sheet instead (keeping the original), use **Copy Sheet**. See the documentation

New Sheet From Template

Creates a new sheet from a template. Requires either a workspace or folder destination. Use **List Workspace Templates** to find template IDs. Use **List Workspace Options** to find workspace IDs. Use **List Folder Options** to find folder IDs. See the documentation: Create in folder, Create in workspace

Search

Full-text search across all sheets or within a specific sheet. Returns matching rows, cells, and sheet names with context. To find a sheet by name, use **List Sheets** instead — this tool searches content within sheets. Provide a sheetId to scope the search to a single sheet, or omit it to search globally. See the documentation

Integration Features

Real-time data synchronization
Bi-directional sync capabilities
Custom field mapping
Advanced filtering options
Error handling & retry logic
Activity monitoring & logs

Popular Workflows

When Google Sheets trigger → Create/Update in Smartsheet

Most Popular
Google SheetsGoogle Sheets

New Comment

SmartsheetSmartsheet

Add Column

When Smartsheet trigger → Update Google Sheets

Bi-directional
SmartsheetSmartsheet

New Comment Added (Instant)

Google SheetsGoogle Sheets

Add Single Row

How It Works

1

Connect Apps

Authenticate your Google Sheets and Smartsheet accounts

2

Map Fields

Choose which data fields to sync between apps

3

Set Triggers

Define when and how data should be synchronized

Automate

Sit back and let AI handle the automation

Frequently Asked Questions

Integration Benefits

Real-time Data Sync

Automatic synchronization between Google Sheets and Smartsheet with 12 public triggers available for instant updates.

Automated Actions

Execute 48 public actions automatically across both platforms without manual intervention.

Enterprise Security

Industry-standard encryption, OAuth 2.0 authentication, and SOC 2 compliance for secure data transfer.

Quick Setup

Connect Google Sheets and Smartsheet in minutes with our guided setup wizard and pre-configured templates.

Custom Field Mapping

Map any field between Google Sheets and Smartsheet with intelligent suggestions and validation.

Error Handling

Automatic retry logic, detailed error logs, and smart notifications keep your integration running smoothly.

Smartsheet logoGoogle Sheets logo

Reverse Integration Available

Also connect Smartsheet to Google Sheets for bidirectional automation

View Integration
Google Sheets logo

All Google Sheets Integrations

Explore all available Google Sheets connections

View All Integrations
Smartsheet logo

All Smartsheet Integrations

Explore all available Smartsheet connections

View All Integrations

Ready to Connect Google Sheets & Smartsheet?

Join thousands of users automating their workflows with Mazaal AI