Use Cases



Developer How-Tos

How to Personalize Content on your Website using Your CRM Data

These days, most marketers wants to accomplish "personalization" on their websites - but what does that mean? And how do you decide how to personalize content?

This guide will walk you through the process of deciding how to personalize your content and even includes some data flow diagrams to help you plan.

There are 7 steps in this guide:

  1. What is Personalization?
  2. Defining Personas
  3. Defining the Personalized Content 
  4. BONUS: Calculating How Much Content You'll Need
  5. Deciding on a Personalization Approach
  6. Personalization to Optimize for Resources
  7. Personalization to Optimize for Security
  8. What if my CMS doesn't support personalization?

Before Getting Started

First, make sure this is a prioritized and budgeted initiative. It's cliché, but personalization is best implemented with a crawl, walk, run approach. We suggest if this is your first time exploring on-site personalization to with something small, like a homepage slider, or suggested products. Then, branch out into more areas of the website and define a more structured approach to personalized content. 

For this tutorial, we are making the assumption that the personas are defined in your user system. Meaning, if someone logs into your website, content is defined to enhance their experience. We also assume there is supplemental information about this person that may be stored in an external CRM, like Salesforce. If you're not using Salesforce, this tutorial can still work for you.

If this does not suit your use case, we encourage you to still read through and see if this helps you plan your strategy to tackle personalization. If you need help, contact us in the chat to the right and one of our Solutions Engineers can help.

What is Personalization?

Content is king, but personalized content can drive 5-15% increases in revenue according to McKinsey. In an age where data is all-important, marketers are constantly battling to keep up with the latest in personalized content. It is all too easy for companies to get bogged down in the technical aspect of personalization and then forget that it should be about connecting people on a more human level. 

However, personalization doesn't happen in a vacuum. It requires a platform capable of delivering and creating it. It requires a CMS. 

A word of caution

  • well done personalization doesn't happen without a developer. Beware the drag and drop modules or programs that sit on top of your site to personalize content. These often significantly slow down page speed times, frustrate customers, and overall do not provide a good customer experience.

Personalization doesn't have to involve a lot of a frontend developers' work, if it is well planned ahead of time. This guide will show you how. 

Defining the Personas

Before we get to the content, we have to define what data we're going to use that will determine whether someone on our site fits into a persona. In our example, we're going to use our ZFLIX personas. We decided to create 4 personas as an example, defining them each by the genres of content they watch most:

AvatarPersona NameGenres Preferred
default-avatar.pngFallback ContentN/A. This is generic content that we display if 1) someone does not fall into a defined persona, or 2) the person has not engaged and doesn't have a defined persona.
documentary-lover.pngThe Documentary LoverThriller, Sci-Fi
kid-at-heart-avatar-2.pngThe Kid at HeartComedy, Animated
hopeless-romantic-avatar-2.pngThe Hopeless RomanticRomance, Comedy
thrill-seeker-avatar-2.pngThe Thrill SeekerDark, Sci-Fi, Thriller

Remember, we're making the assumption that we're personalizing content based on a trait of a user stored in a database somewhere. In our case, we chose genres. Here's a few other ways to think of personas:

Example 1: Personas Based on Sales

One very popular way to define personas is based on who your best customers are. First, you'll need to decide what that means. Usually, it's in terms of sales - better customers buy more often from your brand. 

Non-customerHas not made any purchases on-site
Bronze Customer$ - $$ in purchases
Silver Customer$$ - $$$ in purchases
Gold Customer$$$ - $$$$ in purchases
Platinum Customer$$$$+ in purchases

Example 2: Personas Based on Demographic

Another way to define personas is based on demographics, like age, gender, and interests. 

  • 18-24
  • 25-34
  • 35-44
  • 45-54
  • 55-64
  • 65+

All of those age groups purchase products and engage with brands very differently. Sometimes, it makes sense to personalize content based on a demographic of your customer base.

