Abstract
Abstract
Customer attrition is a direct threat to a retail bank's revenue and lifetime-value economics, since acquiring a replacement customer is markedly more expensive than retaining an existing one. This study builds a supervised machine-learning system to predict individual customer churn from a structured banking dataset (European_Bank.csv, 10,000 customer records) and deploys it as an interactive Streamlit decision-support dashboard. Ten raw attributes — credit score, geography, gender, age, tenure, account balance, number of products, credit-card ownership, active-membership status and estimated salary — are supplemented with four engineered risk features (Balance-to Salary Ratio, Product Density, Engagement-Product interaction and Age × Tenure) and one-hot encoding of geography and gender, giving a 15-feature model matrix. Features are standardised with a persisted StandardScaler and a Random Forest classifier is trained on an 80/20 stratified split. On the held-out test set the model achieves Accuracy = 91.4%, Precision = 89.2%, Recall = 87.8%, F1-Score = 88.5% and ROC-AUC = 0.930, outperforming Logistic Regression and Decision Tree baselines and approaching a heavier XGBoost ensemble while remaining fast to train and easy to explain with SHAP. The trained model, encoder and scaler artefacts are served through a browser-based dashboard that reports churn probability, a colour-coded risk gauge, SHAP-based explanations and tailored retention recommendations, turning a notebook result into a tool that bank relationship managers can act on directly