Iterable's Dynamic Content Builder makes it easy to display different message content to each recipient based on their individual attributes and behavior — no coding required. Dynamic Content Builder's simple visual interface lets you set up complex conditional logic in just a few clicks: display a different image, text, or snippet to each audience segment, and set up fallback content to show to recipients who don't match any of your criteria. Then save your block to use it over and over again in your templates!
Prefer to create dynamic content manually? That works too! You have the option of either writing the Handlebars code yourself or letting Dynamic Content Builder generate it for you.
In this article
Creating a dynamic content block
You can create dynamic content blocks in Email, SMS, Push, In-App, and Web App templates and snippets.
To add a dynamic content block in a message template, click the Dynamic Content button or drag and drop a Dynamic Content tile into the template.
This opens the Dynamic Content Builder menu, where you can set up your criteria for displaying dynamic content in your message.
Define your content block criteria
Setting up a content block involves two steps. First, you'll set up an if
statement that specifies the content to show to users who have a given set of
characteristics. Then, you'll set up at least one else if
statement that
specifies alternative content to display to users who meet a different set of
criteria.
For example, you might want to advertise a new adult drama to users who like dramatic programming and are at least 21 years of age. For users who are 20 or younger, you might want to display alternative content that advertises a new teen drama.
Here's how you could do that with Dynamic Content Builder.
if
statement
Set up an First, set up the criteria for your first audience segment. Select whether you
want to display dynamic content based on a user property or the occurrence
of an event. Then, select a comparator and your desired value for the
property or event you selected. For example, to create a content block that will
be shown to users if they've added "drama" to their Favorites list, you could
set up an if
statement with an event addedToFavorites
that contains a value
called drama
.
NOTE
If you choose to display dynamic content based on the occurrence of an event, the event you select must be the event that triggered the message send.
Then, if you want to add more conditions to your if
statement, click AND
or OR. For example, maybe you want to find users who are also (an AND
condition) or either (an OR condition) at least 21 years of age. Notice how
different the results of the criteria will be, depending on which statement you
choose:
Choose AND to send content to users who satisfy both conditions. This is a good option to reach a pretty specific audience (fans of drama who are 21 or older).
Choose an OR statement to send content to anyone 21 or older. With this approach, you might reach a broader audience who hasn't yet favorited dramatic programming.
NOTE
You can add up to four AND
/ OR
clauses to each statement, and you can add
multiple AND
clauses or multiple OR
clauses, but not both.
After choosing the criteria users must meet, select what type of content you want to display. You can choose:
- An image (maximum file size 20 MB and dimensions 1920 px width or height)
- Text (plain or formatted)
- A snippet
Not all message channels support every content option (for example, images are not supported in SMS templates). Only buttons for supported content types appear in your selected editor.
NOTE
You can display snippets with both the Snippet and Text options. When you select Snippet, only the snippet you select will be displayed. When you select Text, you can include a combination of text and snippets.
else if
statement
Set up at least one After you've added an initial if
statement, click Add Variant to set up
your first else if
statement. Then, set up the criteria for your second
audience segment, following the steps outlined above.
Repeat these steps until you've defined all the audience segments you want to show dynamic content to in your message block.
NOTE
You can add a maximum of one if
statement and five else if
statements in
each dynamic content block.
(Optional) Add fallback content
Some users may not match any of the criteria you set up in your if
/else if
statements. To avoid displaying blank content to these users, you can add
fallback content, following the steps outlined above.
Inserting a dynamic content block
When you're finished setting up your content variants, click Insert Handlebars. Dynamic Content Builder generates the Handlebars code for your dynamic content block and inserts it in your template or snippet. Save the template to apply your changes, and then schedule or send the campaign when you're ready.
Example use case
Promote new fitness classes
Let's say you work for a fitness company, and you want to promote different exercise classes to different audiences based on their individual workout preferences. Using Dynamic Content Builder, you can send a single message that displays the right content to each group of fitness class fans.
Current feature limitations
There are a few limitations for the initial release of Dynamic Content Builder in September 2023:
- Dynamic Content Builder is not currently available in Iterable's Drag and Drop template editor.
- It isn't possible to create a set of Catalog items within a template.
- Data feeds are not supported in Dynamic Content Builder.
- You can't use Dynamic Content Builder to reorder content stored as arrays in user profile or event fields.
Want to learn more?
For more information about some of the topics in this article, check out this Iterable Academy course. Iterable Academy is open to everyone — you don't need to be an Iterable customer!