Capstone 2 — Customer Segmentation Analysis¶
A self-directed capstone focused on understanding customers as distinct groups, not a single mass. You'll use RFM analysis and/or clustering to segment a customer base and recommend targeted strategies.
The Brief¶
A subscription or retail business markets to all customers the same way and gets mediocre results. They want to segment their customers so marketing can target each group with the right message. You build the segmentation and recommend an action plan per segment.
Tools¶
Python (Pandas) · SQL · Power BI/Tableau · optionally scikit-learn (K-Means)
Difficulty¶
Intermediate — RFM is accessible; clustering adds depth.
What You Must Deliver¶
- A clean customer-level dataset (aggregate transactions to customers)
- An RFM segmentation (Recency, Frequency, Monetary)
- Optionally: a K-Means clustering as a comparison
- A segment profile for each group
- A targeted action plan per segment
- A dashboard visualising the segments
Suggested Datasets¶
- Online Retail II (UCI) — transactions you aggregate to customers
- Brazilian E-Commerce (Olist) — rich, multi-table
- Any transaction dataset with customer IDs and dates
The Core Method — RFM¶
For each customer (use the true customer ID — watch for per-order ID traps):
| Dimension | Calculation |
|---|---|
| Recency | Days since last purchase |
| Frequency | Number of orders |
| Monetary | Total spend |
Score each 1-5 with NTILE(5), then assign segments (Champions, Loyal, At Risk, New, Lost). See Projects/E-commerce-Analytics/sql-analysis and Week-02/Day-02-Part-2-Business-Analytics/00-notes for the full method.
Requirements Checklist¶
- [ ] Transactions aggregated to customer level correctly
- [ ] RFM scores computed and segments assigned
- [ ] Each segment profiled (size, avg spend, behaviour)
- [ ] A specific marketing action per segment
- [ ] A dashboard showing segment distribution and value
- [ ] Portfolio README
Evaluation Criteria¶
| Criterion | Weight |
|---|---|
| Correct customer-level aggregation | 20% |
| RFM/clustering implementation | 25% |
| Segment profiling depth | 20% |
| Actionability of recommendations | 20% |
| Dashboard & communication | 15% |
Stretch Goals¶
- Compare RFM segments to K-Means clusters — do they agree?
- Calculate the revenue concentration (Pareto — what % of revenue from top segment?)
- Estimate the LTV per segment
- Design an A/B test to validate a segment-targeted campaign