· 10 min read
Segmentation strategy: beyond RFM
RFM is where most lifecycle programs start their segmentation work. It's fine. But it's also where most programs stop, which is how you end up with a segmentation model that describes what users already did without ever predicting what they'll do next. This guide walks the full segmentation stack a lifecycle program actually needs — and how to build it inside Braze without creating 400 segments nobody understands.
Justin Williames
Founder, Orbit · 10+ years in lifecycle marketing
What RFM gets right and where it runs out
RFM — Recency, Frequency, Monetary — slots users into a grid based on how recently they engaged, how often, and how valuable. It's useful because the three dimensions are genuinely predictive of future behaviour, and because the model is simple enough to explain to a CMO in two minutes.Source · Harvard Business ReviewIdentifying and Evaluating the Best Customers in a Direct Marketing FrameworkRFM was formalised in direct-response marketing literature in the 1990s — the approach has proven durable because it maps to three independent behavioural dimensions.hbr.org
Where RFM runs out: it describes past behaviour, not intent. Two users can have identical RFM scores while being on completely different trajectories — one accelerating into power-user status, one decelerating toward churn. RFM can't tell them apart. Lifecycle decisions benefit from knowing the direction of travel, not just the position.
RFM also struggles with non-transactional products. For a content platform, monetary value is a weak signal; for a free product, it's nonexistent. Programs that adapt RFM by bolting on a "session count" or "content consumption" proxy end up with a fragile model that pretends to be RFM but behaves like a homegrown activity score.
The three-layer segmentation model
Position tells you what the user already did. Direction of travel tells you what they'll do next. Good lifecycle segmentation captures both.
Layer 1 — Lifecycle stage. Every user has a stage: new, activated, engaged, at-risk, lapsed, churned. These are mutually exclusive and collectively exhaustive. Lifecycle stage is the single most important filter in almost every lifecycle program — it decides whether someone gets an onboarding email or a winback email, and mis-classifying a user here is the most expensive segmentation error you can make.
Layer 2 — Engagement tier. Within a stage, users vary by how intensely they engage. Power users, regular users, light users, and inactive users. Tiering is the layer where RFM genuinely shines — the three dimensions (recency, frequency, value) are the right inputs for tier assignment within a stage.
Layer 3 — Behavioural intent.Recent actions that signal forward-looking intent. Added an item to cart. Viewed the pricing page twice this week. Invited a teammate. Opened a feature for the first time. Intent segments are short-lived (usually 24–72 hours) and always additive on top of stage + tier — they trigger campaigns but don't re-categorise the user.
Together, these three layers answer different questions. Lifecycle stage: what program family should this user be in? Engagement tier: how intense should the communication be? Behavioural intent: what's worth triggering right now? Each layer drives different decisions, and the clarity of those separate jobs is what keeps the segment count manageable.
Getting lifecycle stage right is the foundation
The most common segmentation disaster: an unclear definition of what separates one lifecycle stage from the next. "Activated" means different things in different product teams at the same company, and unless the definition is written down and operationalised, users will flicker between stages based on which team's definition was applied last.
A practical approach: define lifecycle stage as a derived attribute in your CDP or Braze, computed from raw event data using a single canonical rule. New = signup within the last N days OR hasn't yet taken the activation event. Activated = took the activation event AND hasn't hit the lapsed threshold. At-risk = between engagement threshold and lapsed threshold. Lapsed = beyond lapsed threshold. Churned = cancelled or deleted. Each threshold is a number you tune for your product — for infrequent-usage products the thresholds change shape entirely, covered in the lifecycle for flat products guide.
The non-negotiables: one canonical definition, enforced computationally. No team overrides. The Orbit CRM Data Model skill covers the data architecture required to support this — the derived attributes, the event taxonomy, and the rules that keep the stages consistent.
Implementing the model in Braze without exploding segment count
Braze gives you three tools for segmentation: segments (audience definitions), custom attributes (per-user fields), and user-level derived values (usually populated via CDP or API). A common mistake is creating a segment for every combination — if you have 6 lifecycle stages and 4 engagement tiers, creating 24 segments is wasteful and unmaintainable.
The pattern that scales: store lifecycle stage and engagement tier as custom attributes on the user profile. Create segments only for the actual audience combinations your campaigns target (perhaps 10–15 named segments), constructed from those attributes plus any additional filters. Intent-based segments are usually best as transient Currents- or webhook-triggered campaigns rather than persistent segments.
The Orbit Namer generates segment names from a consistent convention so your segment list stays scannable, and the Braze Segment Analysis skill audits existing segments for overlap, redundancy, and unused entries.
When predictive segmentation earns its cost
The most ambitious segmentation layer — predictive tiers — is also the most commonly overbuilt. A churn-risk score or likelihood-to-purchase model is only worth the investment if three conditions hold: you have enough data volume for a meaningful model (usually 100K+ users, longer for lower-traffic products), you can act on the score in a meaningful way within the lifecycle program, and the prediction is more accurate than the simple rule-based proxy you'd otherwise use.
If you don't have those three things, a rule-based "at-risk" segment tuned from lapsed-user regression (e.g., users whose session cadence dropped by more than 50% over the last 30 days) usually outperforms a half-trained ML model at a fraction of the operational cost.
When predictive segmentation does pay off, integrate the score as an attribute on the Braze profile rather than a Braze-native segment. This preserves your model ownership in the CDP or warehouse, decouples the model's update cadence from Braze's segment refresh cycle, and lets you version the model without rebuilding segments.
Frequently asked questions
- Is RFM still useful for lifecycle marketing?
- Yes, but not as the whole model. RFM is a strong tool for assigning engagement tiers within a lifecycle stage. It runs out when used as the entire segmentation — it describes past behaviour without predicting future direction, and it struggles with non-transactional products.
- How many segments should a Braze workspace have?
- Fewer than you probably think. Most programs operate comfortably on 10–15 named segments built from a smaller set of user attributes (lifecycle stage, engagement tier, lifecycle program opt-ins). Dozens more segments usually means the team is creating audience definitions instead of using them.
- What's the difference between a lifecycle stage and a segment?
- Lifecycle stage is an attribute on every user that answers 'what phase of the relationship is this user in?'. A segment is a saved audience definition used by specific campaigns. One user always has one lifecycle stage; that user belongs to many segments simultaneously. The stage is part of nearly every segment; segments combine it with other filters.
- How often should I recompute lifecycle stage?
- Daily, or event-driven. Lifecycle stage based on a daily job that re-evaluates thresholds is usually sufficient. Event-driven updates (e.g., 'move to activated the moment the user fires the activation event') are better for programs where immediate stage transitions matter, like onboarding.
- Should I build a churn prediction model?
- Only if you have enough data volume (usually 100K+ users with meaningful churn history), you can act on the score within the program, and it beats a simple rule-based proxy. For most programs, a well-tuned rule-based 'at-risk' segment outperforms a half-trained ML model at a tiny fraction of the ops cost.
- Where should predictive scores live — in Braze or upstream?
- Upstream in your CDP or warehouse, pushed to Braze as a custom attribute on the user profile. This preserves model ownership, decouples model updates from Braze segment refresh, and lets you version and rollback the model without rebuilding segments.