📉 Customer Churn Prediction App
An AI-powered web application built with Streamlit that predicts whether a telecom customer will churn (leave the company) or stay, based on their profile and service usage details.
🚀 Demo
🔗 Live App on Streamlit
🚀 Short Video Demo
https://github.com/user-attachments/assets/889f0cba-29fe-4238-8ef6-60762f2dfda0
📌 Features
- Predicts Customer Churn Risk using a trained ML model.
- Two modes:
- 🧑 Single Customer Prediction
- 📄 Batch Prediction (CSV upload)
- Probability-based predictions with clear visualization.
- User-friendly Streamlit interface with modern sidebar design.
- Supports both categorical and numerical features.
🔍 Usage
- Open the app in your browser.
- Choose between Single Customer or Batch Prediction (CSV).
- For single prediction: Fill in customer details and click Predict Churn.
- ⚠️ Yes → Customer WILL churn.
- ✅ No → Customer will NOT churn.
- For batch prediction: Upload a CSV file with customer data and view predictions.
📊 Dataset
The app is trained using the Telco Customer Churn Dataset from IBM Sample Data.
-
Target Classes:
Yes → Customer will churn
No → Customer will stay
-
Features:
- Demographics (Gender, SeniorCitizen, Partner, Dependents)
- Account Info (Tenure, Contract, Payment Method, Paperless Billing)
- Services (Phone, Internet, Online Security, Streaming, Tech Support, etc.)
- Charges (MonthlyCharges, TotalCharges)
⚙️ Tech Stack
- Python 3.9+
- Streamlit (Frontend Web App)
- Pandas & NumPy (Data Processing)
- Matplotlib & Seaborn (EDA & Visualization)
- Scikit-learn (Label Encoding, Model Training, Evaluation)
- XGBoost & Random Forest (Machine Learning Models)
- SMOTE (imblearn) (Handling Class Imbalance)
- Pickle (Model & Encoder Serialization)
📸 Screenshots
🏠 Home Page
🧑 Single Customer Prediction
📄 Batch CSV Prediction
👨💻 Author
Mirza Yasir Abdullah Baig
❤️ Acknowledgements
⚠️ Disclaimer
This project is for educational purposes only and should NOT be used for real-world business decisions without further validation.