Recency, Frequency, Monetary

The three dimensions of RFM are computed per customer from transaction records. Frequency counts the transactions. Monetary sums their amounts. Recency measures the time since the most recent one — and that is the dimension worth handling carefully.

Recency has two common definitions running in opposite directions. Counted as days since the last purchase, a smaller number means more recent. Counted forward from a reference date placed before the data, a larger number means more recent. Both appear in published tutorials, both are correct, and each requires its own scoring direction.

Applying one definition’s direction to the other’s numbers inverts the segment. In a hypothetical comparison, one customer last bought 5 days before the cutoff and another 20 days before it. Their forward offsets from a reference 365 days before the cutoff are 360 and 345 days. Smaller days-since and larger forward offsets both identify the first customer as more recent. Reversing only the scoring direction reverses that preference. For banded scores, keep the same boundary and tie policy when comparing conventions.

The defense is a check rather than a convention: after scoring, print mean days-since-purchase by recency score and confirm the top score has the smallest. Naming the column for what it measures — days_since_last rather than recency — makes the direction visible where it is used.

Monetary deserves one check of its own. Where prices sit in a narrow band, total spend rises mainly because customers order more often, and monetary becomes a proxy for frequency rather than a third signal. Correlating the two, and comparing average order value against total spend, shows whether the third dimension is earning its place.


Discover more from Insightful Data Lab

Subscribe to get the latest posts sent to your email.

Similar Posts

Questions, corrections, or additional insights?

This site uses Akismet to reduce spam. Learn how your comment data is processed.