Gmail won't display images from external sources or inline base64 from my HTML emails

2.4k views Asked by At

I'm automating some HTML email notification to my users in my node server, sending emails using Nodemailer and one of my 'no-reply' g suite emails.

In my node server, I build my HTML emails dynamically, based on content and notification type, and in all of them I want to include social media icons, my company logo (served from my server public assets folder) and in some of them an inline base64 qrcode for user interaction.

In Outlook all images are perfectly visible, even the base64 one, but when I try to view it in gmail, it just won't display. This has something to do with the proxy that gmail uses by default, but I couldn't figure why this is happening with my emails.

I receive tons of html emails with images in gmail, and all them work pretty fine.

I've done a lot of research already, and followed all tips related to gmail 'Images' configs, but nothing works.

What can I do to make my images visible in gmail??

Thanks!

1

There are 1 answers

2
gwally On

Base64 images are not supported by Gmail, Yahoo and problematic in other email clients.

The best way to make your images visible is to host your images remotely and link to them.

As an example:

<img src="https://via.placeholder.com/200x50" width="200" height="50" alt="alt_text" border="0" />

As opposed to:

<img alt="Embedded Image" src="data:image/png;base64,ieMailBoreGoWALLYNSUyEAAAEIEIO..." />

Good luck.