← Back to list

The Telco Churn Illusion: Why 1,001 Charts Won’t Save a Subscriber (and How to Build an EDA That…

The business already knew the churn numbers. What it didn’t have was an answer to the three questions that actually matter to the bottom…

Haniya Azzahra · 2026-05-25 14:18 · 54 claps · 3.1 min read
#data-analytics #machine-learning #churn-prediction #python #customer-segmentation
Open on Medium ↗
Wiki topics: ML · Machine Learning EDU · Education & Learning GRW · Growth & Analytics CRM · Email & CRM

The Telco Churn Illusion: Why 1,001 Charts Won’t Save a Subscriber (and How to Build an EDA That Does)

The business already knew the churn numbers. What it didn’t have was an answer to the three questions that actually matter to the bottom line:

  1. Who is most likely to leave next?
  2. What specific operational or behavioral lever is driving it?
  3. Where will our retention investment generate the highest return?

Basic demographic data does not stop customer churn; deep behavioral insight does.

In a subscription-based model like telecommunications, where acquisition costs are notoriously high, going beyond surface-level reporting isn’t a premium feature it is a baseline requirement for a business to survive.

To bridge the gap between raw data and executive action, I recently built an end-to-end exploratory data analysis (EDA) and predictive modeling project tailored to a telecommunications subscriber dataset.

What is inside the project:

The entire framework is split into two distinct assets, balancing heavy technical execution with high-level business strategy:

1. Technical Notebook (Google Colab )

Technical Notebook (Google Colab): Cleaned 7,043 records and built a 3-layer segmentation approach (Rule-Based Personas, K-Prototype Clustering, and an AUC 0.832 Random Forest Model). ** Note: It is a massive notebook because I explicitly detailed the exact business reasoning, logic, and trade-offs behind every single step.

2. Stakeholder Deck (Google Slides)

Translated that complex code into a compact, executive-ready story line focused on revenue protection and prioritization.

[embed]

Why I Documented Every Single “Why”

Building a data product this detailed takes time. I structured the documentation with two specific audiences in mind: the data community, and my future self.

For the Community: The Advice I Needed 4 Years Ago

Four years ago, I completely blanked on my very first professional EDA project. I generated dozens of charts, ran correlations, and felt completely lost because I couldn’t connect the visualizations to a cohesive business story. When I asked for guidance, a senior mentor told me it just takes “experience” — an incredibly vague answer that helps no one.

I built this step-by-step project to provide the transparent, actionable starting point I wish I had been given back then.

For Future Me: Eliminating Cognitive Debt

I am fully aware that the human brain forgets context quickly. Spelling out the precise logic behind a specific feature engineering choice or hyperparameter adjustment saves me from the inevitable headache of trying to reverse-engineer my own codebase three quarters down the road.

The Challenges that I faced

  1. The ceiling of rule-based manual personas → parameters fighting each other → customers slipping through boxes → arbitrary boundaries you could not defend
  2. Determining optimal number of clusters → elbow and silhouette giving conflicting signals → K=4 vs K=5 decision not straightforward → suspicious K=9 jump that looked like signal but was noise
  3. Mixed data types breaking standard algorithms → K-Means could not handle categorical columns → had to find and justify K-Prototype
  4. The service_counts non-linear discovery → assumed it was continuous numeric → data showed an inverted U shape peaking at count 3 → had to rethink the entire treatment of that variable
  5. Data leakage risk on TotalCharges → looked useful, scored well on MI → realised it was a consequence of churn not a cause → had to drop it and explain why to avoid misleading the model
  6. The Bucket C gap — missing experience signals → no complaint logs, no support call frequency, no NPS → the strongest real-world churn signals simply do not exist in this dataset → had to work with proxies and transparant about the limitation

Final Thoughts: Moving Beyond Static Charts

Exploratory Data Analysis projects should not just output static charts; they should give people a clear roadmap on exactly what to do next. I hope this project gives you some fresh ideas for your own work, and I would love to hear your feedback or thoughts on how to make it even better!✨.

Hi 👋🏻

Thank you for reading trough!

Hope you can learn one or two things from here

If you have any questions, feedbacks, or ideas how to improve this , please feel free to share your tought on the comment below


메타데이터
post_id
cb92bd9512ea
slug
the-telco-churn-illusion-why-1-001-charts-wont-save-a-subscriber-and-how-to-build-an-exploratory-cb92bd9512ea
url
https://medium.com/@haniyaazzahra/the-telco-churn-illusion-why-1-001-charts-wont-save-a-subscriber-and-how-to-build-an-exploratory-cb92bd9512ea
canonical_url
https://medium.com/@haniyaazzahra/the-telco-churn-illusion-why-1-001-charts-wont-save-a-subscriber-and-how-to-build-an-exploratory-cb92bd9512ea
author_url
https://medium.com/@haniyaazzahra
status
ok
fetched_at
2026-06-09 15:37:30