How our segmentation works:
- We maintain a cache of all the users in each segment.
- When customers trigger events or have properties updated, we log these changes but do not update those caches in the UI.
- Newsletters rely on these segments, and are required to recalculate those segments at send time. This means that segments are up to date at time of send.
- Unlike newsletters, behavioral, transactional and workflow emails (automated emails) that rely on segments will actually use the individual conditions from the segments and check that the user matches each of them at send time (i.e. they do not rely on the stored cache of the segment).
Refreshing segments with new data:
Once an import is processed the data must be loaded into a database specifically used for segmenting users. You’ll notice this notification when refreshing segments:
Using Any and All conditions:
When creating a segment you’ll notice two sections:

