Use Google Annotations

  • 6 December 2020
  • 29 replies

Badge +3

Hello guys, hope your holiday season was successful.

My name is Adir, I am the CRM manager at Maelys Cosmetics.


I have a question for you all, did someone tried to use Google Annotations?

Pre show the image, coupon? If you have any tips or tricks, that can be great.


We would like to take our email marketing activity to the next level after conquering email automation, segmentation, SMS campaigns and all Klaviyo’s best practices.


Best answer by Taylor Tarpley 3 July 2023, 17:12

View original

29 replies

Badge +2

Sales Force were able to get it working inside their editor with no issues -

Userlevel 7
Badge +59

Hi all,


Thank you all for the collaboration, sharing and troubleshooting you’ve demonstrated together with your peers in the Community! After conversing with our team, I was able to confirm some best practices that would be helpful in sharing!


In addition to confirming what @cassy had previously mentioned that Google Annotations will not work through a drag-and-drop editor, this will require a custom coded HTML template. Our experts were also able to share that some success can be seen when following these two steps:

  • Disable the setting ‘Enable embedded styles’ under account Settings > Email > CSS Optimization
  • create and upload the template as a pure HTML template. I actually couldn’t see the option to do that via the new editor, so you have to do ‘Create Template’ and then select the old editor, and then select the upload tab that then shows up and import it there


While we have seen some success using these two steps listed above, guaranteed placement is outside of Klaviyo’s control and ultimately up to Gmail/Google. This includes configuring a banner image to show and following the syntax laid out by Google. Within our own tests we were not able to find a permanent method to configure annotations in Klaviyo to permanently secure display in a certain section of the promotions tab.


Hope this helps!



I also want to add this code to my promotional emails. Klaviyo team, please fix it of us!

Badge +2

Any chance of a response Klaviyo team?

Badge +2

@Klaviyo Team where are we with this?


Every other ESP has support for this now. When will this be integrated into your editor?


Would love to hear from anyone that has got this working, particularly anyone managing to get carousel images to show in Promotions tab. For me, after following all the steps from Google and mentioned about, still not seeing the annotations/images.

Sorry I forgot to quote your message to reply. Hope you see my message above and Klaviyo can shed some light on this.


I have the code working inside Googles Preview Tool, but it doesn’t actually work when Klaviyo sends it out.

I think it has to do with Klaviyo blocking scripts so you need to use Microdata.

Then even once you have the Microdata and add it to the email head section, Klaviyo moves all that code to the body.

Even with the gmail promo annotations microdata code being added inside the body, the preview tool shows it working, but when testing, I could never get it to show up in the email once Klaviyo delivers it to a Gmail recipient.

Would love to hear from anyone that has got this working, particularly anyone managing to get carousel images to show in Promotions tab. For me, after following all the steps from Google and mentioned about, still not seeing the annotations/images.

Badge +3

Not really, unfortunately. I tried a few ways to test, but none ended up like I was hoping. 

I’ve been on other projects since, but plan to try get this working somehow!

Any luck on this? I can't seem to make it work even with the fix that @gjoyce-SHEEX  posted.

Badge +3

For one, you have to convert your template to HTML, then you can add the microdata version – the script ones get removed.

However, still no luck getting dynamic content to display.

For example, instead of static 
<meta itemprop="reservationNumber" content="abc456"/>
I need
<meta itemprop="reservationNumber" content="{{ event.reservation_id }}"/>

Going to try do it inline...


Whatever I paste on Klaviyo’s editor gets stripped! - see attached.

This is not working for me.

I don’t see how this thread is marked as SOLVED?

Note: I checked the allow CSS options under my account settings.



Badge +5

I added both this code and it didn’t populate in Gmail and also the code they provide in this page.


Seems to not work, can someone help by sharing a workable code and maybe a template that goes with it?

Badge +3

When I try add metric event data, it breaks. 

Was the above example static or dynamic?


