📣 Product updates September 2024. Learn more →
Vero logo
The Future of Personalization: Use Real Data to Personalize Emails

The Future of Personalization: Use Real Data to Personalize Emails

Email is one of the most successful marketing channels. That means it is getting noisier. You need to be thinking about personalized emails if you’re going to be competitive. If you want to win the inbox, you need to get involved.

At this point in history, you know more about your customers than ever before. With the right framework, you can put this data to good use.

The trick to getting the most out of your data is let go of having everything come from a single neat source and get into the idea of capturing everything you can about every user, all the time.

That is what this post is about.


The following email is a favorite of mine when it comes to great examples of personalization. It’s from Airbnb.

Click the image to see the full email.

Airbnb email

There are three things that were required to send an email this good:

  1. Airbnb needed to know who was on their site and what they last looked at (the Urban Treehouse in Portland, OR, as per the screenshot).
  2. They needed to have a way to dynamically insert this data into an email.
  3. They needed a way to send that email, and track its results.

Airbnb is a big company with a lot of very smart people working on this problem (shout out!).

This week’s post is the first in a semi-regular series of posts that we’re calling Highlight.

These posts are a no-bullsh*t look at my thoughts (as CEO and Co-Founder of Vero) on how you can create better customer experiences with email.

This first post is about creating emails like Airbnb’s example above, and the thought process that has gone into capturing customer data with a tool like Vero – a tool that helps you send emails that make use of all the data you have on your customers.

Data is mutable

Any email platform that says “you can create amazing emails like Airbnb, without ever talking to IT” is making it up.

BUT that doesn’t mean you should give up! The first step to doing anything well is confronting the facts.

After three years and working with some phenomenal companies, here’s how the BEST companies look at creating great emails:

IT is a core competency of any modern company, yet in order to harness the power of email, a platform needs to be setup to help capture and normalize customer data so that IT and marketing can create and test campaigns and customer experiences faster.

That is to say, you need to find a way to store your customer data so that you can move faster than the competition.

At Vero, we use Vero as this customer data layer, and here is what we do (it works well):

  • We use traditional HTML forms, generated in Vero, to capture emails around our blog. These forms add users to our Vero database, and capture data about where they came from. This is the most basic place to get started.
  • We also use Vero’s Javascript library via Google Tag Manager on our website to track interactions with all our landing pages and content (such as tracking you’re reading this post right now).
  • We use Vero’s Ruby library to track activity inside Vero’s core Ruby on Rails application, tying activity to profiles already in Vero. We have a full history for some users, from the time they first read a blog post, to the time they sent their first email in Vero.
  • We run a nightly script that pushes in extra, calculated user fields from our central data store, such as the number of emails a user has sent in the last billing period. We do this using raw API calls to Vero.

Vero matches all of this data up, normalizes that data and stores it per user. As a marketer, know what I can get my hands by looking inside Vero’s UI and seeing this data stream in.

In doing this, Vero becomes a center of truth that knows more than any other database about our customers.

It knows when someone signed up to the blog. It knows which form on the blog they came from.

It knows when they visited the home page, and how many times. It knows which pricing plan they clicked to sign up for a free trial. It knows when they sent their first email. It knows if they pay or not. It knows if they’re an administrator or a normal Vero user. It knows if they sent 1,000 or 10,000,000 emails this month.

I don’t have play with the data capture sources every day and Vero’s ability to anchor data to an individual user makes it a fantastic data layer for our customers’ information.

Every smart company I’ve talked to has a similar data layer. It might be their own huge data warehouse, it might be a SaaS tool like Vero. It might be a combination of both.

Vero gives you a lot out of the box to help data like this and, once it’s flowing, you can pump in as much as you want, from multiple sources, and let Vero do the heavy lifting of matching it all up.

As my friend Will Egan says:

The trick to getting the most out of your data is let go of having everything come from a single neat source and get into the idea of capturing everything you can about every user, all the time.

