Skip to main content

Case Studies

Using Smart Lists in Adobe Marketo Add Choices (to Standardize Data)

Man placing red block to bridge a gap between unpainted blocks

If you’re familiar with the Marketo Add Choices feature, you know that you can make some incredible efficiencies in your program architecture with it. In short, this feature allows you to further filter records beyond the original smart list – inside the Flow Steps – as specific actions require. Without this feature, many use cases would require substantially more Smart Campaigns to achieve the same results.

One extremely powerful, but often overlooked, type of Add Choice is “Member of Smart List”. Most Add Choices are constrained to one specific data point, such as “Company Name is”. When executing a Flow step like “Add to List” or “Delete Person”, this Add Choice gives you complete control over who qualifies for the Flow action and who is skipped.

I’d like to share a delicious data standardization example where this feature comes in useful.

Imagine you want to order bread pudding but your menu lists Bread Pudding, Brad Pudding, Bread Pidung, Brid***PUDING, and dozens of other strange bread-pudding-like mutations as options. Making a decision with these choices is awkward.

All of these variations make it awkward for Marketo to make decisions too. If I told Marketo that “Bread Pidung” was my favorite dessert and there was a segment in place to display a customer’s favorite dessert in a future promotion, I would just end up in a Default segment instead of the Bread Pudding segment; in a future communication I might see messaging about cookies and not be as likely to convert as if I were to see my favorite dessert instead.

Let’s look at the benefit of using this Add Choice in the data standardization cleanup process.

Case Study: What’s the problem & what’s the strategy?

Your client’s menu has five signature desserts and they want to know their customers’ favorites so they want to use dynamic content to promote menu updates to their customers. The Dessert field’s options are Cookies, Bread Pudding, Cake, Gelato, and Flan.

The problem is that your client’s Marketo database has 10,000 variations of favorite desserts because they have been allowing their customers to write in their favorite dessert for years.

Without safeguards in place for string-type data fields like this, users and other connected platforms can insert any values they want into your Marketo database. Over time, thousands of permutations like this can occur and impede your marketing automations from functioning.

After some analysis, you find you can standardize quite a few of these into your five options – but there are many stored values that you just cannot use:

  1. Cookies: 1,200 variations found among 50,000 records
  2. Bread Pudding: 35 variations found among 25,000 records
  3. Cake: 450 variations found among 30,000 records
  4. Gelato: 60 variations found among 15,000 records
  5. Flan: 15 variations found among 5,000 records
  6. Other: 8,240 variations found among the remaining 80,000 records (with fewer than 20 records qualifying for every variation)

Our recommendations would be to 1) develop safeguards to data variations, and 2) standardize everything we can, and null what we cannot standardize.

Strategize: Consider platform limitations when designing the cleanup activity

We know a few things about Marketo’s Smart Campaign Flows:

  • There is not a hard limit on the number of Flow steps, but it is riskier to manage too many, and your browser can slow down after adding about 50.
  • You can add lots of variations in Smart List & Add Choice filters using the Multiple Value Chooser, but there is a limit of 50,000 characters per filter.
  • Regular Add Choices refer to only one filter (usually a database field or activity).
  • Once an Add Choice is found to be true for a record, the subsequent Add Choices in a Flow step will skip that record.

With these facts in mind, we identify some obstacles to standardizing these fields using regular Add Choices:

  • Cookie (1,200) and Other (8,240) variations will likely exceed the 50,000-character limit of the Multiple Value chooser.
    • Resolution: Create a smart list for each of these two conditions.
    • Reason: Smart lists can contain MULTIPLE filters and ANY logic to build a more comprehensive list. Each of these filters has a maximum of 50,000 characters, but there is no maximum number of filters a smart list can hold. This keeps every record in one place in our Flow using one Add Choice.
  • 8,240 Other variations is a lot. What if we accidentally include our desired Cookie, Bread Pudding, etc., values in this Add Choice and unintentionally null the field for these records?
    • Resolution: Placing Others as the last Add Choice.
    • Reason: This addresses our concern about possibly missing good values because the other Add Choices will have already executed, leaving no chance of unintentionally nulling any good records’ Dessert values.

Design: Meet our requirements and avoid known risks

We would build the Flow like this:

1-Change Data Value:

  • Choice 1: If Member of Smart List in “1200 Cookies”, New Value for Dessert: “Cookie”
  • Choice 2: If Dessert is (identified Multiple Values for Bread Pudding), New Value: “Bread Pudding”
  • Choice 3: If Dessert is (identified Multiple Values for Cake), New Value: “Cake”
  • Choice 4: If Dessert is (identified Multiple Values for Gelato), New Value: “Gelato”
  • Choice 5: If Dessert is (identified Multiple Values for Flan), New Value: “Flan”
  • Choice 6: If Member of Smart List in “8240 Others”, New Value for Dessert: “NULL”

By referencing Member of a Smart List, we can define a more substantial variety of criteria in one Add Choice and enable Marketo to null all Other values in the affected records in one choice in the same flow as all of the other State standardizations.


Caveat: Using the Member of Smart List Add Choice in Trigger vs. Batch Campaigns

Adding “Member of Smart List” introduces additional smart list queries to the Flow process, introducing unnecessary system strain when employed on a trigger basis.



As a Marketo expert, it is up to you to distill your client’s requirements into logic that the platform can reliably execute. Data variations block marketing automation from making decisions and you must standardize the data. Using “Member of Smart List” as a Flow Step Add Choice is an excellent way to define a massive amount of criteria in one simple flow step.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Zack Everett, Senior Technical Consultant, Marketing Automation

Zack Everett is a senior consultant and Adobe Certified Master - Marketo Engage (formerly Marketo Certified Solutions Architect/MCSA). Zack has 10 years of experience in digital marketing, communications, and campaign automation at education and STEM nonprofits in Washington, DC. Client enablement is the most satisfying part about consulting for Zack. Outside of the workplace, he is passionate about music, the environment, and reading nonfiction (especially about biological and social sciences).

More from this Author

Follow Us