How to add a dynamic image to a text message

Last updated at:

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 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.

How to add a dynamic image

  1. Select the flow message where you want to include your dynamic image.
  2. In the right sidebar, click Edit.Sidebar for a new SMS message in a flow
  3. Click the View details button in the upper right-hand corner of the Previewing tab.
    The Previewing box for an SMS, which includes the View Details button
  4. Find the data source for the image you want to include.
  5. Click the data source for an image's first variable, which will typically end in 0.
    Example of variables for an event within View Details
  6. On the left, click the Add Media icon (an image icon) in the Message box.
  7. Go to the Dynamic Image tab.
  8. Paste the dynamic variable or dynamic URL for the image.
    Example of pasting in the dynamic variable in the Add Media modal
  9. Click Save.
  10. 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: 

  1. Go to Analytics > Metrics
  2. Select the metric you want to use (e.g., Ordered Product). 
  3. Click Details for a specific event.
  4. Find either the SKU or product ID tag.
  5. 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"
    Example of the details for an Ordered Product event
  6. Paste this somewhere you won't lose it. 
  7. Navigate to a flow triggered by the same metric you just selected. 
  8. Select the SMS message where you want to include your dynamic image.
  9. In the left sidebar, click Configure Content or Edit.
  10. On the left, click the Add Media icon (an image icon) in the Message box.
  11. Go to the Dynamic Image tab.
  12. Paste in the following catalog tag:
    {% catalog %} {{catalog_item.featured_image.thumbnail.src}} {% endcatalog %}
  13. Replace id in {% catalog %} with the label you previously copied. 
    Example: {% catalog event.ProductID %} {{catalog_item.featured_image.thumbnail.src}} {% endcatalog %}
  14. 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

Was this article helpful?
27 out of 45 found this helpful