A score you can read
No black box. The engagement score is the sum of a handful of named factors — how often they show up, how much of the product they use, how recently — with a trend as the tie-breaker. It never looks at spend, which is exactly the point: it is the axis RFM leaves out.
The factors
Points sum to a 0 to 100 score. Session rate carries the most weight — showing up is the strongest engagement signal — then feature breadth, then recency, with a climbing trend adding a bonus and a fading one subtracting. Illustrative weights; the production model calibrates them on your data.
The bands
No new tracking to invent. These are events you already capture; the model reads them as they are.
- ·App and web sessions per customer, the show-up signal
- ·Interaction events: opens, views, saves, feature use
- ·Products touched, the depth axis
- ·Recency of activity, separate from spend
Models are tuned, not installed. Each step is earned on evidence, and the previous step keeps running until the next one beats it.
- v0Heuristic, day oneTransparent rules on the data you already have. Live in Braze in weeks, and everyone can see why it fired.
- v1Calibrated to your historyThresholds and weights re-fit to your own base and vertical, backtested against what actually happened.
- v2ML where it earns itA trained model replaces the rules only when it beats them on holdout data. Explainability stays a requirement.
- v3Monitored and re-tunedDrift watched, thresholds reviewed on a cadence, and every change proven with holdouts before it ships.
Engagement starts the moment session events flow, before any spend history exists. Factor weights are re-fit per vertical (a daily-app QSR guest and a seasonal hotel guest show up very differently), and the band cut-offs are calibrated to your base's real distribution rather than fixed percentiles.
