Skip to main content

Behavioral cohorts

Last updated 07/21/2026

Behavioral cohorts are mainly used to segment users by their behavior. You can generate a cohort with simple configuration in the UI, using data assets already created in the system.

Condition types​

Behavioral cohorts support the following condition types:

Condition typesDescription
Have doneThe specified event occurred within the specified time range.
Have not doneThe specified event did not occur within the specified time range.
Have done in sequenceA series of specified events occurred in order within the specified time range.
Have not done in sequenceA series of specified events did not occur in order within the specified time range. It counts as a match if the specified events did not occur or did not occur in order.
Have propertyThe specified user property, tag, or cohort meets the configured condition.

You can combine multiple conditions in a logical formula to build the cohort condition, and condition types can be nested.

Note that if a condition uses a cohort or tag that has scheduled calculation enabled, you need to get the order right. Otherwise, when the cohort is calculated on schedule, the upstream calculation may not have finished yet, and the data may not be as expected.

The Have done in sequence condition

The Have done in sequence and Have not done in sequence conditions are relatively complex. They select users by defining the pattern in which a series of specified events occur (such as order, interval, and same-value properties). The configuration looks like the figure below.

Pattern definition itemDescription
Step events
  • Step events in the sequence must occur in strict order, so events that occur at the same time are not considered to occur in order.
  • Only the order of the events configured in the sequence matters. Whether events not configured occur doesn't affect the result.
  • The same event can occur multiple times in a row, as long as the relative order of the step events is met.
Time rangeAll step events in the sequence must occur within the selected time range. Note that this differs from Funnel Analysis, where only the first step must occur within the time range.
Associated propertyThe property value is not empty and is the same across all events in the sequence. Note that all events here include both the step events that occur in order and the events not done between steps.
Time window
  • The time interval between two events in the sequence.
  • You can set an upper limit for the interval. The condition is met when the time interval is "<=" the time window.
  • Day intervals are not based on calendar days. 24 hours count as 1 day.
Have not done betweenAn event that must not occur between two events. If a user does this event between step events, the user doesn't match the defined pattern.

More special cases:

  • When you select exactly the same event for adjacent steps in the sequence, the event must occur at least 2 times in a row.

For example, in the 4-step pattern User Registration - Claim Rewards - Claim Rewards - User Payment, the events in steps 2 and 3 are exactly the same. In practice, this is evaluated as: between User Registration and User Payment, the user did Claim Rewards at least twice.

  • When you select an event and a custom event defined with that event for adjacent steps in the sequence, the event must occur at least 2 times in a row: once counted as the event and once as the custom event.

For example, in the 4-step pattern User Registration - Claim Rewards - Claim Rewards or Coupons (custom event) - User Payment, the step 2 event Claim Rewards is used to define the custom event in step 3. In practice, between User Registration and User Payment, if the user did Claim Rewards 2 or more times, the pattern is matched. If the user did Claim Rewards only once and did none of the other events in the definition of Claim Rewards or Coupons, the pattern is not matched.

  • When an event configured as not done between steps is the same as the step event before or after it, that event can occur only once.

For example, in the 3-step pattern User Registration - Claim Rewards - (Not done: Claim Rewards) - User Payment, an event not done is defined between steps 2 and 3, and it is also Claim Rewards, the same as step 2. In practice, between User Registration and User Payment, if the user did Claim Rewards 2 or more times, the pattern is not matched. The pattern is matched only if the user did it once.

Was this page helpful?
On this page