Google Sheets Trigger

Trigger a workflow when rows are appended to a Google Sheet or the spreadsheet is updated. Uses a Drive files.watch notification on the spreadsheet, then enriches the event by reading the sheet's current rows.

The trigger authenticates through a Google connection. Connect a Google account once and pick it in the node's settings.

When to Use

Use Google Sheets Trigger when:

  • New form rows should kick off a workflow (lead follow-up, order processing)
  • You want an event-driven alternative to polling a sheet

Connection

Google Account — required. Pick a Google connection from the Connections page.

Output

HandleTypeDescription
payloadobjectEnriched Google Sheets change event

The payload (accessed as {{ google_sheets.* }}) shape:

FieldTypeDescription
typestringEvent type (e.g. rows_appended)
new_rowsarrayRows appended since the previous event — objects keyed by column header when header_row is on, arrays otherwise
headersarrayColumn headers (when header_row is on)
rowCountnumberTotal rows after the change
previousRowCountnumberTotal rows before the change

Settings

Target

SettingTypeDefaultDescription
spreadsheet_idstring—Required. Spreadsheet ID to watch (the long value in the sheet URL). Supports {{ }} bindings.
sheet_namestringSheet1Worksheet tab name to monitor. Supports {{ }} bindings.
rangestringA1:Z1000A1 range used for enrichment reads. Supports {{ }} bindings.

Events

SettingTypeDefaultDescription
event_typesmulti-selectrows_appendedWhich enriched events should start a run.
header_rowbooleantrueTreat the first row as column headers, so new_rows entries are objects keyed by header name.

Testing

SettingTypeDefaultDescription
mockPayloadcode editor (JSON)sample rows_appended eventJSON payload injected for local test runs instead of a real Drive notification.

Example

Send a welcome email for each new signup row:

Google Sheets Trigger → Resend Email

Google Sheets Trigger settings:

  • Spreadsheet ID: 1Bxi...
  • Sheet Name: Signups
  • Header Row: on

Resend Email settings:

  • To: {{ google_sheets.new_rows[0].Email }}
  • Subject: Welcome, {{ google_sheets.new_rows[0].Name }}!

Common Gotchas

  • Header names, not column letters: with header_row on, reference {{ google_sheets.new_rows[0].Email }} — the header text, exactly as spelled in row 1.
  • Multiple rows per event: if several rows land between notifications, new_rows contains all of them — loop with a Subworkflow or process new_rows[0] only for single-row appends.

See Also

On this page