13 customers, one per state
Each one is an example of a state the model produces, not an audience of one. Open a customer to see their signature and walk the journey they enter, message by message. Or score one yourself further down, and watch the model decide.
Every segment, as a person
One example customer per segment the model produces, with their RFM-BT signature.
Change the inputs, watch the decision change
Load any of the customers above, or move the controls yourself. The tier and the segment recompute as you go, and the rule that fired is named, so you can see exactly why the model landed where it did.
Inputs
Recency, how recently they purchased (5 = today, 1 = long ago)
Frequency, activity rate, exposure-normalised
Monetary, typical spend per active occasion (intensity)
Breadth, distinct products used
Drives the value tier (× recency decay)
Model output
Top value, broad and loyal across the range.
Recognise, protect and keep first-to-know. Low pressure, high value.
Seven attributes, and nothing else. The plan, the definitions, the holdout assignment logic and the lift stay upstream.
Rule 10 fired. That number is persisted alongside the segment, so a change of state is explainable after the fact rather than an argument. It is also what makes the tree testable: the same inputs give the same rule on any future date.
A teaching version of the same logic, running in your browser. In production it runs in your warehouse over your own data, but the rules are the ones you see here.
One cast, read through every lens
This roster is not specific to RFM. Every other model in the catalogue re-reads the same customers: churn scores their lapse risk, pLTV their forward value, engagement their appetite. That is what makes one shared view of the customer worth building once.
That is RFM working on sample data. The service page has the rest: what it needs from you, how long it takes to build, what it pairs with, and how the lift gets proven.
