As your campaign complexities grow, so do the challenges with timing. Should a lead be enriched before or after syncing to the CRM? When should it be assigned to a sales rep? Call a webhook? Introduced with the May 2021 release notes, Adobe Marketo Engage’s “Execute Campaign” function has been flying under the radar for the last year, but it could be just the trick to help you keep your ducks in a row and nail your timing.
What are Executable Campaigns?
Executable campaigns introduce a new flow step and smart campaign type. The functionality is very similar to the “Campaign is Requested” feature. However, the key differentiator of executable campaigns is that once requested, it must finish before the next flow step runs. This keeps your “ducks in a row” in terms of flow steps. Executable campaigns do not need to be activated or deactivated; they will only run when executed via a flow step.
Executable Campaigns in Action
For example, if you were running a Smart Campaign A with 3 flow steps:
- Program Member Status
- Request Smart Campaign B
- Sync Person to SFDC
The first flow step(s) of Smart Campaign B, would happen in parallel with the remaining steps of Smart Campaign A. However, if Smart Campaign A uses an executable campaign:
- Program Member Status
- Execute Smart Campaign B
- Sync Person to SFDC
All flow steps in Smart Campaign B must complete before the person would move to the final flow step in Smart Campaign A.
Note: if the child executable Smart Campaign B has smart list filters – and the person does not qualify, they will skip over this flow step and continue to the next. Smart Campaign Settings > Qualification rules also apply in the same way. Leads that do not qualify will record a Skipped Activity in the Activity Log.
Therefore, with the use of executable campaigns, you’ll have greater control over the order of operations within your instance. An executable campaign removes the need for wait steps if you need certain actions to be taken before others.
As of the August 2021 product release, you can now nest executable campaigns as flow steps within other executable campaigns up to 3 levels deep after the initial parent campaign.
Nest Executable Campaigns with Token Inheritance
Another feature is Token Inheritance. Using the execute campaign flow step, you can set the “Use Parent Campaign Token Context” to true or false. When set to “true”, the executable campaign will inherit the parent campaign’s tokens:
- My Tokens
- Campaign Tokens
- Program Tokens
- Member Tokens
- Trigger Tokens (if coming from a Triggered Campaign)
Conversely, if set to “false,” the executable campaign will not inherit the parent campaign’s tokens and will use its own token context.
You can create executable campaigns like any other smart campaign, the important step you cannot miss is to check the ‘Executable’ checkbox upon creation. (So that’s what it’s for?!)
Note: once the smart campaign is created, you cannot change it between executable and non-executable; you will have to rebuild or clone the smart campaign to check/uncheck the box.
How should I be using executable campaigns?
Based on what you’ve learned so far, I’m sure you’ve got lots of ideas about how executable campaigns can be used! One great use case is for the consolidation of operational tasks so they can be managed within a single process (containing one or more Marketo programs). A number of activities happen upon lead creation in Marketo so you should consider the following:
- Lead Source Assignment
- Lead Routing and Lifecycle
- Data Normalization
- Data Enrichment (using integrations such as RingLead or ZoomInfo)
Executable campaigns give you an opportunity to control that sequence of events better, and in an order that suits you – reducing the number of ‘Person is created’ triggers in your instance too!
See how Digital Pi can help support you to implement or optimize this process.
Where are the pitfalls?
Executable campaigns are a powerful feature, but they do have limitations. Here are a few things to keep in mind:
- There is no smart campaign setting to switch between executable/standard – the best workaround would be to clone the smart campaign.
- Executable campaigns do not support wait steps. Theoretically, these campaigns eliminate the need for wait steps, and they can still be used in a parent smart campaign (if it’s not executable). But you will not see this as a flow step option in executable campaigns.
- Webhooks have the potential to conflict with the execute campaign flow step, and therefore are not supported. This is because webhooks are processed like request campaigns, and there is no guarantee that all changes have been made in the database so that the campaign flow may continue.
- Execute campaigns cannot be called across workspaces.
- Cloning a smart campaign to create an executable version will fail if the original contains Wait Steps or Call Webhook flow steps (see #2 and #3).
- The Campaign Activity Report does not currently support executable campaigns. This is a big limitation if you use this report type to monitor your scoring model.
- If you use the Remove from Flow flow step and want to reference an executable campaign, you won’t be able to find it. So you will need to remove from the parent flow/campaign.
- In our tests so far, we’ve had little success in using the Random Sample filter in child executable campaigns with no execute campaign activity being logged whatsoever – therefore we were unable to see if Qualified = TRUE/FALSE.