NorthStar Mobile, a regional telecom provider with 1.2M subscribers, wants to predict which customers will churn in the next 30 days so the retention team can target save offers efficiently. The team needs a model that is fast, explainable, and easy to retrain monthly.
You are given a customer-level training dataset built from the last 18 months of account, billing, usage, and support history.
| Feature Group | Count | Examples |
|---|---|---|
| Account profile | 6 | tenure_months, contract_type, autopay_enabled, region |
| Billing | 7 | monthly_charges, total_charges, late_payments_90d, discount_amount |
| Usage | 9 | avg_call_minutes_30d, data_gb_30d, dropped_calls_30d, roaming_days_90d |
| Service/support | 6 | support_tickets_90d, complaint_flag, outage_exposure_hours, device_age_months |
| Engagement/change | 5 | plan_change_count_90d, add_on_count, days_since_last_login, payment_method_changed |
churn_30d = 1 if the customer cancels within 30 days, else 0A good solution should achieve strong ranking performance and actionable recall for the retention team: ROC-AUC >= 0.82, PR-AUC >= 0.42, and recall >= 0.70 at precision >= 0.35 on a held-out test set. The model should also provide interpretable coefficients or feature effects.