The starting point
The client is a fintech in the consumer-credit category. Five customer-facing products. Three meaningful customer segments — call them Acquirers, Builders, and Optimizers. Each segment has different content, different default product recommendations, different default email cadence.
The segmentation logic was built three years ago and had not been revisited since. A customer landed in a segment based on their initial product, their initial credit-score band, and a few self-reported preferences captured at signup. Once assigned, customers stayed in their segment until they explicitly opted out of all marketing — which almost nobody did.
The result was that customers who joined as Acquirers in 2022 — when their need was credit access — were still being treated as Acquirers in 2026, even after several had become Optimizers (managing existing credit) and a few had become Builders (focused on credit-score improvement). The system was right about who they used to be and wrong about who they currently were.
The reframe
When we joined the engagement, the brief was technical — rebuild the personalization engine on a new platform. The first month's diagnostic surfaced that the technical rebuild was not the actual problem. The conceptual model behind the segmentation was the problem. Rebuilding the engine without changing the conceptual model would produce a faster version of the same wrong personalization.
The reframe we proposed was small in words and large in implications: segments are predictions, not states.
A state is what someone is. A prediction is the system's best current guess about what someone is, given the data available. States are static; predictions update.
In practice, this meant the new system would maintain a probability distribution across the three segments for each customer, updated continuously as new behavioral signal arrived. A customer who had been an Acquirer in 2022 but had stopped using credit-access features and started using credit-monitoring features would, over time, see their probability mass shift toward Optimizer. The system would treat them as a probability-weighted mix during the transition, then as an Optimizer once the probability mass had clearly shifted.
What changed in the build
The technical shift was meaningful. The state-based system was a lookup table — customer ID maps to segment label, segment label maps to content rules. The prediction-based system is a model that produces a continuous output, evaluated on each interaction.
This sounds expensive. In practice it has not been. The model is small — three classes, ~12 input features, retrained nightly on the past 60 days of behavior. Inference latency is under 5ms per evaluation. The cost is in the substrate: the data pipeline that feeds the model, the monitoring that tracks model drift, the rollback path if the model misclassifies in ways that cause customer harm.
The substrate work has been the bulk of the four months. The model itself was a two-week effort. The pipeline, monitoring, and rollback work has been everything else. This is, again, the pattern we see across our engagements: the model is the easy part, the operational substrate is the hard part.
What it has changed about the business
Four months in, the shift in approach has produced three observable changes.
First, the email cadence is matching where customers actually are. Customers transitioning from Acquirer to Optimizer are receiving Optimizer-relevant content within roughly two weeks of the behavioral signal that triggered the transition. Under the old system, they would have stayed on Acquirer content for years. Email open rates on this cohort have improved meaningfully — illustrative range, 30-50% over the prior baseline.
Second, the product team is seeing different cross-sell signals. The old segmentation framed cross-sell opportunities by initial segment. The new approach frames them by current trajectory — customers whose probability mass is moving toward a different segment are the cross-sell candidates, because they are by definition exhibiting need outside their original segment. This has surfaced cross-sell opportunities the product team did not know existed.
Third, the customer service team has different data when customers call. The agent screen used to show segment label. It now shows segment probability and recent trajectory. When a customer calls with a question that does not match their original segment, the agent now sees that the customer's behavior has been shifting, and they can have a different conversation.
What is still open
We are still four months from the end of the engagement. Three open questions are worth flagging honestly.
One: handling the transition zone. When a customer's probability mass is split — say 50% Acquirer, 50% Optimizer — what content do they get? The current answer is to weight content selection by probability, which produces a coherent experience but not necessarily the optimal one. We are testing a variant that defaults to the higher-probability segment but explicitly probes the other segment with one targeted touchpoint per month. The data on this is too early to share.
Two: model drift. The model is retrained nightly, but the underlying behavioral patterns are also drifting. We do not yet have a clean signal for "the model itself is becoming wrong about the world." This is the work for months 5-6.
Three: customer-visible transitions. Should the customer see anything that indicates the system has updated its understanding of them? The product team is split on this. One camp argues for explicit "we noticed your needs have shifted" messaging. The other argues that explicit messaging draws attention to the segmentation and creates surveillance unease. We do not have a recommendation yet.
The shift from states to predictions is the change that has produced the most value so far, and it is a conceptual shift that other brands running stale segmentation logic could probably benefit from. If you are running personalization based on segmentation that has not been revisited in three years, the diagnostic conversation is worth having.