Google Sheets module repeating same bundle from Airtable: Need help with proper Iteration in Make

I’m working on a scenario in Make with the following modules:

  1. Airtable | Search Records
  2. Google Sheets | Search Rows
  3. Google Sheets | Update a Row
  4. Airtable | Delete Records

The Issue:
The Google Sheets module (Update a Row) is repeating the same Airtable record data (from bundle 1) for multiple rows, instead of processing each Airtable record (bundle) sequentially. For example, it updates rows 507 and 508, but both rows get the same data from the first Airtable record, instead of row 508 getting data from the second Airtable record.

What I’ve Tried:

  • Mapping fields dynamically from Airtable to Google Sheets (fields like Date, Status etc. are correctly mapped). However, despite the correct mappings, the first bundle’s values are being used for multiple rows.
  • Tried using an Iterator module but discovered that Make automatically splits Airtable results into individual bundles.
  • Ensured that the Airtable module is outputting each record separately, but the issue persists when passing the bundles to Google Sheets.
  • Checked logs to confirm that multiple bundles are passed from Airtable, but the Google Sheets module still processes the same data multiple times.

Screenshots & Bundles

The Google sheets module stops after the error in module 4, which is expected because it gets a duplicate ID to delete.

These are the input bundles for Google Sheets | Update a row, I put the operations into 1 json:

[
    {
        "mode": "map",
        "values": {
            "0": "SAME VALUE HERE",
            "1": "SAME VALUE HERE 2",
    },
        "sheetId": "Live posts export",
        "rowNumber": 507,
        "spreadsheetId": "SPREADSHEET ID HERE",
        "tableFirstRow": "A1:Z1",
        "valueInputOption": "RAW"
    },
    {
        "mode": "map",
        "values": {
            "0": "SAME VALUE HERE",
            "1": "SAME VALUE HERE 2",
    },
        "sheetId": "Live posts export",
        "rowNumber": 508,
        "spreadsheetId": "SPREADSHEET ID HERE",
        "tableFirstRow": "A1:Z1",
        "valueInputOption": "RAW"
    }
]

What I’m Looking For:
I’m trying to achieve a setup where each Airtable bundle updates a unique row in Google Sheets based on its position in the sequence (i.e., bundle 1 to row 507, bundle 2 to row 508, etc.).

Has anyone encountered this problem or have any ideas on how to properly handle bundle iteration between Airtable and Google Sheets in Make?

I appreciate any suggestions on:

  • Ensuring proper iteration so that each row in Google Sheets is updated with the correct bundle data.
  • Best practices for handling multiple bundles from Airtable and ensuring they map to different rows in Google Sheets.

Thanks so much for any guidance!

The issue you’re encountering, where the Google Sheets module is repeating the same data from Airtable across multiple rows or overwriting rows, is typically caused by how the bundles are handled during iteration. Here’s how you can address it:

  1. Bundle Aggregation: If you are receiving multiple bundles from Airtable (e.g., multiple records), these bundles may be processed individually, causing repeated entries. You can solve this by using an Array Aggregator module or a Text Aggregator module. These will combine multiple bundles into one before sending them to Google Sheets, ensuring only a single operation runs on the combined data.

  2. Iterator Configuration: If your scenario uses an iterator and it’s writing data into the same row in Google Sheets (overwriting previous entries), check if your Google Sheets module is pointing to a specific row or cell. This issue often occurs when the module is configured to overwrite rather than append. Instead, make sure the rows are dynamic so that each bundle is processed into the next available row .

  3. Avoiding Multiple Operations: In some cases, earlier modules like Get Range or Search Rows can generate multiple bundles that are passed down the scenario. If you don’t need to process all bundles, make sure you’re configuring the query or search criteria correctly. For instance, setting a limit in your Airtable module or fine-tuning your search will prevent unnecessary repetition in Google Sheets .

By adjusting your setup with these points in mind, you should be able to ensure the correct iteration and avoid repeated or overwritten entries in Google Sheets.

I really appreciate the input but this is too generic for me. I think proper aggregation iteration should resolve point 3 too, properly limiting my search criteria might help but I am actually getting the right row number and its passing it on in the “update a row” module.

I think that is where im going wrong, Im not understanding how to do this aggregation properly, my scenario used to work fine before though I had probably used too many operations:

First time it threw an error:

It looks indeed like the search row is handling the bundles differently, settings are the same, before it used to do the amount of operations based on the amount of bundles created in Airtable, now it processes it as one operation regardless of the amount of bundles are received from Airtable

Now im trying something like this:

@Alifar in the end it was a bundle aggregation issue, but it was how sheets was outputting data in the search module, it was actually a very simple setting in google sheets forcing it to output just one bundle at a time.

I think there might be a more efficient way in terms of operations to handle this so I’d be curious for Makers to chip in on how to do this, but my issue is technically resolved since it is automating what I want it to do.

Current setup:

Each subsequent module to the Airtable search uses 5 operations currently.

1 Like