Different Ways to Segment Customers using the Recency, Frequency, Monetary Model.

Carlos Abiera
5 min readAug 26, 2021

If you are new to RFM analysis, the work of Avinash Navlani and Joao Correia is a go-to place for you. They offer an in-depth introduction and a walkthrough of doing RFM analysis using a jupyter notebook.

But what can the RFM analysis do for you? If you assess customers’ purchase behavior styles, you’ll be better able to understand how they are experiencing your products by knowing their buying patterns and purchase capacity.

RFM Analysis is a form of calculated marketing wizardly allowing you to quantitatively group customers by their commercial behavior patterns. Thus identifying groups that will respond best to certain types of marketing messages. — SEOButler

  1. Recency: How recently a customer has made a purchase. We can get this value by subtracting the recent date from the customer's last purchase.
  2. Frequency: How often a customer makes a purchase. Counting the number of customer orders.
  3. Monetary Value: How much money a customer spends on overall purchases.

The Matrix

This is a simple 2x2 matrix. We need to assign a working threshold or the number that will divide our matrix. Originally, Tristan Ganry used 80% quantile to create four segments of customer purchase behavior. But for this example, I’ll be using 50% quantile. This means getting the 50% of the distribution values of Recency and Monetary columns.

Grabbed from “How to automatically segment customers using purchase data and a few lines of Python”
50th quantile value of Recency and Monetary
  • Monetary values greater than $600 will have a score of “2”
  • Recency value less than or equal to 12 days will have a score of “2”. We give emphasis to the recent customers.

Having that values in place we can arrive at the following table scores.

We can now have a simple overview of what type of customers we have. Formulate your own strategy to target each customer segment.

Grabbed from “How to automatically segment customers using purchase data and a few lines of Python

The 11 Samurai

In his video, Jonathan Kiekbusch showed 11 groups of customers with different criteria. These are:

The Good Five

  • Champions. Bought the most recent, frequent and have spent the most money.
  • Loyal Customers. Spend a good amount of money, and do so frequently.
  • Potential Loyalist. New customers have spent more than average and done so more than once.
  • Recent Customers. Have bought very recently but not frequently
  • Promising. New customers that haven’t spent much, likely be their first order.

The “Naughty” Six

  • Customers Needing Attention. Buy more often, and for more money than average. But less recently than average.
  • About to Sleep. Just below the average on all three values. Might be lost soon.
  • At-Risk. Used to spend a lot and frequently, but did so a long time ago. Very likely to be lost.
  • Can’t Lose Them. Similar to “at-risk” slightly lower values on all three
  • Hibernating. Hasn’t been back in a long time, spent little and rarely.
  • Lost. all three scores are the lowest of all 11 categories.

Like the previous method, we’ll start with defining our threshold. This time, we are going to define four levels: 0.2,0.4,0.6,0.8.

The same rule applies:

  • Recency: We put higher values on the most recent customers. So if the customer has a Recency value less than or equal to 5, then the customer score will be 5. A customer greater than 16 will have a score of 1.
  • Frequency: The higher the value, the higher the score. Frequency values greater than 5 will have a score of 5.
  • Monetary: Customers whose monetary value is greater than 1190 will have a score of 5, if less than or equal to 252.01 then 1.

Summary:

Clevertap made an impressive visualization of this segmentation

RFM analysis for Customer Segmentation from CleverTap

Another way to interpret segment scoring from the work of Wenling Yao

I made a complex and interesting rule that might work for the larger and well-distributed data set.

Conclusion

We can experiment with rules and make this customer segmentation more distinct. Like adding Average Order Value (AOV) data or customer first purchase date. Depending on the type of your business, you might play around with the relative score of each RFM variable to come up with the final score.

This customer segmentation technique will allow marketers to take a strategic and tactical plan. For me, it’s like identifying people from your party and offering them food and drinks that are appropriate for them regardless of their race, age, and nationality. This in turn improves our relationship and engagement with them and leads to a more long-lasting relationship.

--

--

Carlos Abiera

Carlos C. Abiera currently manages the operations of Montani Int. Inc. and leads the REV365 data team. He has keen interests in data and behavioral sciences.