Skip to main content

Hi everyone,

I’m working on a flow setup here:

  • Trigger: Deal Created event (a new flow run starts for each deal - even if its the same profile is running multiple deals) - (contains { dealId, amount, quantity etc }

  • Other event: Deal Stage Updated (contains { dealId, dealStage }).

What I want to do is:

  • If a Deal Stage Updated event comes in with the same dealId and the stage is one of SELL_PENDINGSELL_CLOSED_WON, or SELL_BUSINESS_LOST, then only that specific flow run (for that deal) should stop.

  • At the same time, if the same profile has other active deals (other flow runs with different dealIds), those flows should continue unaffected.

The issue I’m running into:

  • Klaviyo flow filters and exit conditions seem to check at the profile level.

  • So if any deal for that profile moves to one of those stages, all flow runs stop, not just the one associated with the deal that changed.

Theres no issue with same profile starting the same flow twice, but stopping the flow based on stage has become an issue and that’s where I need help.

Has anyone found a way to set up exit conditions or filters so that they apply per-event / per-dealId, not across the entire profile?

Or is there a workaround (maybe with custom events/properties) that allows targeting only the matching dealId?

Let me know if you need more info on this to understand, its quite complex.

Thanks in advance! 

Hi ​@Rajath,

Thanks for your question, and explaining the flow you created/the issue you’re facing in detail! I thought this over for a while, and unfortunately, there isn’t a way to achieve this, as of now. As I’m sure you’ve deduced, there aren’t filters/splits that can check if the value of a new event property equals the value of the original event that triggered the flow. Additionally, adding custom properties to somebody’s profile wouldn’t get the job done here, since if somebody’s in multiple instances of the flow at once, they still have one profile that’s the same for each flow instance.

I can bring this up to our product team and recommend the use case you mentioned. Situations like yours that you described in detail make it so our team has a better understanding of how customers use our product, and how to continue to improve the platform!