Contents
- Limitations for corporate customers
- Creating a segment
- Additional segment settings
- Condition tree
- Condition structure: filters and fields
- URL filtering in visitor tracker events
- UTM tags
Important!
This article describes the upgraded segmentation interface. Instructions for the previous interface remain available for users working with segments created in the old editor.
Limitations for corporate customers
Segmentation has limitations when working with corporate customers.
Segments are not generated for:
- Corporate customers.
- Corporate customer contacts.
Exceptions:
- If corporate customer functionality is disabled in the system, segmentation works for customers registered as legal entities.
- If a corporate customer contact has orders of their own, the system treats them as a regular retail customer and generates segments for them as well.
Creating a segment
To create a segment in the upgraded interface:
- Open Marketing → Segments.
- Click “Create a segment”.
- Enter the segment name.
Additional segment settings
After clicking “Create a segment”, the following fields are available:
- Name: gives the segment a recognisable name.
- Activity: enables or disables the segment without deleting it.
- Segment type: a Static segment checks customers once when saved. Once a customer is included, they remain in the segment. A Dynamic segment is recalculated automatically every two hours. Customers can enter or leave it when their data changes.
- Available in Analytics: enables the Segment axis in analytics widgets.
After the segment is saved for the first time, it receives a symbolic code for use in external integrations. The code is generated from the name and appears in a separate field. Use the buttons beside the field to edit or copy it.
The following options are available next to Save:
- Copy: creates an exact copy of the current segment and opens it for editing.
- Delete: permanently deletes the segment.
Condition tree
Combining conditions
When one condition is not enough, combine multiple criteria using the logical operators AND and OR.
The segment tree starts with the Customers root node. This node always has the Exists state and cannot be edited. Groups and filters are added below it. At these levels, choose whether to look for matching elements (Exists) or to require their absence (Not exists). This determines whether the selection includes or excludes matching elements.
How nesting affects conditions
Conditions are evaluated in the context of the level where they were added. When a filter is nested inside another filter, the system checks the elements found at the previous level, rather than the original customer record.
For example, adding a nested Customers — Exists filter inside Email communications — Exists checks customers linked to the email communications found at that level. This additional level is only needed to check related customers.
To check the original customer's email communications, add conditions inside Email communications, without adding another Customers level.
Checking for absence with “Not exists”
In upgraded segments, use Not exists on the relevant collection filter to check for the absence of elements such as orders, emails or visits. Examples include Orders, Email communications and Customer visits.
An aggregate condition such as Quantity … equals 0 does not check for absence. Select Not exists on the relevant collection instead.
Note
Use Exists or Not exists for collections. Upgraded segments do not check for absence through an aggregate condition such as Quantity … equals 0.
Condition structure: filters and fields
The conditions available when configuring a segment fall into two main groups: filters and standard filters applied to customer record fields.
Filters
Filters are logical structures for creating complex selections. There are two types.
Collection filters check whether elements meeting specified conditions exist. Adding this type of filter creates a new nesting level where criteria can be applied to elements in the collection. Examples include UTM tags and Subscriptions.
Aggregate filters work with calculated values. For example, the system first calculates a customer's number of orders or total purchase amount, then applies conditions to those values. To add an aggregate filter, click the plus icon beside the relevant row and select the filter conditions.
Filters that support aggregation include:
- Email communications.
- Chat communications.
- Orders.
- Customer visits (Web Analytics).
These filters are marked with a funnel icon in the dropdown list.
Distinguish between the following conditions:
- Customer visits: website visits recorded by the visitor tracker.
- Customer visits (Web Analytics): data from analytics systems such as Google Analytics.
Standard filters for customer fields
These filters apply to specific customer profile values and directly exclude records that do not meet the condition, without additional logic. For example: Total order amount = 7,500 in the system currency.
Available fields include:
- Full name.
- Email.
- Phone.
- Registration date.
- Date of birth.
- Tags.
- City.
- Sex.
- Custom fields.
Most fields support the following operators.
For text and symbolic fields:
- empty / not empty.
- contains / does not contain.
- equals / not equals.
- begins with / ends with.
For date fields:
- empty / not empty.
- equals.
- from / to.
- range.
Selecting range opens a calendar where the following can be specified:
- Absolute dates, such as 1 June to 30 June.
- Relative values, such as 7 days ago, in 2 weeks, this month or last year.
- Dates without a specific year. Enable Ignore year for recurring dates such as birthdays.
URL filtering in visitor tracker events
When working with predefined visitor tracker events, for example in the Customer visits filter, use URL patterns to define conditions more precisely.
The following wildcard characters are supported:
*: any number of characters. For example,wh*matches what, white and why, but not awhile or watch.?: one character at the specified position. For example,b?llmatches ball, bell and bill.[]: one character from the group in brackets. For example,b[ae]llmatches ball and bell, but not bill.!: negates the group in brackets. For example,b[!ae]llmatches bill and bull, but not ball or bell;[!a]*matches anything that does not start witha.-: defines a range. Specify it in ascending order, from A to Z. For example,b[a-c]dmatches bad, bbd and bcd.#: any digit. For example,1#3matches 103, 113 and 123.\: escapes special characters. For example,\*matches a literal asterisk instead of an arbitrary character sequence.
Note
Specify the fixed parts of the address explicitly so the filter matches the intended URLs.
For example, to filter the
/registeraddress, include the full domain:https://example.com/register*.A pattern such as
*register*matches every page whose address contains register, includinghttps://example.com/faq/why-register.
UTM tags
The following UTM parameters are available for segmentation by traffic source and marketing campaign:
utm_source: source.utm_medium: medium.utm_campaign: campaign.utm_content: content.utm_term: keyword.
Multiple parameters of the same type can be added, such as two or three utm_source conditions, each with its own value. This helps refine selections for multichannel advertising campaigns.