Skip to main content
Question

Branching funnel based on user state (new vs existing user)

  • April 15, 2026
  • 7 replies
  • 71 views

Forum|alt.badge.img

Hi,

I’ve been exploring RevenueCat Funnels, and the feature looks really promising.

However, I’m not sure how to handle branching the flow based on the user’s state.

As part of my funnel, I include authentication. I redirect users to my app where they can sign in or sign up, and then I send them back to the funnel.

What I’d like to achieve is showing different steps depending on the user type:

  • Newly registered users
  • Existing users who already have an account but haven’t purchased a subscription yet

For each group, I want to display different content. For new users, I’d like to introduce the app in general + show subscription benefits. For existing users without a subscription, I want to focus more on subscription benefits.

When redirecting users back to the funnel, I could include a query parameter like ?new_user={true|false}, along with state and app_user_id. However, I don’t see any option in the funnel settings that allows branching based on these parameters.

Is there a way to achieve this kind of behavior?

Thank you for your help!

Jan Zabloudil

7 replies

amps33
Forum|alt.badge.img
  • New Member
  • April 15, 2026

You’re trying to turn a linear tool into a decision engine, it won’t bend that way.

RevenueCat funnels don’t really “branch” on external params like that bc they assume you already know who you’re talking to.

So the move is simpler:

Don’t branch inside the funnel, decide before the funnel.

Send users to different funnel entry points based on state:

- new users → intro + context

- existing users → straight to value

Trying to pass

?new_user=true

and expecting logic inside is where it breaks and backend thinking in a frontend tool. Keep the funnel dumb because converts better anyway. 


Dan Pannasch
RevenueCat Staff
Forum|alt.badge.img+3
  • RevenueCat Staff
  • April 16, 2026

Hi Jan! So happy to hear you’re exploring Funnels. What you’re describing is certainly possible. The way you’d do this is:

  1. Add a Branch node after the user authenticates
  2. Add a rule in the branch node that when the custom parameter new_user is true then navigate to x, else navigate to y (or whatever set of logic around that custom parameter you'd prefer)

 

Let me know if you have any trouble setting that up, or if you have any other questions or feedback as you go!


Forum|alt.badge.img
  • Author
  • New Member
  • April 23, 2026

Hi,

thank you for your answer! I see that I can add the new_user parameter, but what value this parameter technically hold? How can I set it to a specific value? Or is it automatically populated from query strings when redirecting user back from auth flow (back to {funnel_url}?app_user_id=x&state=y&new_user=true).

Thank you!


Tarek
RevenueCat Staff
Forum|alt.badge.img+5
  • RevenueCat Staff
  • April 24, 2026

Hey Jan,

 

Tarek, from the RevenueCat team here.

 

Great question, let me clarify how custom parameters actually get their values.

Custom parameters are populated from the query string of the initial funnel URL, not from the authentication callback.

Once you've declared new_user in Settings → Parameters, you set its value by including it when the user first enters the funnel:

https://signup.cat/{link_id}/?new_user=true

 

From that point on, new_user is available as a URL parameter that your Branch node can read.

(See the "Custom parameters" section here for the full flow: https://www.revenuecat.com/docs/tools/funnels/deploying-funnels#custom-parameters)

 

About the auth callback specifically: when your authentication system redirects back to https://signup.cat/funnel/callback, the only two query parameters the funnel reads are state (which you must return unchanged) and app_user_id. Additional query params on the callback URL aren't merged into the funnel's parameter context, so ?new_user=true on the callback won't feed into your Branch rule. The callback contract is documented here: https://www.revenuecat.com/docs/tools/funnels/creating-funnels#redirecting-back-to-the-funnel

 

Practically speaking, for your flow, you have to decide before the funnel starts. If you can determine new-vs-existing before sending the user to the funnel, include ?new_user=true on the initial funnel URL. The Branch node then evaluates it as you would expect.

 

If your flow genuinely requires the funnel → auth → funnel round-trip to carry the new-vs-existing signal back, that's not something the callback contract supports today unfortunately. Happy to pass that along as a feature request if it's blocking you though, just let me know.

 

Best regards,


Forum|alt.badge.img
  • Author
  • New Member
  • April 24, 2026

Hey Tarek,

Thank you for your response! We would really appreciate this feature, as asking users for their email even before starting the flow is something we’d prefer to move to a later stage. We believe there is a higher chance users will be willing to enter their email after they go through the funnel and see the app’s features and benefits.

Thank you!


Tarek
RevenueCat Staff
Forum|alt.badge.img+5
  • RevenueCat Staff
  • April 28, 2026

Hey Jan,

 

I've forwarded your request to the engineering team.

 

Thank you for this valuable feedback!

 

Best regards,


Tarek
RevenueCat Staff
Forum|alt.badge.img+5
  • RevenueCat Staff
  • April 28, 2026

Hey Jan,

 

Good news! I just got news from engineering that it's been fully implemented recently, it's going to be documented soon as well.

You can pass parameters to the auth callback from your auth system, those will be available as custom parameters to branch on in the funnel.

 

Have an excellent day!

 

All the best,