Segmentation is the process of isolating a subset of visits based on selected characteristics of those visits either for analysis, usually in the context of other segments, or to target changes on the websites using Triggers.
For example, all of the following tasks require segmentation:
- find all visits during which a user tried to make a purchase (Segment A) but failed to complete it (Subsegment A.1 of Segment A) and watch replays of those visits
- generate separate click heat maps of users who did (Segment A) and did not (Segment B) complete a purchase
- build micro-conversion funnel of all users who visited a product page (Segment A) , selected the product size (Subsegment A.1 of Segment A) and clicked “Add to basket” button (Subsegment A.1.1 of Segment A.1)
- evaluate an A/B test by comparing what percentage of visits in a control group (Segment A) and a test group (Segment B) ended with a purchase (Subsegments A.1 and B.1).
The same rules that define what visits are in the segment can be used as Triggers, to change how websites work for different groups of users:
- show an NPS survey to users who made a purchase,
- add users to a remarketing list when they add a product to their basket,
- show a message with information about free shipping for users with basket value below 100,
- offer live chat support to users who receive a specific error in the checkout
How Visits Can be Segmented
Before you start editing the segments you should understand what data is being tracked.
First of all there are three types of data points:
- (E) interactive events tracked when users interact with elements on a page, for example, hover images, click buttons, complete form fields,
- (M) meta events tracked as a result of user interactions with a website, for example, Section and URL meta events are tracked when users click links and open a new page,
- (A) attributes which contain information about users who visited your website, devices they used, traffic source referring them to your website and so on.
You can also track your custom (M) meta events or (A) attributes and use them for segmentation.
Segmentation rules work in a visit scope. If you specify two or more filters, either in the same or different branches, criteria of those filters need to be matched during the same visits. For example, if you specify:
- a segment of users who visited a certain page
- a subsegment of users who made a purchase
then the subsegment will only return visits in which both events happened during the same visit.
Supported Segment Definitions
At the moment, it is possible to segment visits based on:
- existence (or lack of) of a certain data point in a visit
- existence (or lack of) of a certain data point with a specified value in a visit
- existence (or lack of) of a certain data point with a numerical value in a specified range in a visit
and combinations of two or more of the above rules with AND or OR conditions. For example:
- visits of a user with a specified user ID
- visits in which users made a purchase
- visits in which users had basket value above 100 AND did NOT make a purchase
- visits in which users made a purchase OR signed up for a trial OR requested a demo
- visits in which users came from Google AND did NOT come from Google Ads
Unsupported Segment Definitions
At the moment, it is not possible to segment visits based on:
- data points from different Visits of the same User
- events that happened in a specific Section
- event that happened in a specific order with the exception of (M) Section (M) Action events which form Paths
- parameters of (E) interactive events, for example, values entered by users into form fields
Editing Segment Definitions
- (1) By default the segment will include visits containing a certain data point. You can select without to exclude visits with a datapoint.
- (2) There are three types of datapoints - (E) interactive events i.e. click, (M) meta events – i.e. Section and (A) attributes i.e. device, referrer. Select the type to select specific events or attributes.
- (3) If you already know a data point you want to use for your segment definition then paste it into the key/value field – the system will automatically recognize the datapoint type.
- (4) You can label your segment definition to make it easy to understand what visits it contains.
- (5) Click Apply to create the segment. A new branch will show up in the Segments Tree
There are two types of supported wildcards:
*which matches 0 or more characters,
?which matches exactly one character
The UI for (M) meta events and (A) attribute allows you to select the type of matching from a dropdown, for example you can find visits:
- with (A) referrer containing the word “google”
- with (M) URL starting with the phrase “https://checkout.mywebsite.com”
- without (M) Section ending with “thank-you.html”
The above queries would be displayed in the segments tree as:
- (A) referrer=*google*
- (M) URL=https://checkout.mywebsite.com
- (M) NOT Section=*thank-you.html
? can also be entered in the middle of entered queries:
would both return “Firefox” browsers (for example: “Firefox 55″, Firefox “56”).
Wildcards in (E) Interactive Events
If you are filtering for (E) interactive events, you can use wildcards in the event selector (key) to find different elements containing the same tag, ID or classname:
Note, that wildcards will work even if you enter an incomplete ID or classname:
The first query could match events:
and the second query:
Wildcards in (M) Meta Events keys
If you are filtering for (M) meta events, you can also use wildcards in an event’s key.
Time in Product/*< 15
would return visits in which users spent at least 15 seconds in any of the Product pages.
Wildcards and Numerical Values
When filtering by meta events or attributes, it is possible to use wildcards even if values are numerical:
In this case, the query would match:
would match all Price values from 90 to 99.
Exclusion with NOT
You can use the NOT (uppercase) operator at the very beginning of a query. For example, if you enter NOT Firefox in the Browser attribute value field, you will find all the visits from all browsers excluding Firefox.
Equal to, Larger than, Smaller than and Ranges
In all the fields you can use > (greater than),< (less than), = (equal to). You can also use >= (greater or equal) and <= (smaller or equal).
Time in Home < 15
will return all the visits by users who visited the Home section and stayed there less than 15 seconds.
You can also search for a range of values:
Time in Home = 15-30
will return all the visits by users who visited the Home section and stayed there more than 14 seconds but less than 31
Click the + button next to a filter to add another filter criteria. A dropdown box with AND and OR operators appears. Choose one of the options and add a new filter of the same type.
Using the example of the Session events section, the multiple criteria mechanism works in the following way. If you select the AND operator to join the user sign-in: failure and user sign-in: success events, you will find all the sessions during which a user signed in but had an unsuccessful attempt.
On the other hand, if you select OR you will get all the sessions during which a user made any kind of attempt, regardless of failure or success. Instead of using the dropdown box operators, you can place them directly in the filter definition.
Applying a Filter
After you define the filter criteria, click the Apply button. The new filter tree element appears. You can edit it at any time or delete it. Note that you can add a subfilter to it or add another filter at the same level.