Automated Segmentation

Build rule-based Waymore segments with AND/OR logic, events, attributes, and message conditions.

Automated segmentation involves grouping individuals based on predefined criteria. People become part of a segment when they meet specified conditions and leave it when they no longer meet those conditions. These segments are instrumental in organizing individuals based on their real-time actions.

Creating an Automated Segment

The following steps outline how to create a segment on the Segments page. Alternatively, you can create a segment while setting up a campaign (using the "They meet conditions" option). The process remains largely the same in both cases. If you opt to create a new segment during campaign setup, it's advisable to review the segment to ensure the conditions align with your campaign's goals.

  1. Navigate to Segments.
  2. Select Create Segment.
  3. Provide a Name and Description for easy identification.
  4. Click Create Automated Segment.
  5. Specify conditions for individuals to enter the segment.
  6. Save your changes.

Upon saving, the system takes some time to establish the initial segment membership. The duration depends on the workspace's size and the complexity of the conditions. You can track the progress by accessing your workspace’s Tasks list.

Segment Criteria

Automated segments are constructed based on conditions that determine membership. These conditions could include actions like receiving a specific message or possessing certain attributes. Individuals enter the segment when they meet the conditions and exit when they no longer fulfill them.

Segmentation can be based on the following criteria:

  • Attributes
  • Events

When creating a segment, you choose between "All" or "At least one" conditions. "All" requires all conditions to be true for entry, while "At least one" necessitates only one condition to be met.

You can organize conditions further using the Group feature, allowing for complex segmentation logic such as condition1 AND (condition2 OR condition3). Drag and rearrange conditions using the handle on the left side of each condition or group to tailor the logic to your requirements.

Sample segment illustrating drag-and-drop functionality

Utilizing Logical Operators in Segments

During segment creation, you specify whether individuals must meet all conditions (AND logic) or at least one condition (OR logic).

Groups can add additional layers of AND/OR logic within a segment, with items within the group following the same logic.

Use group conditions to apply AND/OR logic

For instance, the following segment includes individuals who made a purchase and are either new customers (created within the last 30 days) or have spent a minimum dollar amount.

Segment of individuals eligible for a coupon

Incorporating JSON Arrays in Segments

Attributes and events may contain complex JSON structures, including arrays and objects. You can utilize JSON notation to access these structures in your segment. When referencing an array, you can specify an index to target a specific item or leave it blank to match any item within the array.

For example, to match the city in the first shipping address stored in an array of objects called shipping_addresses, you would use shipping_addresses[0].city. To match against any city value within the array, you'd employ shipping_addresses[].city. For matching against any property within any object in the array, simply use shipping_addresses[].

When dealing with an array of values (not properties belonging to objects), the equals evaluator functions akin to a contains operator. For instance, if you have an attribute called favorite_foods containing values like pizza, fries, burgers, a segment where favorite_foods[] equals pizza would evaluate to true.

Utilizing an array in a segment condition

Segments with Special Characters

Event names and other assets used for segmentation may contain special characters. While most special characters are accepted without issue, certain characters perform regular expression (regex) functions in search. You can treat these characters as literal characters by escaping them with .

Here are some special characters and their functions:

    • (wildcard): Represents any character.
    • (AND operator): Matches both values in a statement.
  • | (OR operator): Allows entry to the segment if either event has occurred.

Use the "contains" condition when employing regex

Segmentation Based on Messages

You can create segments comprising individuals who have received an email or triggered a webhook action in a campaign. During segment creation, specify the action type—Email or Webhook. Utilize the "Any" dropdown to search across campaigns and messages for the desired message to use as a segment condition.

Segmentation based on a specific message

Timestamp Utilization

Segments can be created based on timestamps, albeit with a different evaluation method compared to other segments. In timestamp-based segments, the match time refers to when someone enters the segment. While most segments trigger based on actions like gaining or losing attributes, timestamp-based segments calculate match time based on a date-time, which may differ from the time of attribute acquisition.

For instance, a segment condition like birthday is a timestamp 15 days from now would enlist individuals only when they meet that condition, not necessarily when their birthday attribute was recorded.

For further details on implementing timestamp conditions, refer to Timestamp Conditions.

Segment-Triggered Campaigns with Historical Timestamps

👍

Related

Segmentation · Campaign Manager · Track Method