Bayesian Shifted Beta Geometric model for customer retention

In Fader, P. S., & Hardie, B. G. (2007). How to project customer retention. Journal of Interactive Marketing the authors describe an accurate approach to estimating and predicting customer lifetime value in a contractual setting - for example, a magazine subscription. The model they use is a Shifted Beta Geometric model.

In this post, I will demonstrate using our custom R package centricity we’re able to replicate the results using a Bayesian implementation of the model.


In the paper, the authors provide the following table of survival rates for two cohorts of new customers - ‘high-end’ and ‘regular’.

They use this to build Shifted Beta Geometric models in Excel for the two groups. They artificially censor the observations, so that we’re only fitting the model on the first 7 years of data, using the later observations for validation.

Here are the survival and retention curves for the two groups. The model fits the data extremely well.

In similar style to PyMC Labs, we convert this into individual-level data using 1000 customers and then fit our Bayesian models in R.

The black lines are the actuals and the green and red ribbons are the modelled credibility intervals. We can see they do a pretty good job of fitting the data and extrapolate well beyond the first 7 year training period.

Making the model Bayesian has a number of benefits. We can add covariates to our model, to make our retention estimates vary over time. We can add hierarchical structure, to enable estimation in cases where we don’t have many data points for some categories. And we can use the distributions we get out of the model within simulations to understand the likely profitability of different product launches, price changes or marketing investmnets.


Get in touch to find out how we can support your team in evaluating customer lifetime value.

Previous
Previous

How to estimate LTV:CAC using Bayesian models

Next
Next

Subscriber Lifetime Value with Hierarchical Bayesian Survival Analysis