This repo presents a Data Science project with Canal+ International on the personalization and performance of loyalty programs for prepaid subscribers in Africa. It showcases the structure, methods, and code behind the project, highlighting both technical implementation and business-oriented results.
# Canal+ International - Data Science Project
Personalization and Performance of Loyalty Programs in Africa
---
## Project Summary
This project was carried out in collaboration with **Canal+ International** to analyze and improve the personalization and effectiveness of loyalty programs for prepaid subscribers in Africa.
- **Context**: In Senegal, Canal+ operates with prepaid subscriptions where promotions play a crucial role in renewal behavior. The company needed to measure the true effectiveness of loyalty programs and move towards more personalized strategies.
- **Data**: Over 10 million subscription records (2021-2023) from more than 500,000 subscribers.
- **Approach**:
- Built descriptive analyses to understand customer habits and promotion usage.
- Designed a clustering framework (K-means) to segment subscribers into interpretable groups.
- Quantified the effect of different promotions on each cluster using multiplicative renewal factors.
- Validated the results on unseen data from November 2023.
- **Results**:
- Identification of distinct customer segments (loyal subscribers, promotion hunters, inactive users, etc.).
- Clear evidence of which promotions truly drive re-subscriptions in which segments.
- Business insights enabling Canal+ to reduce unnecessary promotions and target high-value subscribers more effectively.
- **Impact**:
- Personalized promotional strategies instead of blanket offers.
- Better allocation of marketing resources.
- Improved ROI and long-term customer loyalty.
---
## Code & Implementation
This repository contains the code used to clean and process the data, perform clustering, and validate the results.
The original datasets and the final insights of the study are **confidential** therefore not included here.
### Repository Structure
```
├── data_operations/
│ ├── clustering/
│ │ └── Scripts for K-means clustering, optimal k selection, validation
│ │
│ ├── tool_function/
│ │ └── Utility functions for data prepa …