Google Sheets "Get Row(s)" returns 0 results intermittently - same workflow, same data, no error

Hi everyone,

I’m experiencing a frustrating intermittent issue with the Google Sheets node and hoping someone can help explain what’s happening.

Setup:

  • n8n Cloud, version 2.13.3

  • Workflow: Form trigger → Parse input → Split Out → Get data (Google Sheets) → Filter → Aggregate → Build HTML → Send email

  • Get data node uses Get Row(s) with a filter - expression from Split Out, Return All Matches enabled, By ID document reference

The problem:

The exact same workflow, with the exact same saved configuration, returns completely different results between executions:

  • Execution at 12:17 - Get data returns 606 items, full workflow completes successfully, email sent ✓

  • Execution at 12:28 - Get data returns 0 items, workflow stops, no error message of any kind - not a quota error, not a timeout, not a permission error, just silently returns nothing

Nothing changed between these two runs. Same credentials, same Sheet ID, same filter.

Important observations:

  • When it fails, there is no error - the node shows “Success” but with 0 items returned

  • When I remove the filter and run without it, I get a Maximum call stack size exceeded error (the sheet has ~258k rows, too large to load without filtering) - so the connection itself is working, the issue is specifically with the filter returning empty results

  • Create spreadsheet operation works fine with the same credentials, confirming the OAuth connection is valid

  • The node runs for 2-3 minutes before returning 0 results when failing

Possible node version change:

I also noticed that when I add a brand new Google Sheets node today, the Options section looks different from my existing node (added yesterday):

  • Existing node (yesterday): Options shows When Filter Has Multiple Matches: Return All Matches

  • New node (today): Options shows Return only First Matching Row toggle (disabled by default)

Could there have been a Google Sheets node update between yesterday and today that is causing this behavior? Is the node silently switching its behavior mid-execution?

What I’ve tried:

  • Re-authorizing credentials multiple times

  • Creating new credentials (OAuth)

  • Using By ID instead of From list for the document

  • Testing with hardcoded filter value instead of expression > did not work

  • Checking Sheet permissions - all fine

Has anyone seen this? Any help appreciated!

welcome to the n8n community @Aneta_Wozniak

sometimes n8n gets stuck with corrupted cache or node state, and recreating it really fixes the issue.
tip to avoid this, always save a copy of your workflow JSON before touching important nodes. If it happens again, just import it back.

Hi, thanks for the responses!

Following up with what I’ve tried since posting:

**Node version difference.**I noticed my original node shows Google Sheets node version 4.4 while the newly created node is version 4.7. The UI is also different between versions:

  • v4.4 (original): Options shows When Filter Has Multiple Matches: Return All Matches dropdown

  • v4.7 (new): Options shows Return only First Matching Row toggle (disabled)

What I’ve tried:

  • Imported the entire workflow JSON as a completely new workflow - still 0 results, no error

  • Deleted the Get data node and replaced it with a brand new v4.7 node with identical config - still 0 results

  • Tried two different Google OAuth credentials - no difference

My question: Is the only remaining option to rebuild the entire workflow manually from scratch, node by node?