We have observed that many errors in Marketo nurtures are because of the race conditions. In most of the cases the marketo instance users creates different smart campaigns with the same audience. In such scenarios, you cannot control the sequence of the steps and lead can qualify for any of those campaigns which results in sending wrong email, overwriting the values and many other.
Here are the few steps to avoid this:
What are your thoughts? What would you prefer?
Please feel free to add more value to it.
Hi Vinay, I'm trying to understand the scenario. Can you share more about the purpose of the smart campaigns within the engagement programs? Or are they actually smart campaigns with "send email" flow steps within default programs rather than engagement programs? Is there concern about people qualifying for multiple programs concurrently? A few more details will help me provide a relevant suggestion. 🙂
General note: If you're interested in a possible solution for race conditions other than daisy-chaining, definitely check out the Executable Campaign function that is currently in beta. I'll be presenting about this at a virtual MUG meeting next week: https://mugs.marketo.com/events/details/marketo-houston-mug-presents-everything-you-need-to-know-abo...
@Beth, I have watched your presentation on Executable campaigns. It was nice and very informative.
But, I got some stupid queries/confusions:
1. Suppose I have created 2 executable campaigns updating different flow steps (but with no smart list criteria defined) and one normal campaign which is listening to New leads(Person is created) and then calling the 2 executable campaigns. Will the executable campaigns work as expected or Do I need to define smart list rules for executable campaigns as well?
2. We can use executable campaigns in multiple programs with same audience criteria or can we use these if we have different audiences?
Please share your thoughts. Thanks in advance!
What would you prefer: Race conditions or daisy chains?
This is a strange question. You never prefer a race condition — ever.
A race condition is a bug. It means multiple processes are "racing" to complete, you can't control the order, yet your preferred outcome depends on a specific order.
Maybe you mean "serial execution or parallel execution?" Because in some cases letting processes run in parallel is better for performance, as long as there is not a race condition.
@SanfordWhiteman, Thanks for correcting. Yes, I was talking about serial execution vs parallel execution.