SendGrid Dynamic Images via Substitution Tag does not show

My E-mail with image module shows blank instead of the four images sent using substitution tag via dynamic templates.

I’ve read & replicated solutions provided in the forum Sendgrid Dynamic Templates > using variables / substitution tags & Displaying dynamic images in SendGrid emails, but images are still not showing.

To give me more insight on the issue - I’ve placed the same substitution tag under text & image modules. Text module for {{images}} shows full URLs, and the correct images are shown when clicked. However, the same {{images}} with exact URLs do not appear in my image module.

Original Message in Gmail shows that they are present, but not rendered.

Try using three curly braces {{{var1}}}

Thank you for your suggestion. Unfortunately, it didn’t work.

Hi, did you try this How to add dynamic images to an email with sendgrid?

I did not have the opportunity to use dynamic images in my sendgrid emails yet but it’s something I might be doing soon so if this works please let us know :wink:

Hi, there @tbenita.

I appreciate your time & reply. I have tried it. I have no issues with relaying/referencing a single image. I used {{variable_name}}, and it works without a hitch.

My issue seems to stem from outputting multiple images from one variable. An array of images.

I haven’t figured out a way to pass an array of images, but I’ve come up with a temporal solution that references the image one by one.

It is as follows:

I came across this idea by revisiting old forum posts with somewhat similar issues as mine.

Your workaround seems to be a good idea, although I bet it’s not optimal since the number of images may vary from one e-mail to another :slightly_frowning_face:

I’ve tried and did not come up with any better than that…

It seems to me that the “issue” lies on SendGrid’s end since there is no container specifically designed to handle a (varying) number of images like some sort of caroussel or slide show or viewer. More a missing feature than a real bug from my point of view.
However according to what I’ve come across in my research it seems that css coding (instead of the WYSIWYG editor) in SendGrid could be a solution but not something I can help you with unfortunately

Yes, I concur. It definitely isn’t an ideal solution for varying image numbers. I’m lucky that my Emails are set to only four images regardless of the situation.

If you’re still looking, this may help a little.
Iterations | Twilio (

It specifies using iterations & it may be what you’re looking for.


You can pass an array of image by formatting it in bubble. Here’s an example:


You may or may not use the line break, it’s up to you.

As for the format in sendgrid’s html editor, use {{{substitutionTag}}} like what @johnny said.

Hope this helps!



This topic was automatically closed after 70 days. New replies are no longer allowed.