top of page

Unlocking the Mystery of Customer Behavior: Understanding Days Since Last Transaction


ree

Business Problem — Identify how long ago customers purchased a product.

Why is this a business problem?


ree

A paying customer is a happy customer meaning customer retention is as integral to revenue as new customer acquisition, which then leads us to understand customer behaviour.

One way to understand customer behaviour is to identify the last time a customer did a transaction. You can then create strategies around this, offer them discounts to bring them in, get their opinion on the product and see if there is anywhere, we can improve, etc.

The DAX measure that lets us calculate this is seen below. Personally, if I’m not going to be reusing a measure, I create it as a variable.


ree

Let’s break the DAX into pieces.


ree

Recall that we are trying to identify how long ago a particular customer did a transaction. To get this, we need the last date the customer made a trade and then compared that date with a base date. Usually, the base date should be today’s date, and as the day progresses, the base date changes. In Excel and PowerBI, we have the TODAY() function to get this.

But because this data is hypothetical, we won’t be using the TODAY() function because of the data used. The data ended in 2019, so comparing those transactions in 2019 with today seems far-fetched.

Hence the base date will be the last date any transaction was done in the data. Line 3–7 calculates this for us.



ree


We are telling PowerBi to remove all context on the Sales Data table and give me the last date on the sales data table, i.e. ignore the relationships all relationships on the Sales Data table.


ree

Line 9–10 gets the last date each customer made a purchase.


ree

As we can see, each customer’s last purchase was made on a different day.


ree

All that is left is to get the difference between these two dates.


ree

The result is seen below. Our base date is the 30th of December 2019 because that was the last time any customer made a transaction.


ree

In a real scenario, the DAX will look like this.


ree

The result will then look like this.


ree

You can see the difference when using the TODAY() function. The number looks outrageous because the last sale was made in 2019 and today is 2022.

Continue playing with DAX measures to bring out those great analytics.


ree

Comments


bottom of page