How to Avoid Duplicating Flows After Conditional Logic in Make?

Hi everyone,

I’m working on an scenario with the following logic:

Search for user (and capture ID)  
  If user does not exist:  
    Create user (and capture ID)  
Then:  
  Do something with the captured ID

The issue I’m running into is that Make.com doesn’t seem to support a way to merge the flow back after conditional paths. So if I use a router with two paths (one for when the user exists, one for when they don’t), I have to duplicate the entire rest of the process in both branches — which can quickly become a nightmare to maintain if the downstream logic is complex or long.

Is there a clean way to implement this kind of logic in Make without duplicating the “do something with the ID” steps after each router branch?

I’m open to using flow control tools like variables or workarounds if there’s a best practice for this.

Thanks in advance for your help!

Hey there,

here is the workaround to merge paths.

1 Like

Well, it doesn’t work in my case, because the user ID can be initialized without requiring a new one to be manually inserted. In my scenario, if a user ID is not found, a new one is inserted and then assigned to a variable. However, for the second route, the information becomes outdated.

The problem is that all data defined before the router is shared across all routes, but once the individual routes are executed, they don’t communicate changes between each other.

The workaround I found is to retrieve the user ID again within the second route. This ensures that it always gets the latest user ID assigned after the insertion.

I’m not sure if this explanation is entirely clear.

As for the video you provided—it’s well-known and I actually used it as a basis for understanding the concept. Unfortunately, it doesn’t offer a solution for this specific edge case.

Sorry, it is not entirely clear what the issue you are facing is.

As I understand the flow:

If an ID is not found, then the top route is executed and a variable is saved with the ID. Then the second round retrieves the variable and if it exists, uses it, if it doesn’t exist, it uses the already existing one from before the router.

OR if an ID is not found, the top route is executed and a new one is created, then the bottom route starts with a second search where an ID will be found (because it either already existed or it was just created by the other route).

Either way, you should be able to proceed.

Hi @anotherone,

Follow this tutorial:
How to Merge Routes in Make.com - Showcase - Make Community

1 Like