Customer Churn: Segmentation Dashboard
7,043 Telco customers. Click chips to filter by contract, tenure and payment method: every KPI and bar recomputes live in your browser, straight from the same rows the SQL model reads.
Dashboard details
Contract
Month-to-month
One year
Two year
Tenure
0-6 mo
7-12 mo
13-24 mo
25-48 mo
49+ mo
Payment
Electronic check
Bank transfer
Credit card
Mailed check
Customers in view
—
Churn rate
—
Active MRR
—
Revenue at risk
—
Already lost (churned)
—
Churn rate (bar, 0–100%)
Revenue at risk (label, $/mo)
By Contract (Tenure + Payment filters apply)
By Tenure (Contract + Payment filters apply)
By Payment Method (Contract + Tenure filters apply)
Key takeaways
- Month-to-month contracts are the single biggest lever: 42.71% churn versus 11.27% (one year) and 2.83% (two year); 83% of the $70,281/mo at risk across all three contract types sits in this one segment.
- The highest churn rate isn't the highest dollar risk. 0-6 month customers churn fastest (52.94%) but rank only 4th by exposure; 25-48 month customers, at a much lower 20.39% rate, rank 2nd because their active base is 2.5× larger. Ranking by rate alone would misdirect the budget.
- Electronic check is a payment-method outlier: 45.29% churn, 2.4-3.0× every other method, worth $43,504/mo of revenue at risk on its own, more than the other three methods combined.
- The highest-risk addressable segment: month-to-month + first six months + electronic check: 680 customers, 67.65% churn, $9,063/mo at risk (top row of the table below).
- Realized loss vs. projected risk are kept separate on purpose: $139,131/mo has already left with churned customers historically; $84,118/mo is the projected exposure still sitting on the active book today. Conflating the two would either understate today's risk or overstate historical damage.
All 39 micro-segments (contract × tenure × payment, min. 30 customers, click any column header to sort)
| Contract | Tenure | Payment | Customers | Churn | Revenue at risk |
|---|
Sourced from marts.segment_micro, gated by HAVING count(*) >= 30 so no row rests on a handful of customers. Sorted by revenue at risk by default; not filter-reactive, this is the complete, unfiltered set.