Executable campaigns are a powerful new feature designed to allow you to make your campaign logic modular, reusable and maintainable. However, staying within the limit of three nested executables can be difficult when your campaign trees get complicated. This article describes a simple method of classifying your executables into three categories to help you stay within the nesting limits while also remaining productive.
This classification system has three categories with simple definitions:
By classifying your campaigns in this way, and abiding by their restrictions, you can avoid bumping up against the nesting limit.
Now we have a way to avoid the nesting limit, but how should you map your existing campaign logic and lifecycles into these categories? Let’s look at Tier 3 first, as it is the foundation of this model
Tier 3 cannot execute any other campaigns, and this is where individual tasks should be implemented. Your organization can define what a task is in this context, but I think that it is useful to borrow the definition of unit from software development: A unit is the smallest testable part of any software. In the context of Marketo, a unit is the smallest testable part of any campaign.
Let’s look at a common example for lead lifecycles: Taking a country input and outputting a country code to a different field.
The above is an abbreviated example using flow-step choices to match the value of Country to a particular country code. Supposing we wrote a test for this, we would expect a lead who enters the flow with an empty value of “United States of America” to receive a Country Code value of “US”.
This or similar steps could be a unit for your business, but you do not need to limit your units to single steps. Your Tier 3 task campaigns should tend to be short sequences of work which are used in multiple contexts
Tier 2 (as well as Tier 1) are more flexible than Tier 3 campaigns as they can execute other campaigns themselves. These executables can be used to string sequences of other campaigns together alongside standalone flow steps. An example would be a Standard Data Enrichment campaign. Where normalizing a country code is a unit or task, this is a sequence of one or more data enrichment tasks that can be maintained and modified separately from the logic of the individual tasks themselves
You may find that your business does not need to use Tier 1 campaigns, and that you can satisfy your organizational needs with just Tier 2 & 3 campaigns. However, Tier 1 campaigns allow an additional layer of flexibility for you to manage your campaigns. Typically, one of these campaigns will call a mix of individual flow steps, and Tier 2 & 3 campaigns to assemble a flow for a typical lifecycle event, like a Standard New Lead Flow. These typically include data enrichment, normalization, scoring, and routing flows, which can be created as tier 2 or 3 campaigns.