I think Will is right, and that is what this post is about.

Using this data is where most fail

At this point, you’re hopefully seeing that the trick we’re using above is to think about capturing data under a specific paradigm.

There are two key things I think about when capturing data:

  1. Who is the user receiving this email? What is their name, what type of business are they, how old are they, what timezone are they on?
  2. How did they interact with X? X could be a product. X could be a listing on Airbnb. X could be a file on Dropbox. In our case, X is often a feature or a piece of content.

For 99% of the businesses on the Internet, these two concepts will be the same: you need to be thinking about who your users are and how they interact with your product, store or application.

This second point is generally the most interesting, particularly if you want to craft personalized emails.

For a decade, email marketing tools have given you a leg up by letting you insert merge tags for things like customers’ first names and unsubscribe links.

Here is an example of a basic merge tag from Mailchimp: *|FNAME|*

At the time of sending, this merge tag will be replaced with the recipient’s first name. This was and remains a super neat concept, as it lets you personalize each email going out.

Another example is *|UNSUBSCRIBE|*, which inserts a custom unsubscribe link per recipient.

The focus of this post is to show you some of the more interesting merge tags you can use in modern email marketing, and how some customers use merge tags in Vero.

Using your data to personalize

As I mention above, there are two key things to think about when crafting your emails: the user and the actions, or events, that took place in relation to various objects (your products, your application, etc.)

At Vero, we’ve elected to use a templating language called Liquid. Liquid was developed by the awesome team at Shopify. It is the templating engine that runs every Shopify webpage.

It is neat because, as the article above shows, you can do lots of fancy things with your templating using Liquid.

If you were Airbnb, you could iterate through listings the customer viewed, like this:

{% for listing in listings %}
{{listing.name}} costs ${{listing.price}} per night. 
Go back and <a href="{{listing.url}}">Check it out</a>.
{% endfor %}

This in itself is pretty amazing, as Liquid helps you unlock and insert more complex, personalized data into your emails just like you used to insert a first name. That means you can insert the data wherever you want in your template, with complete control over how it looks.

It also means every single email that is sent out will be completely customized for the person receiving it.

In Vero we’ve mapped the merge tags you have available to these two key concepts of a user and an event.

With a user, you can insert anything you have captured about that user. You can even manipulate that data on the fly, without calling in an engineer (an example of where there is a nice hand off between IT and the marketing team).

Some example for clarity. Here’s a few things I’ve personally used time and again at Vero when creating our own emails:

{{user.first_name}} – a simple one, inserting a user’s first name.

{{user.emails_last_period}} – “Hey John, you sent 25,000 emails last month” has never been easier.

{{user.signed_up | date: '%d %m, %Y'}} – “Hey Jenny, you signed up seven days ago on 2 July, 2015”. This is an example of manipulating my data on the fly.

That’s cool in itself, but fairly reminiscent of what you’ve always been able to do with Mailchimp and other tools.

Where the real power begins is the ability to insert any of the data I’ve captured about what a user does into my emails.

For a specific example, if I were Airbnb and I was tracking an event called Viewed listing using Vero’s Javascript widget, I would also be able to track event properties and send through everything I know about that listing. I could tell Vero the listing’s name, the nightly price, the city the listing is in and so on.

I would then have the power to re-create the email I shared at the top. I would craft an automated email campaign that has the following rules:

When a user Views a listing, send them an email 20 hours later if they have not made a booking.

I could then create the body of the email and insert all of the details I captured with that Viewed listing event. I could do something like:

Hey {{user.first_name}},

{{event.name}}, just ${{event.price}} per night.

Take another look at {{event.name}} to see if it’s a good fit for your upcoming trip to {{event.city}}!

If you have questions, please check out our Help Center.

The Airbnb Team

We use this approach at Vero and it helps me create emails as powerful as any other company, without a team of 20 people to help me execute.

With a little investment in my data strategy, I get huge leverage.

