The Converger Pattern in Make.com

The Converger Pattern in Make.com solves the critical challenge of managing duplicate workflows when handling data updates and insertions in Google Sheets or Airtable.

It’s basically the opposite of a router. It doesn’t exist within Make.com, but you can build this type of logic into your workflows using variables.

By using this pattern, you can efficiently do things like for existing records, update or create new ones, and maintain a clean, scalable automation workflow without redundant module duplication.

In my video, I demonstrate a practical implementation of the Converger Pattern using a real-world example with Google Sheets:

Understanding the Problem

When working with data in Make.com, we often need to check if records exist before deciding whether to update or create them. The traditional approach using a router module forces us to duplicate entire workflow sections, leading to maintenance challenges and potential errors.

The Converger Pattern Solution

Instead of duplicating modules, we can implement a three-stream approach using variables to track row IDs and manage the flow of data. This pattern consists of:

  • A search stream to check for existing records
  • An add row stream for new records
  • An update stream that handles both new and existing records

Key Components

The solution relies on several crucial elements:

  • A variable reset module to initialize the row ID
  • Search rows functionality to check for existing records
  • Variable setters and getters to manage the row ID across streams
  • A text aggregator to properly close the iteration loop

Implementation Details

The workflow begins with setting a row ID variable to zero. Each stream serves a specific purpose:

  • Stream 1: Searches for existing records and sets the row ID if found
  • Stream 2: Creates new records if the row ID is still zero
  • Stream 3: Updates the record using the established row ID

Benefits of the Pattern

This approach offers several advantages:

  • Eliminates the need for module duplication
  • Maintains a single source of truth for workflow logic
  • Creates a more maintainable and scalable automation
  • Reduces the chance of errors when updating workflow logic

Additional Resources

While Make.com’s documentation suggests using a data store for this pattern, my implementation provides a more efficient solution without the need for persistent data storage. This approach is more suitable for single runtime scenarios and delivers better performance.

Leave a Comment