Build a segment (segment criteria)
The Segment Builder allows you to define a set of contacts based on a variety of dimensions, using logical AND or OR conditions. These segments are used to target your marketing efforts to specific groups of customers.
Segment criteria
Segment conditions come from fields in your Snowflake tables. These conditions are defined using the following qualifier types:
- Dates (absolute or relative)
- Numeric values
- Strings (drop-downs or text fields)
- Set values
- Boolean values (true or false/is or is not)
The format of each condition depends on the content of the field - some common examples are date ranges, status is/isn’t active/cancelled/expired (i.e. subscription), and numeric value entry (i.e. average order value).
Dates
All dates and times in Simon are UTC (Universal Time Coordinated).
Dates can be qualified in the following ways:
Operator | Description |
---|---|
is | Refers to a specific calendar date, 12:00AM-11:59PM UTC |
is before | This is relative, referring to an event taking place earlier than number of days or weeks, ago or from now (example: ‘Last login date is before 2 weeks ago’ would populate contacts who have not logged in to their account in the last 2 weeks) |
is before date | This refers to an event taking place before a specific date |
is after | Refers to an event taking place some time period after a date. The date is defined relative to now using a number of days or weeks, ago or from now (example: ‘Last order date is after 5 days from now’ would populate contacts 5 days after they place an order) |
is after date | Refers to an event taking place after a specific date |
is between | Between two time periods ,including the start and end dates, and encompassing the day before the second date. Note: The function currently includes the day before the second date as well. For example, if you need to confirm purchases from 9, 10, or 11 days ago, you should set the date range as "is between 11 and 10 days ago." |
is between dates | Refers to an event taking place between two specific dates, inclusive of the first and exclusive of the second |
is null | Contains no value |
is not null | Contains a value |
Note, when qualifying a date by a number of months, the actual number of days in each month is taken into account.
Numerics
Numbers can be conditioned in the following ways:
Operator | Description |
---|---|
equals | = |
is not equal to | != |
greater than | > |
greater than or equal to | > = |
less than | < |
less than or equal to | <= |
is between | Between to numbers, inclusive of the first and exclusive of the second. |
in | Include a comma separated list of values |
is null | Contains no value |
is not null | Contains a value |
Strings and sets
Strings and sets are text values. A string is a single value, while a set is a list of comma-separated values, such as a list of items a customer has purchased.
Strings and sets are very versatile; they can be qualified in many ways, including:
is | Requires an exact match between the criteria and the data field |
is not | Populates any records that are not an exact match |
contains | Populates records that have the criteria found anywhere in the set; works for partial matches, or substrings |
does not contain | Populates records in which the search criteria is not found; works for partial matches, or substrings |
begins with | Populates records that begin with a specific character |
does not begin with | Populates records that don't begin with a specific character |
ends with | Populates records that end with a specific character |
does not end with | Populates records that don't end with a specific character |
in | Populates records that have a match in the set listed in the criteria; for example, is in "pink, blue, green" |
like | Populates records that are similar to the specified character(s) |
includes | Populates records that have an exact match inside of the set |
does not include | Populates records that do not have an exact match inside of the set |
is available | Sets are considered available if they have more than 0 elements |
is not available | Sets are considered not available if they have 0 elements |
is not null | Contains a record |
null | Contains no record |
Booleans
Booleans are a true/false flag. For example, they are often used for the following:
- Subscribed = True
- Is Customer = False
Condition groups
When adding many conditions and mixing AND with OR, it might be necessary to use multiple groups to clarify logic. For example:
Related segments
You can refer to other segments as conditions to include or exclude members of another segment, as well as filter customers who have gone through a specific flow -- aka nested segmentation. A segment used as a condition in a segment is called a Base Segment. A segment that references another segment in its definition is called a Dependent Segment.
Note, if you're using Connected Segmentation only then nested segmentation is not currently available.
Updated 2 months ago