Example 3: Personas Based on App Engagement

This is a fun, unique example. Say you have an app or portal, and you want to continue to encourage engagement. You might personalize content based on a users' level of engagements, which could be defined as logins, posts, time spent on app, and more. 

Tier 0New user or no engagement
Tier 11 login in past month
Tier 21 login in past week
Tier 31 login in past day
Tier 4Multiple logins daily

Once we have our personas defined, we also have to define where that data comes from. This is a crucial element to personalization and will make implementation harder if not defined. 

Data can come from a lot of places - you may store data in a custom user system (an easy way to tell is if to login to your app or website, the URL is something like app.yourcompany.com or login.yourcompany.com). Otherwise, you may store data in an external CRM like Salesforce or HubSpot.

Make sure you know where your data is coming from and how you will define personas - it will make implementation much easier both on the marketing team as well as the development team.

Defining the Personalized Content 

Remember when we said "it's cliché, but personalization is best done with a crawl, walk, run approach?" That was with a good reason. If you're starting to personalize your site for the first time, you may be surprised with how much content you'll need to produce. 

Think about it: for every item you want to personalize, you will need every personas' content version, as well as a fallback for un-personalized content. 

So, if you're personalizing 3 tiles on a homepage for 5 personas (and 1 fallback!), you will need 18 pieces of content. 

The Formula for Personalized Content Production

Content pieces needed  =  Personalized Areas (Pa)  x  (N Personas + 1)

It can seem like a lot to do at first, and that's why it's so important to have personas and content pre-defined before embarking on this journey. Gartner Predicts 80% of Marketers Will Abandon Personalization Efforts by 2025 for a slew of reasons, implementation being one of them - and we don't want you to be one of those marketers. 

Deciding on a Personalization Approach

Okay! So you've got your data mapped out, and you've got your personas defined, and you've got an idea of what contetnt you'll personalize. It's time to get technical. There are a lot of ways to skin this cat, but we're going to outline 2 of the simplest ways to implement to get you going quickly. 

One approach optimizes for resources, and the other optimizes for security. Both are good approaches that use best practices and should work on virtually any browser. Your Infosec or Engineering team may choose one over the other for sake of time and resources, so we wanted to present both. 

Personalization to Optimize for Resources

If you have a busy development or engineering team, this may be the quickest way to implement personalized content.

This approach places a cookie on the users' browser after they login. From there, the CMS looks for the cookie. If it's not found, the page loads your fallback content, or original page content. If there is a cookie found, the API needs to reach out to Salesforce (or your CRM)'s API to look for a specific piece of data (what we defined in Step 2). It returns that information so the CMS can make a decision on what content to load on-page. 


Personalization to Optimize for Security

If your Infosec team wants a more secure approach where the persona information is defined by your company's process and stored in a cookie, that's totally feasable.

This approach checks your company's app login to see if there is persona info stored. If not, it pulls data (Defined in Step 2) from Salesforce, or your CRM. From there, the app sets the persona info as a Base64-encoded cookie on the user's browser. 

After that's done, the CMS can load personalized content based on the data stored in the cookie. If there is no cookie, it displays your original content as fallback data.


What if my CMS doesn't support personalization? 

If your CMS doesn't support personalization, or its more difficult to implement than this, it's time to consider a new CMS or DXP. Consider Zesty.io, one of the leading CMS's that makes personalization easy and achievable. With our network of partners, you'll be able to use a better platform to support your content, make sure it's blazing fast across the globe, and have a network of help at your fingertips to help get things done right the first time you implement it. 

By Chloe Spilotro

Hooked onto the platform since first using it through the Zesty.io Incubator Program at the University of San Diego. Passionate about all things marketing, IoT, and helping businesses leverage technology to grow and become major players in their industries.

Related Articles

Subscribe to the zestiest newsletter in the industry

Get the latest from the Zesty team, from whitepapers to product updates.