How to Calculate RFM Score - Recency, Frequency, Monetary


RFM Analysis is a way of grouping & organizing all your customers into segment-based clusters according to customer behaviors: 

  • Recency - How recently did the customer purchase?
  • Frequency - How often do they purchase?
  • Monetary Value - what's the monetary value of their purchases?

The goal of RFM analysis is to understand who is more likely to buy from you again and when they will do it. RFM models provide a bird-eye view of your customer base and better understand customer behaviors and purchasing habits. 

RFM uses purchase history. Advanced Search in PSCUM.CRM calculates RFM scores. RFM values range from 1 to 5.  A score of 5 represents the top 20% of the population, while a score of 1 represents the bottom 20%, scores 2, 3, and 4 the 20% ranges in between.  A score of one (1) means the least recent, least frequent, or lowest monetary value, while a score of five (5) means the most recent, the most frequent, or the highest monetary value. The three measures together range from 111 to 555. The highest score is 555, meaning the customer purchased most recently, most frequently, and at the highest monetary value. The lowest score is 111, meaning the customer has purchased the least recently, least frequently, and at the lowest monetary value. 

The analytical technique entails establishing a benchmark RFM score and saving it for future reference.  In the CRM grid, the system identifies that value as the "Last RFM."  You would use the scores to develop segments and outreach strategies. After a while, you would regenerate RFM scores and compare the results to their Last RFM score to identify customers whose scores improved or worsened, increased or decreased.  When regenerating RFM scores, you must use the same start-stop date range and selection criteria to compare apples to apples.  

Table of Contents

Where Is It Found


Steps to Calculate RFM

Step 1: PSCUM.CRM Advanced Search

Launch the menu option PSCUM.CRM Customer Management and select Advanced Search. 

Select SALES HISTORY within Advanced Search. 

The following example uses only Selection 1.

  • Use the first dropdown control to "Select customers that...".
  • Use the second dropdown control to indicate customers that "Purchased."
  • Enter the date range of sales you want to include in the calculation. In this example, we used the current year to date.
  • Finally - and this is critical - check the box to indicate "Calculate (R)ecency, (F)requency, (M)onetary Score."
  • Then select DONE to finish.   

Once returned to the CRM Grid, note the yellow control labeled "Refresh Needed."  Click to refresh the CRM screen and pull up all customers meeting your Advanced Search criteria.

Step 2: Review

Immediately following the RFM score calculation, nine additional columns appear in the CRM grid, highlighted below. Calculated RFM scores are temporary and are shown for comparison with a customer's last RFM score if any. Calculated RFM scores are only visible while Advanced Search is active and disappears from the grid when ended. 

In the image above, Rows 14 and 15 have no Last RFM score, probably because one was not previously saved or was removed. Rows 1 through 13 contain the Last RFM score, however, and the current RFM calculation indicates changes in behavior compared to the Last RFM calculation. For example, Row 6 shows a current RFM of 114 compared to the Last RFM of 453, indicating that the customer's behavior changed negatively since the last analysis. That is, purchased less recently, purchased less frequently, but spent more than the last analysis.  

Step 3: Use Mass Change to Save the most recently calculated RFM score.

To save and make a permanent record of the current RFM calculation, choose Work With Checked to Mass Change selected records.

Choose RFM as the Field to Change ... 

... then what action to take.

Press Enter then Continue to review and confirm before and after results.

PSCUM.CRM - RFM Program Logic - Building Buckets

Method:  Inspect the items being measured. Find the top and bottom values. Take the difference and divide by 5 giving bucket ranges. Assign items to buckets. Done (Tim Smith, 1981- )

Recency Example (the R-Score of RFM)

  • Scenario:  Order Selection in 24-month date range, from Jan 1, 2020, through Dec 31, 2021 
  • 24 months / 5 = 4.8 months (rounded to 5)
  • Yields five 5-month ranges
Last Purchase in Month Range...R-Score

Last Purchase in Date Range (assuming SOLD or SHIP date?)

21-251January 2020 - April 2020
16-20

2

May 2020 - September 2020
11-153October 2020 - February 2021
6-104March 2021 - July 2021
1-55August 2021 - December 2021

Questions for Programming: 

  1. What date does the system use: Batch, Sold, Shipped?  Assumes program uses Batch Date since individual line items can be SOLD and SHIPPED on different dates.  
  2. When rounding, where does the program put the short range?  In the example above, priority was given to R-Score 5, Last Purchase within last 1-5 months. R-Score 1 represents last purchase 21-25 months ago.  Since our date range only encompasses 24 months, the program will not encounter anyone whose last purchase was 25 months ago. 
  3. Is the system selecting negative amount transactions? That would negatively affect a RECENCY score.

Frequency Example (the F-Score of RFM)

  • Scenario:  N customers, each having completed a different number of purchases within whatever date range. The value of n does not matter. 
  • Tally purchasers per customer
  • Highest individual count is 15
  • Lowest individual count is 1 
  • 15+1 = 16 /5 = 3.2 (rounded to 3)
  • Yield five 5 ranges in increments of 3 
Frequency ranges...F-Score

Individual tally/count of purchases ...

1-3 1Same as frequency range
4-6

2

"
7-93"
10-124"
13+5"

Monetary Example (the M-Score of RFM)

  • Scenario:  N customers, each having completed a different number of purchases within whatever date range at whatever monetary value. The value of n does not matter. 
  • Tally net sales amount (question) per order per customer 
  • Highest individual net sale amount is $2,500
  • Lowest individual net sale amount is $20 (assuming CREDIT and negative amount transactions are not being selected 
  • $2,500+$20 = $2,520/5 = $504
  • Yield five 5 ranges in increments of $504
Monetary ranges...RFM Score

Individual sum of monetary value ...

$1 - 5041Same as monetary range
$505 - 1,009

2

"
$1,010 - 2,5233"
$2,524 - 3,0284"
$3,029+5"

Questions for Programming:  

  1. Is the program selecting $0 dollar transactions?
  2. Is the program selecting transactions with negative amounts, including CREDIT transactions?
  3. For monetary scores to be accurate, the system should include all transactions.