Google Sheets “Update Row” node keeps breaking after multiple executions

Hi everyone,

I am running into a recurring issue with the Google Sheets Update Row node that I cannot stabilize.

Context:

  • I work at an agency

  • The workflow generates product descriptions (meta + long descriptions)

  • Data is processed in batches and then written back to Google Sheets

  • Matching is done using a row_number field

Problem:
The workflow runs fine at first, but the Update Row node consistently breaks after about 10 executions, sometimes 30 to 40 if I am lucky.

Error:
row_number is null or undefined
Even though:

  • The input JSON clearly contains row_number

  • The node is set to match on row_number

  • Earlier executions in the same run work without issues

Once it breaks, every subsequent execution fails until I manually intervene or rerun smaller batches.

This makes the workflow unreliable for production use, which is painful since this is part of an automated content pipeline for clients.

Questions:

  • Is this a known issue with the Google Sheets node?

  • Is there an internal limit, caching issue, or state problem with Update Row?

  • Is matching on row_number unsafe for larger runs?

  • Any recommended workaround for agency-scale workflows?

It is a massive workflow we run almost 24/7 and we recently switched to gemini from ppemai for currency and accuracy but now the last keeps failing us which means i have to get up at 3 am and restart the workflows…..

Happy to share more details or a stripped-down workflow if needed.

Thanks in advance.

The issue is likely caused by how the `row_number` field is being handled within your workflow. The “Update Row” node requires the `row_number` to accurately identify the row to update.

1. **Verify Data Integrity:** Ensure that the `row_number` field is consistently present and correctly populated in your input data throughout the entire workflow execution. Check if any previous nodes might be inadvertently modifying or removing this field.

2. **Inspect the Data:** Add a “Debug” node before the “Update Row” node to inspect the data being passed to it. This will help you pinpoint when the `row_number` becomes null or undefined.

3. **Alternative Matching:** Consider using the “Spreadsheet ID” and “Cell” options in the “Update Row” node to target specific cells. This might be more reliable than matching on `row_number` for large-scale operations.

Give that a shot