# Segment recalculation

Segment recalculation happens when you update segment defintion (e.g. change timeframe, event condition). With each segment update Intempt plaform needs to re-process segments so only users with updated segment conditions are assigned to the segment.

General rule: after changing the segment definition with updated recency/ frequency and new event/attribute selection, we display the actual time when the user joins the segment - not the processing time. It means that we consider the time when a specific event was triggered, or an attribute was updated.

# Examples

Examples below will provide information on how Intempt platform processes segment recalculation in different scenarios.

# Situation 1: event change

Definition

  • Event A1 is done by the user at T1
  • Event A2 is done by the user at T2
  • A segment with event A1 is created at T3
  • User entered segment at T1
  • Event definition is changed from A1 to A2 at T4

Expected behavior

  • After changing the event definition from A1 to A2, Intempt shows that the user entered the segment at T2.

# Situation 2: recency change

Definition

  • Event A1 is done by the user at T2 and T4.
  • A segment has a recency (timeframe) definition qualifying all users who did event A1 at the T1-T2 date range.
  • User entered segment at T2
  • Recency definition is changed from T1-T2 to T3-T4

Expected behavior

  • After changing the recency definition from T1-T2 to T3-T4, Intempt shows that the user entered the segment at T4.

# Situation 3: frequency change

Definition

  • Event A1 is done by the user X1 times at T1
  • A segment has a frequency definition qualifying all users who did event A1 at X1 times
  • User entered segment at T2
  • Frequency definition is changed from X1 to X2

Expected behavior

  • After changing the frequency definition from X1 to X2, Intempt shows that the user has not entered the segment (-1 user)

# Situation 4: attribute change

Definition

  • Attribute A1 for the user got updated at T1 with value X1
  • Attribute A1 for the user got updated at T2 with value X2
  • A segment has a definition qualifying all users who have attribute A1 with value X1
  • User entered segment at T1
  • Attribute A1 value is changed from X1 to X2

Expected behavior

  • After changing the recency definition from T2 to T3, Intempt shows that the user has entered the segment at T2