As you learn more about Engage, you'll notice that our segmentation tool can be found in almost every part of the system. This is where you create groups of contacts based on criteria, for example, age groups or previous purchases.
We built Engage this way to provide maximum flexibility and to give you the possibility to add rules to each event without having to flip back and forth to create new segments for each activity. Whether you are about to assign promotions, customize triggers, send messages, or convert points to vouchers—the segmentation tool can be used to set the terms.
The tool is based on three standard conditions: All, Any, and None. Although this might sound very basic (and in many ways, it is) it can get a bit tricky when you are building complex queries. But don't worry—this guide will help you along the way.
Set criteria by selecting data fields
Start building your query by adding rules based on the data you have stored in Engage. Groups are used to create a subset of criteria within your query. When you create a new group, you'll once more get the option to choose if all, any, or none of the criteria should apply in your isolated group.
Try to build inclusive queries
Searches based on many groups of criteria can take more or less time to process depending on how the query is built. It isn't necessarily the number of criteria or the length of your query that takes time to process—it's more about the combination of criteria that together form a complex query. Hence, we don't have a best practice that'll work for every occasion, but you'll most likely get quicker search results if you try to use inclusive queries ('All') rather than exclusion queries ('None').
Example: It's easier for the database to find "All: Purchased for €0 The last: 6 months" than it is to find "None: Made a purchase: The last: 6 months"
Explore the power of 'Retail KPIs'
Imagine you kept all of your receipts in a box at home and wanted to calculate how much you've spent in each category and only wanted to include the receipts in which you have spent over €50. First, you'd have to go through all recipes in the box to determine which are over €50, then sort them into different piles based on category, and finally calculate how much you've spent on each. Since you must read every receipt down to every item line, it gets very time consuming. The same applies to Engage.
To speed things up, we recommend you use 'Retail KPIs' whenever possible (e.g., "Sum of all purchases", "Average receipt", etc.). The 'Retail KPIs' are pre-calculated for you every night, and therefore much faster to read than receipts.
Here's an example to show two different ways to find all contacts that have shopped for €50 or more during the last year.
If you use 'Receipts', the database has to go through the following steps:
- Look though all transactions ever made.
- Sort out the receipts with a date within the last year.
- Calculate the sum of all receipts.
- Check if the sum is more or less than €50.
If you use the "Retail KPI: Sum of all purchases the last 12 months" the database has to go through the following step:
- Check if the field “Sum of all purchases the last 12 months” is over €50.
Easier? Much easier.
Free text fields
Free text fields are very flexible to use but they can be a bit time consuming to process. Think about it as if you are trying to find people in a phone book.
It's relatively easy to find everyone that starts with “A”, right? But what you wanted to find everyone with a name that contains “A” or ends with “A”. Then you'd have to go through every name in the entire phone book to find them all—the same applies to Engage.
To speed things up, use "Items that start with: jacket" instead of "Items that end with: jacket" whenever possible. However, the best option when creating segments based on specific purchases is to work with item categories and groups instead. Then you simply select the item category "Jackets" which is much faster for the database to process.
Use target audiences
We recommend you use your target audiences whenever possible as they are pre-calculated every night. When you pre-save a segment as a target audience, Engage only has to check if contacts are included in the target audience (e.g. "Target audience=Active hipsters=yes/no") instead of checking if all the criteria for the target audience are fulfilled ("Men, age 25–40, has purchased home brewing equipment or beard care products for over €20 the last year and has clicked in an email the last month").
This saves time and performance and is especially powerful for the segments that you use repeatedly. Remember that the stats connected to target audiences will show what was true the last time they were calculated, not live data.
Try to be specific when using 'Status' and 'Activity'
Queries based on how your contacts have responded to your communication can be very powerful in your campaigns, as well as in your automations. If you want to build a query based on if your recipients have opened or clicked in messages, we recommend you to be as specific as possible. For example, by selecting a time frame. This will narrow down the search and you will get quicker results.
Channel status is where you can find all opt-setting criteria and optimized filters so you can see who is reachable by email, SMS, or postal send-outs. It’s now much easier to make selections, for example in automation splits or target groups.
When calculating a segmentat, you'll see the number of contacts who are reachable by email, SMS, and postal send-outs. Since the number is already calculated, you don't need to use reachable by in your segments. Here are the definitions:
Reachable by email
The contact accepts email, the email field is not empty, and the email is not blocked.
Reachable by SMS
The contact accepts SMS, the phone number field is not empty, and the number is not blocked.
Reachable by postal
The contact accepts postal communication and the address, zip code, and city fields aren't empty.
Channel status doesn't take duplicates into consideration, they will however be excluded when you prep your communication and pre-calculate your number of recipients in the message module.
And finally: Engage will not send anything to contacts that don't accept communication, so you're not required to add channel status criteria to your search.