How to create interactive product images with AMP for Email

Up your e mail coding techniques with this action-by-stage AMP for Email tutorial. Produce your very own e-mail that allows readers transform the colors of a solution impression.

In this this tutorial you will study how to build an interactive e-commerce e-mail information. We’ll display screen a products with many colour alternatives. The reader will be able to push each coloration and dynamically update the solution graphic. Here’s what it appears to be like (see the whole code example):

An example of an interactive ecommerce AMP element in an email.
As found in Yahoo Mail inbox

Although it is a comparatively straightforward illustration, you will come to be acquainted with a number of essential AMP for E-mail factors this kind of as:

  • amp-img an AMP alternative for the html5 img tag.
  • amp-selector a command for deciding upon one or additional alternatives
  • amp-bind responds to consumer actions these types of as hovers, clicks, sort submissions, etc.

To give you an concept of what else can be with these parts, here’s a a lot more subtle instance from Google. This provides the more complexity of demonstrating unique solutions (the 1-pack, 2-pack, and 3-pack) and lets people today see individuals products in distinctive hues, but the principle of what you’ll discover underneath is the exact same.

An example of AMP for Email that uses interactive images for different product packs.

Action 1 – Swift Start out with the AMP Playground

We will use the official AMP Playground for this tutorial. I’ve absent in advance and bundled some fundamental CSS for laying out our product image and the colour selectors so you can aim on studying how the AMP components do the job.

Check out this customized AMP Playground for a swift way to get began.

An example of the code that generates the AMP ecommerce email element
The AMP Playground, established up just for this tutorial. See code in AMP Playground

Phase 2 – Insert The Products Details

Code at conclusion of Step 2

Let us start laying out the concept. We’ll start off with the product tile, description (just shade in this scenario), and the solution illustrations or photos. Insert the subsequent inside the .

45 Qt Really hard Cooler

Coloration Amber

Note, we’re employing [text]=colorChoice. This is a hook that we can use afterwards on in the tutorial to update the merchandise description with the decided on coloration. For case in point, when the person chooses “Blue”, the textual content will dynamically update from “COLOR Amber” to “COLOR Blue”.

Up coming let us insert our initial product picture. Let us get started with our default coloration, Amber.

The is contained in a div with a little bit of logic, [hidden]="!(colorChoice == 'Amber') which suggests that the Amber solution picture will only be viewed when the person selects the Amber color.

Next, insert the remaining item photographs, one for just about every shade. Every of these will originally be hidden, as the Amber shade will be the default products variation.


An example of the AMP email code and the image is generates.
Location the initial products format. Perspective code in AMP Playground

Phase 3 – Introducing the Shade Decisions

It is eventually time to insert a selector for every single of the coloration solutions. We’ll use with the default, single-choice location so that they perform a lot like a radio button. And on selecting a colour choice, the amp-point out will be up to date to reflect that coloration choice. The improve to amp-condition allows the rest of our document know to alter the products impression and the colour description. Add the next beneath the product aspects.

The has an celebration induce. When it is chosen, it updates the colorChoice variable. This variable is applied to display the suitable solution graphic and to update the color description text in the solution aspects.

on="decide on: AMP.setState(colorChoice: event.targetOption)"

At this point, go in advance and attempt selecting every colour selection. You really should see your products specifics update appropriately.

What the code for the AMP email looks like later on in development
Incorporating the item shade selectors. Watch code in AMP Playground

Knowing How it Performs

Here is a summary of the essential ideas used in this example.

Color Selectors: The color selector, , has a “select” celebration. When the motion occurs, it updates the colorChoice variable all over the document. ( is what associates an motion with a single or far more updates to the document.)

on="pick: AMP.setState(colorChoice: celebration.targetOption)"

Product Photographs: The products images have standard logic to cover or clearly show just about every image centered on the benefit of the colorChoice variable. Example: hidden = Genuine when colorChoice is not equal to ‘Amber’.

[hidden]="!(colorChoice == 'Amber')"

Product or service Description: The product or service description text also updates to the worth of the colorChoice variable.


Clearly show us what you developed!

Following, I propose sending you a duplicate of the information you produced from this tutorial. Use an electronic mail company service provider that supports AMP for Electronic mail such as AWeber or use the Gmail AMP Playground.

If you have been impressed by this put up, I’d really like to see what you designed! Share in the responses underneath or ship me an electronic mail and request me to consider a look.

Leave a Reply