Shopping mall

Segmenting Website Visitors in Mautic

In the previous post on visitor segmentation and content personalisation, I described various ways in which website visitors can be segmented into distinct groups. That article is, however, a very general introduction. In this article, I will show hands-on how to do it in Mautic - an Open Source marketing automation system.

Contacts in Mautic

Mautic can track all visits to your website. Each separate visitor (in Mautic called a contact) is saved separately in the database. By default Mautic contact entity comes with multiple fields. The most generic is the IP address. Others include First Name, Last Name, Email, Address country, city, date last active, preferred locale, etc. There is also etc. You can also add additional fields by yourself, e.g. edge, gender etc. depending on your needs.

Mautic contact

On an initial visit to your website, the majority of the fields is empty. Mautic can populate them based on user actions. For example, if the user provides you with an email address while downloading a form, the contact can be updated. If Mautic can identify users location based on his IP, this will get updated as well. As time passes, it allows you to learn more and more about your visitors.

The more data we have, the better we can segment users - split them into groups based on criteria we deem relevant. In Mautic, this is achieved by creating Segments and adding users to them. Let give it a try.

Segment by location

For starters let's do something easy - let's segment users by their location. This is easy because location data is quite often populated by Mautic on the first visit of the contact to your website. Mautic tries to guess this based on visitor IP address.

To create a new Segment, click the Segments link in the left sidebar, then click "New" in the top right corner. Fill in the details with the segment name and alias. You can add a description for yourself or other colleagues who work with you.

It makes sense to think about a decent naming convention. You can quite quickly end up with many segments. If their naming convention is not clear, it can cause a lot of headaches.

 mautic segments 1

After clicking "Apply", you can click the "Filters" tab. This is where the main magic happens. It is here that you decide what criteria a visitor has to meet to be assigned to the segment.

In our case, it is "Country equals to France".

mautic segments 2


Mautic will now add to this segment all the contacts which have already visited your website from France. Also, all new visitors will be evaluated based on this condition. Each new contact which is from France will be added to this segment. 

Now let's see how to do something more challenging. 

Segment based on activity

You can segment users based on their activity on your website. There are various actions you can base the segmenting on like the number o pages the user visited, forms he filled in or emails sent by Mautic that he read and more.

In our example, we will segment out the users who are potentially interested in our example product X. We will achieve this by finding all users who visited a product page of X.

The filtering criterium here will be "Visited URL - contains - products/product-x".

mautic segments 5

We could have inserted a full URL and use "equals" evaluator as well.

Segment based on data from social media

Using data which can be discerned from a user visit is excellent. You can, however, gather much more data and personalise experiences of visitors much better if you know more about them.

This is the case if you do promotions in social media. If you target users there based on detailed criteria, it makes perfect sense to segment them based on the same criteria when they visit your website.

You can, for example, target users based on their age both on Facebook and in Google ads. When the users visit your website, it might be important for you to know that the visitor is of a certain age (e.g. to display a message better suited for the particular age group)

Let's assume that you have a few campaigns which target people who are over 40 years old. You run a separate campaign like this on Facebook, and also you have one in Google. Links to landing pages for these campaigns are crafted to include UTM tags to identify source and campaign. On FB we have a "fb_active_woman" UTM tag, and on Google, we have a different campaign which also includes with a UTM tag "ga_run_forever". The campaigns would be the same or completely separate. It is only essential that they both have the same criterium by which you want to segment users (e.g. age).

In Mautic, you can create a segment which gathers visitors coming from both campaigns. Mautic filters can use UTM tags, and they also include logical filters to enable us to collect visitors based on various conditions in one segment.

mautic segments 3b

Detailed segments and sub-segments

You can have broad segments (like the ones above). You can also create very narrow segments by using multiple filters chained with an AND condition.

You can also create a small sub-segment by finding common elements from a few broader segments. For example, based on already created segments, we can create a sub-segment for people over 40 from France.

mautic segments 6

Mautic has really extensive segmentation capabilities which can allow you to target particular user groups.

How to use segments

When you have a segment of visitors based on particular criteria, you can display personalised content to them on the Drupal website or sign them up not for a default newsletter but a more personalised one more tailored to their needs and more. 

Depending on your business and your audiences the segments and what to do with them will vary. 

Do not over-do it though

Segmenting users is fantastic and gives you a lot of personalisation power. It is, however, important to bear in mind that the narrower the segment, the fewer contacts will be added to it. Those contacts which are not in any segment will most likely be left to themselves. 

Delivering Mautic development services we know that it is important to strike a balance between segmenting and personalising with the benefits it can bring versus the additional overhead of managing multiple segments.


In this article, I explained how to segment website visitors in Mautic based on various conditions. I also showed how to gather more info on users coming from paid promotions on Social Media.

Next to do: