Contact
← All projects

Customer churn model

Predicting who will leave a bank is a ranking problem more than a prediction problem. This project treats it that way, and is honest about how much the model can say.

Completed2026BigQuery SQL, Random Forest, Tableau
The two LinkedIn carousel slides from the churn project, one light and one dark
The two LinkedIn carousel slides from the project, shown as published.
  • 37%churn rate in the 1K customer records
  • 52.6%of feature importance sits in age
  • 0.60ROC-AUC, honest and modest

The question

Which customers are most at risk of churning, and how much can a model genuinely tell us?

What I did

  • Prepared the customer data with BigQuery SQL.
  • Trained a Random Forest classifier to estimate churn risk.
  • Built Tableau views to show risk across customer groups.
  • Packaged the results as LinkedIn carousel assets.

What I found

  • ROC-AUC landed between 0.576 and 0.601 across runs.
  • Age alone carried 52.6% of feature importance, and age plus income carried about 74% of the signal.
  • That is only a little better than chance, so the model is useful for ranking risk, not for confident calls on a single customer.

Why I show it anyway

I would rather show a modest result clearly than dress it up. The sensible next step is better features and a cost-based view of which customers are worth contacting. Completed through the Lloyds Banking Group Data Science virtual experience on Forage. Not affiliated with or endorsed by Lloyds Banking Group.

  • Random Forest
  • BigQuery SQL
  • Tableau
  • Churn analysis