This project analyzes customer churn behavior using a telecom customer dataset to identify key factors influencing customer attrition. The objective is to uncover patterns in customer behavior and provide data-driven retention strategies to reduce churn.
The dataset represents a snapshot of customer data at the end of a reporting quarter.
Customer churn directly impacts revenue and long-term business growth.
The goal of this analysis is to:
- Identify high-risk customer segments
- Understand the drivers behind churn
- Provide actionable business recommendations
- Support data-driven retention strategies
- ~7,000 customer records
- 34 features including:
- Tenure Months
- Contract Type
- Monthly Charges
- Total Charges
- Tech Support
- Internet Service
- Payment Method
- Churn Label
- Python
- Pandas
- NumPy
- Matplotlib
- Jupyter Notebook
- Exploratory Data Analysis (EDA)
- Customer Segmentation & Multi-Factor Analysis
customer-churn-analysis/
├── data/
│ └── Telco_customer_churn.xlsx
├── notebooks/
│ └── churnAnalysis.ipynb
├── .gitignore
└── README.md
- Clone the repository:
git clone https://github.com/anupamkajith/customer-churn-analysis.git
cd customer-churn-analysis- Install the required Python libraries:
pip install pandas numpy matplotlib openpyxl jupyter- Start Jupyter Notebook:
jupyter notebook-
Open the notebook inside the
notebooks/folder. -
Run the notebook cells sequentially to reproduce the customer churn analysis and visualizations.
Note: The dataset is stored inside the
data/folder. The notebook should use the relative dataset path:
../data/Telco_customer_churn.xlsx
- Overall churn rate: 26.5%
- Approximately 1 in 4 customers leave the service.
- 0–6 months: 53% churn
- 48+ months: 9% churn
Insight: Customers in their early lifecycle stage are significantly more likely to churn.
- Month-to-month: 42.7% churn
- One-year: 11.2% churn
- Two-year: 2.8% churn
Insight: Longer contract commitments dramatically reduce churn risk.
- No Tech Support: 41.6% churn
- With Tech Support: 15.1% churn
Insight: Access to technical support significantly improves customer retention.
- High monthly charges segment: ~33% churn
- Low monthly charges segment: ~9.8% churn
Insight: Customers paying higher monthly charges show increased churn likelihood, indicating possible price sensitivity.
The highest churn risk segment identified:
- Tenure: 0–6 months
- Contract: Month-to-month
- No Tech Support
- High Monthly Charges
This segment shows churn rates exceeding 50%, making it a priority for retention strategies.
- Strengthen onboarding and engagement for new customers.
- Incentivize migration from month-to-month to long-term contracts.
- Offer bundled technical support for high-risk segments.
- Target high-paying customers with proactive retention campaigns.
- Develop churn risk monitoring dashboards for early intervention.
- Build predictive churn model (Logistic Regression / Random Forest)
- Perform feature importance analysis
- Develop churn risk scoring framework
- Create interactive dashboard (Power BI / Tableau)
This analysis identified key churn drivers across tenure, contract type, technical support, and pricing, and translated them into actionable retention recommendations.
Anupam K Ajith
AI/ML & GenAI | M.Tech AI & Data Science @ IIIT Kottayam | Python | RAG | MLOps