Unique customer ID
By Iago Carballo · Published on Jul 2, 2026
RFM sounds like an expensive consulting formula, but it’s simple: Recency (when they last bought from you), Frequency (how often) and Monetary Value (how much). With those three variables you know who your best customer is, who’s about to leave, and who isn’t worth chasing. You don’t need a complex statistical model. You don’t need a data science team. What you need is to stop treating all your customers the same, because they aren’t. If you launch the same sale campaign to your entire base, you’re giving away margin to customers who would have bought anyway, and wasting time on those who will never come back. The RFM retail model tells you exactly who to talk to, when, and with what message.
Picture a clothing store with 15,000 customers in the database. For most retailers, those 15,000 are “the email list”: people who receive the same newsletter every two weeks. With RFM, those 15,000 become groups with completely different behaviors. And treating them differently is what moves the metrics. The three variables are:
Recency (R) — When did they last buy?
A customer who bought three weeks ago and one who bought eleven months ago are not the same customer. The first is in active mode: they remember you, they liked what they bought, they have a high probability of coming back. The second has almost forgotten you. Getting them back will require a very different kind of effort.
Frequency (F) — How regularly do they buy?
Someone who has bought six times in the past year has an established behavioural pattern with you. Someone who has only bought once might be a one-off sale shopper, or someone who didn’t return because something didn’t work. Frequency separates the habit customer from the occasional customer.
Monetary Value (M) — How much have they spent?
It’s not just what they spent on their last purchase, it’s the total accumulated. A customer who spends €40 every month is worth far more over the year than one who made a €200 purchase during a sale and never came back. When you combine these three variables, you identify your best customers with a precision that no demographic criterion can match. A grocery retailer with tens of thousands of active customers may have a very small group that accounts for a disproportionate share of its revenue. With RFM segmentation applied to retail, you find them. Without it, you treat them like everyone else.
Not all RFM models use the same scale. You can work with scores from 1 to 5, from 1 to 3, or with high/medium/low categories for each variable. What matters is not the scale, it’s that the segments you produce are actionable. These five have the greatest impact for the omnichannel retailer:
They bought recently, do so frequently, and spend well. These are the customers who already love you. The most common mistake with this segment is ignoring them because “they buy on their own.” This is precisely the customer you need to treat better than anyone else: don’t take them for granted. Action: early access to new arrivals, top-tier in-store treatment, exclusivity messaging. No mandatory discount.
They used to be good customers, frequent, high-value, but they haven’t been seen for a while. Recency has dropped. They still remember you, but if you do nothing in the next few weeks, they will slide into Dormant. This segment is the most valuable to recover because they already have a history with you. They know what you offer and chose you before. The question is not whether they can come back, it’s whether you remember to reach out before it’s too late. Action: personalized reactivation campaign based on their real purchase history. “We haven’t seen you in a while, here’s what you bought last time” converts far better than a generic discount.
Recency is very low. They haven’t bought in many months. Some are recoverable, others are not, and the mistake here is spending the same effort on all of them. Before launching a mass reactivation campaign, it’s worth calculating whether the cost of the incentive is justified by the recovery probability and the customer’s historical value. When it’s worth trying: when historical value is high and prior frequency was good. When it’s not: when it was a one-off purchase two years ago that was never repeated.
First or second purchase recently, good basket size. No pattern established yet, but the signal is good. This is the segment where the second purchase changes everything: someone who buys twice has a significantly higher probability of buying a third time. Action: welcome communication with valuable content, introduction to the loyalty program if one exists, and a concrete reason to return within the next few weeks.
Near-VIPs deserve their own section because they are the most profitable segment to activate and the one most frequently overlooked. These are customers with high frequency and good monetary value whose recency has started to slip slightly. They are one step away from becoming At-Risk customers. With the right nudge, exclusive access, a tier benefit, a personalized message, they become Champions. Without that nudge, they fall. These are exactly the customers it pays most to focus on right now: the effort required to move them to the next level is lower than the effort to recover a Dormant customer, and the return in frequency and average order value is greater. A fashion chain that activates this segment with early access to a new season collection, no discount, just the feeling of being first, can see a notable uplift in purchase frequency for that group in the weeks that follow. The customer doesn’t perceive an offer: they perceive recognition. Action: tier upgrade program, exclusive message “you’re almost at the next level”, non-monetary benefit that reinforces the VIP customer identity.
Getting RFM to work doesn’t require a months-long project. It requires five steps executed well: Step 1 — Centralize your purchase data You need a transaction history with date, amount, and identified customer. If you have both physical stores and ecommerce, the data needs to be in the same table. If they are separate, the segments you get will be incomplete, and so will the decisions you make from them. Step 2 — Define the analysis period RFM is not forever. A customer who bought three years ago in a different life context is no longer the same customer. The standard approach is to work with the last 12 to 24 months of history. Longer periods distort the picture; shorter periods don’t give enough volume to measure frequency reliably. Step 3 — Score each customer Assign a score to each customer for R, F and M. The simplest method is to divide your base into quintiles for each variable, from 1 to 5, and combine the three scores. A 5-5-5 is your Champion. A 1-1-1 is the customer who probably won’t return and who it makes no sense to chase with expensive incentives. Step 4 — Assign actions by segment and activate There is no point calculating RFM if the result sits in a spreadsheet. Each segment needs an associated marketing action: what to communicate, when, through which channel, and with what message. The table in the next section gives you the full map. Step 5 — Update regularly RFM is dynamic. A customer can move from Champion to At-Risk in just a few weeks if they stop buying. If your segmentation is updated once a year, you’re working from an outdated map.
Discover the segments that generate the most impact in retail and the concrete actions that help increase purchase frequency, customer loyalty, and reactivation.
| Segment | Recency | Frequency | Value | Profile | Key Action |
|---|---|---|---|---|---|
| Champions | High | High | High | Frequent buyers, high spenders, active. | VIP without discount. |
| Almost VIP | Medium-high | High | High | Starting to space out visits. | Recognition. |
| At risk | Low | High | Medium-high | Have stopped coming. | Reactivation. |
| Inactive | Very low | Variable | Variable | Inactive users. | Selective recovery. |
The biggest practical problem with the RFM model is not understanding it, it’s keeping it up to date. A segment calculated manually in a spreadsheet is accurate on the day you calculate it. The following week, some of your Champions have bought again, and still are, but other At-Risk customers have crossed the line into Dormant without anyone noticing. The campaign you launched based on that file is no longer talking to the customers it needs to. Dynamic segmentation solves this. Instead of recalculating manually, the system continuously evaluates each customer’s behavior and moves them between segments automatically whenever their RFM changes. A customer who has gone three weeks without buying starts to drop in recency. If no campaign is launched to retain them, they keep falling. If the system detects it in time, you can activate a communication before it’s too late. Platforms like Wapping calculate RFM natively and keep segments updated without manual intervention: segments are updated in real time or, for more complex rules, every 2 hours. When a Near-VIP’s recency starts to drop, the system detects it automatically and marketing can activate the campaign without waiting for the next data export, without opening a ticket to IT.
80 millon customers managed in production
Platform data shows a 20% increase in average order value (AOV) on cross-sell campaigns when the right segments are activated at the right time. With 80 million customers in production, the segments Wapping calculates are not theoretical.
+20%
average order value (AOV) in cross-sell campaigns · live retailers
If you want to see how it works with your real data: Request a 30-minute conversation →