Churn prediction that pays for itself
Challenge
Retention spend was sprayed across the whole base. The team could not tell who was genuinely at risk, and worse, could not tell which of those an offer would actually move versus who would stay — or leave — regardless.
Approach
We trained a gradient-boosted churn model on usage, billing, and tenure features with strict time-based validation to avoid leakage, and used SHAP to surface the drivers behind each flagged account. On top of that we added uplift modeling — a two-model design that estimates the incremental effect of an offer — so retention budget targets the persuadable customers rather than the sure things or the lost causes.
Architecture
Feature pipeline (usage · billing · tenure) → gradient-boosted churn model → SHAP drivers → uplift scoring → retention campaign
Python · XGBoost · SHAP · scikit-learn — time-based validation, two-model uplift targeting
Results
- Retention budget aimed at persuadable customers, not the whole base
- Roughly 30% of predicted churners recovered by targeted offers in the pilot*
- A top-driver explanation attached to every flagged account
* Illustrative figure from a representative engagement, shown to convey typical scope. Replaced with client-verified numbers before publication.