Problème
Un client e-commerce mid-market avait des coûts d'acquisition client en hausse mais aucun signal fiable sur quels clients étaient sur le point de partir. Les règles standard "n'a pas acheté depuis 90 jours" signalaient tout le monde trop tard — à ce moment-là, le client était déjà parti chez un concurrent.
Approche
Couche d'analyse de survie construite sur les événements de transaction combinée à un classifieur gradient-boosted prédisant la probabilité de churn à 30/60/90 jours. Feature engineering sur recency, frequency, diversité du basket, sentiment des tickets de support, patterns de browse-without-buy, et ancres saisonnières. Probabilité de churn par client associée à une attribution par feature, pour que l'équipe rétention puisse voir pourquoi le modèle signalait chaque compte.
Stack
Python · XGBoost · lifelines · event-stream pipeline · Postgres · scikit-learn
Résultat
L'équipe rétention est passée de campagnes win-back larges à des interventions par segment. L'attribution du "pourquoi" s'est révélée le plus grand déclic — différents segments churnent pour des raisons différentes, et des emails de rétention taille-unique brûlaient du budget sur des clients qui avaient besoin d'autre chose entièrement.