You will learn
Learn how to add a dynamic image to an MMS message in Klaviyo.
Including a dynamic image allows you to personalize your text messages. For instance, you can show someone the exact product they viewed, started a checkout with, or bought.
Before you beginBefore you begin
Depending on your use case, you may not always be able to add a dynamic image.
- Only metric-triggered flows can use dynamic images based on event data (e.g., items from a checkout or placed order) or on catalog tags for an event.
- Campaigns and list- and segment-triggered flows can have dynamic images only when the image URL exists as a custom property on the recipient’s profile.
Also, it's important note the following regarding dynamic images:
- Only 1 dynamic image is allowed per MMS.
- Images should be under 600 KB; otherwise carriers will compress it, which may make the image look distorted.
- If you try to send a dynamic image with a sending number that doesn't allow for MMS, the message will send, but the image will be removed.
- You can use conditional statements with dynamic images.
- Mobile carriers don't support WebP files, and attaching this type of image may cause the message to fail.
How to add a dynamic image
- Select the flow message where you want to include your dynamic image.
- In the right sidebar, click Edit.
- Click the View details button in the upper right-hand corner of the Previewing tab.
- Find the data source for the image you want to include.
- Click the data source for an image's first variable, which will typically end in 0.
- On the left, click the Add Media icon (an image icon) in the Message box.
- Go to the Dynamic Image tab.
- Paste the dynamic variable or dynamic URL for the image.
- Click Save.
- Check that the dynamic image was added correctly by making sure one appears in the preview screen.
Use catalog tags
You can also use catalog tags to add dynamic images in the MMS. To do so:
- Go to Analytics > Metrics.
- Select the metric you want to use (e.g., Ordered Product).
- Click Details for a specific event.
- Find either the SKU or product ID tag.
- Copy the label for the tag (except any parentheses or colon) so you have the exact spelling and capitalization.
In the example below, we copy "ProductID"
- Paste this somewhere you won't lose it.
- Navigate to a flow triggered by the same metric you just selected.
- Select the SMS message where you want to include your dynamic image.
- In the left sidebar, click Configure Content or Edit.
- On the left, click the Add Media icon (an image icon) in the Message box.
- Go to the Dynamic Image tab.
- Paste in the following catalog tag:
{% catalog event.id %} {{catalog_item.featured_image.thumbnail.src}} {% endcatalog %} - Replace id in {% catalog event.id %} with the label you previously copied.
Example: {% catalog event.ProductID %} {{catalog_item.featured_image.thumbnail.src}} {% endcatalog %} - Click Save.
Example of using conditional statements
Dynamic images can use conditional statements.
Below is an example of an if/else statement to say that if there's a variant image, show that to recipients; else, use the default image:
{% if event.extra.line_items.0.product.variant.images.0.src %}{{ event.extra.line_items.0.product.variant.images.0.src }}{% else %}{{ event.extra.line_items.0.product.images.0.src }}{% endif %}
Note that exact format for these statements depends on your integration, and you should not copy them from email templates.
Additional resources
- Find more MMS image and GIF best practices
- Learn more about event variables in Klaviyo: