User Segmentation in Website Content Personalization

I recently wrote multiple articles about the modern approach to Digital User Experience. I wrote about how new requirements push brands to build Digital Experience Platforms, I presented Amy - a digital customer interacting with an omnichannel brand. I also discussed the concept of the digital customer. All this was however very generic. Now we have to get down to the nitty-gritty. How do you actually do personalization, marketing automation and how do you achieve the omnichannel experience? For this, let’s start with website visitor segmentation.

Website visitor segmentation 

The goal of personalization is to give each user the information they need or the information we want them to receive. To be able to do that we have to first define our user groups and then divide website visitors into these groups to serve different content to each group. This is called segmentation.

When it comes to content personalization on the Drupal website it might be a bit difficult to directly identify the marketing personas you are targeting your communication to. The data on the visitor may not always be available, especially taking into account GDPR regulations.

When running marketing automation and taking advantage of e.g. Mautic development services, the best way to personalize content is to look at data you can get and think if this allows you to personalize the message. It quite often does. You may be able to target users just based on some of the characteristics of your marketing personas, but that still may bring you many benefits. 

Let’s see how website visitors can be segmented.

Segment by generic variables

You can segment data based on generic variables which are available in most analytics systems:

  1. Geographic location - any analytics software can usually identify visitor location quite well.
  2. Trafic source - eg. social media, other websites, organic search, paid promotions.
  3. Pages visited - depending on the pages on your website the user visited, you may be able to discern his interests or needs (if the user visits particular product pages and their related pages it might indicate a particular product interest).
  4. Time on site - the time the user spent browsing your website or the number of pages he visited. Users who check multiple pages (eg. offer pages, about the company pages, are most likely researching your company).
  5. New vs returning visitors - is the user visiting your website for the second time? This might indicate his interest is greater.

If you have users who allow you to set cookies for analytics and personalization, you can quite easily add users to segments based on their behaviour on the website.

Segment by data collected

Apart from the data that can be discerned from traffic, you can gather additional data about your visitors if they agree to share it. There are 2 main ways to do that.

Collect on the website

As users for data. You can even display a popup with a question and a few radio buttons to chose from. The most popular way is to provide some additional value for providing the data:

  1. Offer a pdf download with valuable information but ask the user for an email and perhaps some additional information (eg. company size, role in the company).
  2. Provide log-in for additional functionality on your website. While logging in, users will typically have to provide an email and you can request additional information as well. 

This way of data collection requires much more effort, but the benefits can be greater. After all, you can ask users about their data which is relevant to your offering. Eg. if you offer sporting gear, you can ask the user “how many times per week does he exercise” and then personalise content based on such unique data.

Collect during paid campaigns in social media

Social platforms have a vast amount of data about users. They allow you to target campaigns based on this data. For example:

  1. On Facebook, you can target by gender, age, interests, etc.
  2. On LinkedIn you can target by role, department in the company (eg HR), company size, etc.

If you target a specific group with specific criteria with a campaign, you can easily transfer this data into your content personalisation engine and personalize content based on these characteristics as well (of course only if you have permission from the users to collect and use the data).

The way to transfer this data is via utm_ tags used in links of the campaigns. If via a _utm tag you identify the campaign, you know what group of users you were targeting there. They can be assigned to an appropriate segment in your marketing automation tool.

Segments are often not exclusive

You also narrow down the segments. Quite often you might want to target users based on their role and location. Eg. “HR Managers from UK” or “Female CFOs under 40”. If you have a big enough user base to make it worth your while you can create very tailored campaigns for particular user groups. 

Focus on segments relevant for your offer

Segmentation and personalization are time-consuming and can become costly. Remember however that you do not have to segment all the visitors. What you really want to do it to single out those who are your target audiences. Those who include your marketing personas.

For example, if have a custom message for users in France, create a segment for users from France and do not try to label all other visitors. It is ok for many users not to be in any segment. This only means that there is nothing specific that you want to tell them apart from your default marketing communication.

Start with the default for the not-segmented

Creating personalization for users is a great way to deliver them exactly what they need. However, as mentioned above, you have to take into consideration that many visitors on your website will not get into any of the segments. This might be due to many reasons, but mostly:

  1. They did not fall into any of the rules for segmentation
  2. They opted out of tracking

Make sure you have a compelling message for this group. Quite often, despite great efforts, it will always be a large or the largest chunk of your website visitors and some of them may be potential clients.

The best way to do this is to create a default message first - one that you would want to show to an unknown user if you were not planning on personalisation. 

Only later think if there is anything different that you would want to show to users which you can segment out based on the data you can gather.


In the article, I described various approaches to segmenting visitors into distinct groups. Based on this segmentation you can personalize content displaying different things to different groups.

3. Best practices for software development teams