Segments
Segments are query-based cohorts computed from the shopper profiles currently stored in Zubby. Membership is evaluated when the query runs, rather than maintained as a separate member list. Source synchronization and scheduled profile updates can delay changes; the count is not an instantaneous view of activity in your store. Segments are the audience layer for broadcasts and the fastest way to inspect a cohort before acting on it.
Where it lives
Dashboard → Segments. The header shows your total shopper count. Below it: a custom-segment builder, your saved custom segments, and a grid of the built-in catalog and supported saved custom segments. Each catalog card shows the segment size, its share of all shoppers, a 30-day change indicator, a one-line commercial rationale, a View shoppers link, and a suggested playbook to activate it.
The built-in catalog
Six segments ship out of the box, each in a category that drives its badge colour:
| Segment | Definition | Category |
|---|---|---|
| VIP · $500+ lifetime value | Lifetime spend ≥ $500. | vip |
| New customers (30d) | Exactly 1 order, placed in the last 30 days. | new |
| At-risk repeat buyers | 2+ orders, last order 60–180 days ago. | at_risk |
| Dormant shoppers (180d) | No activity in the last 180 days. | dormant |
| High-intent prospects | 3+ chat conversations, still 0 orders. | engaged |
| Marketing opt-ins with email | Consented to marketing and has a verified email. | marketing |
The marketing opt-ins segment is the baseline audience for every broadcast and lifecycle send - keep it healthy, because hygiene matters more than raw size.
The 30-day change is an approximation
Custom segments
Build your own from the Build a custom segment card:
- Give the segment a name that states its intent (“Lapsed 60d+, $200+ spend”) - you’ll be reading it in a list months from now.
- Pick a field, an operator, and a value. The builder type-checks the pair before saving, so an unrunnable filter can never be stored.
- Save. The segment appears below with a live member count - if the count looks wrong, check the units (spend is in cents, recency in days) before doubting the data.
Custom segments evaluate live, exactly like the built-ins. Note that broadcasts can target supported saved custom segments from your store as well as built-in audiences. Journey enrollment uses configured behavioral triggers rather than custom-segment membership.
Fields you can filter on
| Field | Type | Note |
|---|---|---|
| total orders | number | Lifetime order count. |
| total spend cents | number | Lifetime spend - in cents (50000 = $500). |
| average order value cents | number | AOV in cents. |
| days since last order | number | Computed from last order date. |
| days since last visit | number | Computed from last seen date. |
| accepts marketing | boolean | Value is true or false. |
| lifecycle stage | string | Matches the shopper’s current stage. |
Operators
Numeric fields accept the full set: =, ≠, >, ≥, <, ≤. String fields accept = and ≠ only. Boolean fields accept = only. The builder type-checks the field/value pair before saving, so an unrunnable filter can never be stored.
Money and time are not in obvious units
total spend cents ≥ 50000 for $500, not 500. Recency fields are days - days since last order > 60 means lapsed two months.What segments power
- Broadcasts - the segment dropdown in the broadcast composer is this exact built-in catalog and supported saved custom segments.
- Shopper drill-in - View shoppers on each card opens the Shoppers list filtered to that live cohort.
- Activation - each catalog card links to a suggested playbook (welcome series, win-back, browse abandonment, post-purchase thank-you) so a segment leads straight to a next action.
Recurring lifecycle sends belong in journeys, which enroll shoppers by behavioural trigger (cart abandoned, winback, post purchase) rather than by segment membership.
Gotchas
- Membership is evaluated against currently stored shopper datawhen queried. Source sync and scheduled updates, including VIP recalculation, can delay changes. Preview counts can differ from the send-time audience as records, consent and delivery eligibility change.
- View shoppers deep-links into Shoppers filtered by the segment, so you can inspect exactly who matches.
- Custom segments are scoped to your store and editable only by owners and admins. Every create and delete is written to the audit log.
- A custom filter spec supports up to 10 conditions combined with
ANDorOR; the quick builder on the page creates single-condition segments.
Related
- Shoppers, lifecycle & VIP - the profiles and lifecycle stages segments query.
- Broadcasts - send a one-off campaign to a segment.
- Journeys & sequences - enroll shoppers from supported behavior triggers.
- Cart & browse rescue - recovery uses behavioural triggers alongside segments.
Choose inspection or activation
Use a saved custom segment to inspect shoppers who match a condition, then select a supported saved segment in the broadcast composer. Broadcasts accept built-in and supported store-owned saved audiences; channel consent and plan eligibility still apply. Journeys enroll from their configured event triggers. The quick builder creates one condition; do not assume it offers a multi-condition visual editor. Test membership with one shopper who should match and one who should not, checking cents versus currency units and days versus dates.
Contribution value and VIP are different filters
The advanced contribution_ltv_cents field is a Pro contribution-profit condition, not revenue CLV. It is available only when the shopper’s cost coverage reaches 90%; missing coverage does not mean zero value. The quick builder does not expose every advanced field. Built-in VIP spend criteria and configured VIP tiers are separate definitions, so verify the relevant card before treating them as interchangeable.