Skip to main content

Description

 

 

The workbook includes calculations of RFM segments and basic views on top of that.

For those who not interested in the whole story, the final calculations are

under RFM Dim Folder in Dimensions, and complimentary RFM Dim views.

 

For those who have a spare time to walk through, the journey began

in March 2014 with the foundational blog article by null :

 

Recency, Frequency, Monetary analysis in Tableau | Bora Beran

 

null used RANK_PERCENTILE() Table Calculation along each (R F & M) scale,

and his approach is reflected in the current workbook -- with the calculations found under

RFM Table Calcs Folder (in Measures). The first seven views are based on that logic.

 

The main complication is that the model is based solely on Table Calculations.

There are the consequences of that approach, below are just two main points.

First, to re-use the results (calculated RFM segments for each Customer / Period)

one need to materialise them -- either by exporting view data to a file

or by copy-pasting into the new Clipboard datasource to use in place.

These manual steps have to be repeated upon any change in the process.

 

Second, analysing segmentation results on-the-fly -- counting Customers in segments,

calculating boundaries, aggregating other useful metrics, such as Sales Amount --

becomes harder if possible at all. One outta use fancy viz techniques and calculations

just to get a minimum level of sense-making of the data (see views 5th to 7th).

 

Besides, I've been surprised (several times) to find the packed bubbles

to be especially effective when explaining RFM segmentation

to those (uninitiated) unfamiliar with the topic :-)

 

To overcome the complexity of making RFM all Table Calcs

one needs to figure out how to implement them as Dimensions.

 

The approach would be using PERCENTILE() -- the aggregate calc --

inside a LOD expression, which could be wrapped in a FIXED LOD.

 

The feasibility of this approach became obvious when I first saw 

null answering the question about

 

Re: How to create dynamic ranges based on percentile values?

 

Answering the thread ends up with the calculations very similar

to those used for Frequency (the F component of RFM model).

They are summarised in the RFM F Workout section of the workbook

(the Folder in Measures and the View of the same name).

And making RFM Dimensions from that seems relatively straightforward.

 

End of the story :-)

 

Screenshot:

RFM Segmentation

 

 

Tableau Version: 10.0

 

Original Authornull

 

 

PS   UPDATED the workbook, added simplified

(all FIXED) versions of RFM Dim calculations.

They're named as [RFM ... -- SR] --

huge thanks to null,

who had just re-invented it here:

 

Re: How to make financial projection models

 

PPS  Jul-28, 2018 UPDATE:

 

Added a simplified workbook -- no RFM Segmentation Periods,

Quartiles instead of Quintiles, hence R, F & M Codes 1 to 4 --

together with a complementary Tableau Prep Workflow:

RFM_Flow.png

The flow would allow doing the actual RFM Segmentation right in Prep,

then joining the final RFM Codes table to any target dataset ( ON [Customer ID] ).

 

Renamed the original workbook to RFM_Original_v10.0.twbx

49 answers
  1. May 9, 2017, 8:33 AM

    Hello Yuriy,

    Thanks for the great work and sorry to bring this rather old topic up. Do you see any way to make the RFM calculations dynamic based on a date?

    In this example I have a 'static' picture as of today of each customer, but it would be great to see the evolution of the position of the customer as it was at the end of the year/quarter/month etc.

    Hello Yuriy,Thanks for the great work and sorry to bring this rather old topic up. Do you see any way to make the RFM calculations dynamic based on a date?

0/9000