For those following this thread, I was able to successfully code this markup using microdata that did not get stripped from Klaviyo templates (like the json script) and successfully rendered in the gmail app in a test email. Here is the code that should be placed underneath the opening <body> tag in your email. In the example below, the schema elements match those shown in the Email Annotations previewer on the Google Developers Site.


<!-- ======== GMAIL PROMO TAB ======== -->
<div itemscope="" itemtype="">      
  <meta content="" itemprop="logo"/>

<div itemscope="" itemtype="">      
  <meta content="[Important] Please add subject line in annotation" itemprop="subjectLine"/>

<div itemscope itemtype="">
  <meta itemprop="description" content="20% off" />
  <meta itemprop="discountCode" content="PROMO" />
  <meta itemprop="availabilityStarts" content="2022-01-04T13:05:30-08:00" />
  <meta itemprop="availabilityEnds" content="2022-01-07T13:05:30-08:00" />

<div itemscope="" itemtype="">      
  <meta content="" itemprop="image"/>
<!-- ======== GMAIL PROMO TAB END ======== -->


Playing with this today and still no luck. Seems real surprising that Klaviyo won’t fix this so emails can stand out better in the Gmail promo tab.

Badge +1

Curious if this works yet

Badge +1

@jingrid Any updates on getting this to work? I’d like to have annotations added to our emails but the code is being stripped. Even with the CSS optimization turned off and other scenarios presented earlier in this thread.

Userlevel 1
Badge +2

Hi @AdirMaelys @Mailbox Manny -- Apologies for the delay here. There’s actually a setting in your Klaviyo account that, when unchecked, will allow your HTML snippets stay untouched (under Accounts > Settings > Email > CSS optimization), which in turn, will enable your Google Annotations to function properly. 


There are a few considerations to think through before unchecking that setting, which are outlined here:


Hope this helps! 




Badge +3

No luck over here, we gave up implementing it on our side - with no one from Klaviyo’s side that can look at it and try it “hands-on”.

Badge +1

Hi @AdirMaelys and @itailu, @jingrid 


Did you guys successfully add the code? I tried a few different ways, but I can’t make it work. 
Please let me know!


Thank you,


Badge +3

No, I spend a lot of time on it and failed to succeed.

I guess google determines who they want to show it to or not.


But you’ve managed to send the email with the code inside? Have you tried sending it to a large audience?


They must make it more simple like Optimove. Why it is so complicated in Klaviyo like AMP, we are in 2021 not 2015.

Userlevel 7
Badge +38

Hi @AdirMaelys and @itailu


Curious, did you get this to work while testing? I’ve tried what Google suggested in creating an email that ends with and have it being sent to the Promotions tabs, but can’t seem to get the annotations to show up in my inbox. 


Userlevel 1
Badge +2

@itailu Good catch. One thing I noticed in what I shared was that the divs weren’t properly scoped. In order to match what Google provided in its documentation (linked in my previous post), we need to make sure each div encapsulates the relevant meta tags. 

Here’s my revised boilerplate for you to try:

<p>Google Annotations Test</p>

<div itemscope="" itemtype="">

<!-- The below .png is your logo -->
<meta content="" itemprop="logo" /></div>

<!-- The below .png is the image that shows in the Promotions inbox -->
<div itemscope="" itemtype="">
<meta content="" itemprop="image" /></div>

<!-- The below contains the description, discount code, and discount availability to display -->
<div itemscope="" itemtype="">

<!-- This contains the description for the discount -->
<meta content="20% off full-price styles" itemprop="description" />

<!-- This contains the code for the discount -->
<meta content="20OFF" itemprop="discountCode" />

<!-- This contains the availability start date for the discount -->
<meta content="2021-01-01T08:00:00-07:00" itemprop="availabilityStarts" />

<!-- This contains the availability end date for the discount -->
<meta content="2021-12-30T23:59:59-07:00" itemprop="availabilityEnds" />


Badge +1

Hey Ingrid.

Unfortunately it doesn’t seem to work.

The template does save with the annotations, but the email comes to Gmail without them in its body.

Can you please check it on your side? Maybe it strips down the tags before sending?