Tips for Building Better Performing Smart Lists

Not applicable

We Marketo users rely very heavily on smart lists. The faster they run, the more efficient we are in the system. The way you build your smart lists can have a dramatic impact on how well they perform. Sometimes you can accomplish the same thing significantly faster simply by changing the order of the items in your list. I’m going to share some tips with you on how to build smarter smart lists.

First, the basic principles of smart list performance, which should be relatively self-explanatory:

  • Simpler filters run faster.
  • Fewer filters run faster.
  • Fewer choices within filters run faster.

When selecting filters, be aware that certain filters take longer to process. For example, activity filters (like Filled Out Form), Member of Smart List and Member of List require more processing power, so you want to be smart about how you use them.

The operators you use in your filters also matter. Logically, Boolean fields and operators like “Is empty” and “Is” are faster to process, because they are looking for a very specific value or one of just a limited number of options.


Not as Fast

Boolean field (true/false)

Is not

Is empty/is not empty

Starts with/not starts with

Is X with just one value for X

Contains/not contains

The number of values you use with these operators also impacts performance. Something with just one value:


will run faster than something with more than one value:


For “Contains” and “Not contains” in particular, we generally recommend keeping the lists under 100 values whenever possible.

One final tip: If you find yourself repeatedly using the same set of filters in smart lists, you may want to consider storing these repeated queries in a Boolean field (or potentially a segmentation). One of my favorite examples is our list of email exclusions. We don’t like to include people who can’t get email in our smart lists because it inflates our counts unnecessarily. But who wants to keep dragging these five filters into every email’s smart list?


Instead, run a batch campaign every day to populate an Emailable field and use this one field in all your smart lists for non-operational emails.


If anyone has any other tips for maximizing smart lists, please feel free to share in the comments!