Skip to content
All work

Case study

  • Banking
  • Analytics
  • Python

Churn retention

A retention desk for card customers. It scores how likely someone is to leave against what they are worth, recommends one action for each of them, and compares four ways of spending the retention budget on the same book.

  • Python
  • Analytics
A bank vault door at the end of a dim concrete corridor, lit by a line of ceiling lamps, the wet floor holding their reflection.
Role
Modelling, decision logic and the operator views
Built with
Python · Analytics

The challenge

Most of the book does not need an offer. Mass cashback hits everyone, including the customers who were never going to leave, and the money is gone whether it changed anything or not. A thin rule hits almost no one, which is safe and does nothing. Neither is a policy. The question is where risk and value actually meet, and that is a per-customer question a blanket campaign cannot ask.

What we built

  • Risk and value, scored separately

    A churn probability and a customer value for every row. They are two different questions and combining them too early is what produces a campaign aimed at cheap customers who were leaving anyway.

  • One recommended action per customer

    Each row maps to a single action — no action, cashback, a credit limit increase, a fee waiver, the loyalty programme, or a personalised loan offer — rather than a score an operator is left to interpret.

  • No action is an action

    The large quiet part of the book is labelled explicitly rather than left out of the output. A retention tool whose recommendation is always to spend has not answered the question it was asked.

  • Four policies on the same book

    No intervention, mass cashback, a rules approach and the agentic one, compared on expected profit and on how many customers each targets. The agentic row is one strategy in that table, not the premise of it.

  • A single-customer view

    The inputs for one person on the screen, and the recommendation that came out of them. It is what makes the policy table arguable rather than something to accept on faith.

Technical approach

Score churn probability and customer value per row, map each row to an action, then compare the four policies on expected profit and on the number of customers targeted. Expected profit is what makes the comparison honest: an action that retains someone worth less than the offer is a loss the model has to be able to report. The figures on the screens are the model running on a dataset — the tool exists to compare policies, not to publish a result.

The product

A scatter plot of churn probability against customer value, each point coloured by its recommended action — no action, cashback, credit limit increase, fee waiver, loyalty programme or personalised loan offer — with the unactioned majority packed against the low-risk edge.
Operator views from the retention desk. Figures are the model on a dataset, not a named bank's results.
The single-customer view: one customer's inputs listed across the top, and below them the churn probability, the customer value, the expected profit and the one action recommended for them.
One customer — the inputs that went in, and the action that came out