You couldn’t do this before

Every day at Vero our team puts a lot of thought into how we can make our toolkit even easier to use. We work with companies that want this kind of personalization and we’ve built a great API and approach to storing and caching this data that means you don’t have to do all of the heavy lifting.

If you can get your head around the concept of users and the events they trigger, then you have a instantly get a whole new set of data at your fingertips.

I’ve spoken with a large number of sophisticated companies that send emails similar to the Airbnb example above. Prior to discovering a tool like Vero, many of these businesses actually built fancy CMS systems that would do things like:

  • Nightly, or on demand, query a database, pulling out the price, name, and city of the last listing a user viewed.
  • Store these data values as individual columns and dump the data into a CSV so as to push it into a new list in Mailchimp or a more traditional email marketing tool.
  • The marketing team could then access Mailchimp and create a one-off email to this new, temporary, list at a set time.
  • After this send, the list was useless so it would be discarded.

This approach certainly works, however it doesn’t have the continuity that building emails around a CRM has.

There are at least three things that come to mind as frustrating with this process:

  • You end up with lots of lists with different data, rather than one view of a user.
  • Typically internal datastores can’t easily capture what happens on site. They also often can’t re-identify a returned user via a cookie. One neat thing about Vero is that when a user receives an email and clicks-through, Vero’s library automatically appends more on-site event activity to their central profile, even if they have cleared cookies or are on a secondary device.
  • You can’t trigger the email relative to the actual time the user took the action. You typically settle for sending a batch to users that have Viewed a listing in the last day / two days days, as opposed to sending an email exactly two days after this user received the email.

On top of which, you had to build your own CMS / cron job set to manage the process, which is usually a much larger investment, particularly over time, than people realize.

Pitfalls to keep an eye on

Tracking data into a tool like Vero with the user and event paradigm works very well, though it’s important in this Spotlight post to highlight two key things to watch out for:

Get the data flowing initially

Tracking data in this way can be done by almost anyone at a simple level but, to truly get value and send emails like an Airbnb, Amazon or TripAdvisor, you need your engineering, product and marketing teams to work together to push data into Vero as soon as you can.

In my opinion this is vital if you want to build a really engaging customer experience, so it doesn’t come as a surprise to most.

Fortunately, we’ve kept our API simple at Vero to help make this process easier. There are only two end points: tracking a user and tracking an event. I’ve seen customers with over 10 million users get setup in a few hours.

A good rule of thumb: track every customer action with every important feature/product on your site.

What if my data changes?

Your data will certainly change, and that’s perfectly okay. Over three years of helping companies do this sort of tracking, the tendency is to track more over time. There are times when you’ll want to go back and fill in missing events, and this can be done via API or CSV, but typically it doesn’t present a large problem as event-based data is most highly leveraged in triggered emails, and new triggered emails typically get sent from today onwards, rarely meaning there is a requirement to backfill every single event for every user.

It is coming to terms with this last point that seems to be the biggest challenge, but the ultimate outcome is a platform with data that you can use to segment and automate in real time, along with having the ability to personalise each individual email that goes out.

Viva la data

This is something that the majority of companies have never had access to before, and it’s an exciting time for online businesses, as tools give them the support to really tailor their customer experiences.

Please ask me questions in the comments if you have them. I spend a lot of time thinking about these challenges and many of our readers have a lot of experience in this field.

Over and out.

Want to send more personalized mobile and email messages to your users?

Check out Vero, customer engagement software designed for product marketers. Message your users based on what they do (or don't do) in your product.

Sign up for free

Consider signing up for a free trial. No credit card required.

Vero Cloud Workflows
  • Dribbble logo
  • Unsplash logo
  • Docplanner logo
  • Pipedrive logo
  • Snappr logo
  • Stockpile logo
  • Stickermule logo
  • End logo
  • Flock Freight logo
  • Ausmed logo
  • CodeSandbox logo
  • Dovetail logo
  • Uno logo