Retail Analytics · Decision Intelligence · Bhavya Kaushal
Finding the problem was never the hard part.
I worked at FoodWorks. The hard part was always acting on it before it got worse.
We'd spot a customer segment going quiet, a product running low, something off in the numbers. Flag it, escalate it, wait for approval, figure out the action. By the time anything actually happened, the problem was bigger than when we found it. Not because anyone was careless. Just too many steps between finding and fixing with nothing automated in between.
I wanted to see how much of that lag could be closed. RFM segmentation gave me the starting point, scoring customers on recency, frequency, and spend, turning the data into a priority list rather than just a description. The at-risk group stops being a vague concern and becomes an actual target. From there I built a system where the analysis generates a recommendation automatically and anyone on the team, no data background needed, can approve or reject it in under a minute.
Dataset values: GBP · India deployment context: ₹ at ×107 conversion
The problem I kept seeing
Finding an issue and acting on it were separated by too many steps.
At FoodWorks, by the time approval came through and someone knew what to do, the situation was already worse than when we first spotted it. That lag is what this project is designed to close.
What I built
Raw data to recommended action, with a human decision in the middle.
The system detects signals in the data, writes a recommendation automatically, and puts it in front of a person to approve or reject. The decision is logged. An email draft is ready. Nobody has to chase approvals.
Why it matters beyond this dataset
The same gap exists in any retail business with loyalty data.
The method works on DMart's 350 stores as cleanly as it works on the 4,338 customers here. The dataset is a UK wholesaler. The problem it models is Indian retail.
Performance Snapshot
Customers Analysed
4,338
392,692 attributed transactions
Total Revenue (Dataset)
£8.89M
₹95.1 Crore · Dec 2010–Dec 2011
Revenue Concentration
70.1%
from 21.4% of customers (High Value)
Revenue Gap
13.7×
High Value avg vs Lost avg (£6,705 vs £488)
The Analytical Work
What the Data Revealed
RFM segmentation across 4,338 customers using quintile-based scoring (1–5 scale) on Recency, Frequency, and Monetary dimensions. Segments assigned by score combinations.
| Segment | Customers | Revenue | Revenue Share | Avg / Customer |
|---|---|---|---|---|
| High Value | 929(21.4%) | £6229K | 70.1% | £6,705 |
| At-Risk | 661(15.2%) | £824K | 9.3% | £1,246 |
| Loyal | 527(12.1%) | £622K | 7% | £1,181 |
| Lost | 1,074(24.8%) | £524K | 5.9% | £488 |
| Low Value | 677(15.6%) | £354K | 4% | £523 |
| Promising | 470(10.8%) | £334K | 3.8% | £710 |
Pareto Concentration
21.4% of customers generate 70.1% of all revenue. The High Value segment averages £6,705 per customer — 13.7× the Lost segment average of £488. Protecting and growing this segment is the highest-leverage analytical priority in the dataset.
Cohort Retention
37%
of month-1 customers return in month 2.
885 customers acquired in December 2010. Only 324 transacted again in January 2011. Retention stabilises at 35–40% through months 3–10, then spikes to 50% in November 2011 (Christmas restocking).
Peak Revenue Month
£1.16M
November 2011 · 2,657 orders · 1,664 customers
Strong Q4 seasonality. September–November revenue 2.1× the Jan–Aug monthly average.
Dataset Note
UCI Online Retail — UK wholesale gift distributor (B2B). Used here as a methodology proxy for B2C retail. All strategic recommendations calibrated to consumer norms. Full disclosure →
Tableau Dashboard 1 — RFM Segmentation Overview
Tableau Dashboard 2 — Segment Deep Dive
So what's the actual problem?
The analysis above is the easy part. Any retailer with a loyalty programme has this data sitting somewhere. The problem is what happens next. Between running the model and actually doing something about it, there are usually a few days of emails, approvals, and handoffs. In that window the at-risk customers get more at-risk. The products running low get lower. The issue you caught on Monday is a bigger issue by Friday. That's what the prototype below is built to address.
Decision Intelligence Workflow
The analysis found four things worth acting on. Rather than write each one up as a report and wait for someone to read it, I had Claude Sonnet turn each finding into a recommendation with a clear action, an expected impact, and what it costs to do nothing. Your job here is just to decide. Approve it, adjust the wording, or reject it. Whatever you choose gets logged to the audit trail with a reference ID.
At-Risk Segment Revenue Decline
The at-risk customer segment (661 customers) has experienced a 23.1% revenue decline from peak to latest month, placing £823,912 in annual revenue at immediate risk. This trajectory indicates accelerating disengagement, likely driven by competitive substitution, unresolved friction points, or lapsed purchase triggers. Without intervention, this cohort is approaching churn threshold.
Launch a targeted win-back campaign within 7 days: (1) Identify top 200 highest-value at-risk customers and assign to personalised outreach via account managers or high-touch email sequences with tailored incentives (10-15% loyalty discount or exclusive early access offers). (2) Deploy automated re-engagement flows for remaining 461 customers using last-purchase category affinity. (3) Conduct a 50-customer exit-intent survey to diagnose root causes. (4) Review pricing and assortment gaps versus key competitors flagged in recent market data.
High Value Churn Risk
84 high-value customers have dropped to the lowest recency quartile (r_score=3), signalling significant churn risk. This cohort represents £454,817 in revenue at risk. Recency score deterioration at this severity level typically precedes full churn within 60-90 days if no intervention occurs. Immediate re-engagement is critical to preserve lifetime value of this segment.
Launch a targeted win-back campaign within 48 hours: (1) Deploy personalised outreach via email and SMS with exclusive high-value loyalty offers (15-20% discount or bonus loyalty points). (2) Assign dedicated account representatives or VIP concierge contact for top 20% of the 84 customers by historical spend. (3) Introduce a time-sensitive incentive (7-14 day expiry) to drive immediate purchase behaviour. (4) Conduct a root-cause survey to identify friction points causing disengagement. (5) Flag these customers in CRM for daily monitoring and escalate non-responders within 7 days.
Promising Segment Graduation Opportunity
183 out of 470 promising segment customers (38.9%) have achieved both frequency scores ≥3 and monetary scores ≥3, placing them at the threshold for graduation to higher-value segments. This cohort represents £183,074 in revenue that is primed for acceleration but risks stagnation without targeted intervention. The graduation proximity rate signals strong behavioural momentum that must be captured before engagement naturally plateaus.
Launch a tiered loyalty acceleration campaign targeting all 183 graduation-ready customers within 72 hours. Deploy personalised outreach via email and push notifications featuring exclusive 'VIP Preview' offers, early access to new arrivals, and a time-limited double-points multiplier valid for 21 days. Assign high-value customers (top 20% by monetary score) to a concierge outreach track with dedicated rep follow-up. Simultaneously, configure automated segment graduation triggers to move qualifying customers into the Champions or Loyal Customers segment upon next qualifying purchase.
Lost Customers with High Predicted CLV
80 lost customers have been identified with predicted CLV exceeding the overall P95 threshold of £186,384, representing a critical high-value segment that has churned. Collectively, these customers place £17,879,523 in revenue at risk. The concentration of such high-CLV profiles within the lost segment suggests a systemic failure in retention touchpoints or competitive displacement at the premium end of the customer base, warranting immediate and targeted intervention.
Launch a dedicated high-value win-back programme within 7 days targeting all 80 lost customers. Deploy a tiered re-engagement sequence: (1) personalised outreach via a dedicated account manager or senior CRM specialist with a bespoke reactivation offer (e.g., loyalty credits, exclusive pricing, or VIP early access), (2) conduct exit-reason diagnostics through direct calls or surveys to identify churn drivers, (3) create segment-specific win-back offers calibrated to each customer's historical purchase categories and CLV tier, and (4) establish a 90-day re-engagement monitoring cadence with escalation triggers if no response within 14 days.
Approving or modifying opens a review drawer with the full finding, expected impact, and cost of inaction. The confirmed decision generates a CRM email draft and logs a unique action reference ID. Full insight feed →
Business Case
ROI Model — At-Risk Win-Back Campaign
661 At-Risk customers represent £88,223 (₹94.4 lakh) in historical revenue. A 3-email win-back campaign, benchmarked to Indian email marketing costs, delivers the following outcomes across three recovery scenarios.
Conservative
10% recovery · 66 customers
₹8.9L
net revenue recovered
Base
Most Likely15% recovery · 99 customers
₹13.6L
net revenue recovered
Optimistic
20% recovery · 132 customers
₹18.3L
net revenue recovered
Campaign cost: ₹58,305 (₹5/email × 661 + ₹55K fixed creative & analytics). Break-even recovery rate: 0.7% — the campaign is cash-positive if just 5 of 661 customers return. Recovery rates benchmarked to consumer retail email (Klaviyo, Salesforce Marketing Cloud, 2022–2024). Full ROI model with sensitivity table →
Scale — Indian Retail Network Extrapolation
Illustrative scale potential, not projected outcome
D-Mart ~350 stores (2024)
~₹31.4 Crore
Net ROI · Base scenario · 2,62,500 At-Risk customers (modelled)
Reliance Retail ~18,000 stores (2024)
~₹523.8 Crore
Net ROI · Base scenario · 54 lakh At-Risk customers (modelled)
All extrapolation figures are modelled estimates (customers-per-store and revenue-per-customer are not publicly disclosed). Confidence: Low. Intended to illustrate methodology scale, not claim revenue. DPDP Act 2023 compliance required before any email campaign in India.
Operational Intelligence
Demand Forecast — Top 10 SKUs
The same dataset that drives customer segmentation simultaneously powers inventory decisions. 4-week simple moving average forecast against a modelled stock position — two SKUs flagged as reorder risks.
| SKU | Description | Avg Wk Demand | 4W Forecast | Days of Supply | Status |
|---|---|---|---|---|---|
| 23084 | Rabbit Night Light | 3,007 | 12,028 | 11.5 | ⚠ Reorder |
| 79321 | Chilli Lights | 450 | 1,801 | 11.8 | ⚠ Reorder |
| 84879 | Assorted Colour Bird Ornament | 966 | 3,865 | 19.3 | Monitor |
| 85123A | White Hanging Heart T-Light Holder | 884 | 3,537 | 22.0 | Monitor |
| 85099B | Jumbo Bag Red Retrospot | 912 | 3,647 | 26.7 | Monitor |
| 22423 | Regency Cakestand 3 Tier | 242 | 969 | 27.0 | Monitor |
| 23843 | Paper Craft, Little Birdie | 80,995 | 323,980 | 28.0 | ✓ Adequate |
| 47566 | Party Bunting | 186 | 745 | 43.3 | ✓ Adequate |
| 23166 | Medium Ceramic Top Storage Jar | 180 | 720 | 378.8 | ✓ Adequate |
| 22502 | Picnic Basket Wicker Small | 2 | 10 | 489.2 | ✓ Adequate |
Stock modelled at 4× full-period average weekly demand. Risk threshold: <14 days (wholesale 2-week lead time). For Indian quick commerce dark stores (Blinkit, Zepto), equivalent threshold is ≤3 days. Full forecast with limitations →
Architecture
How It Works
Build-time pipeline
Python · pandas · scikit-learn · Anthropic SDK · insights.json committed to repo
Runtime (Vercel)
Next.js 14 App Router · shadcn/ui · Tailwind · no database · localStorage audit trail
Production extension
n8n workflow · Slack approval · Gmail draft · append-only DB · hash-chained audit
Production Architecture — Indian Retail Deployment
POS / CRM / WMS
Transaction feeds
ETL / Streaming
Kafka · Spark
Segmentation Engine
RFM · CLV · Forecast
Signal Detection
Threshold rules
LLM Synthesis
Claude / GPT
Human Approval
Approve / Modify / Reject
CRM / WMS Action
Email · PO · Offer
Audit Log
Append-only · hash-chained
This prototype implements the Segmentation Engine → Signal Detection → LLM Synthesis → Human Approval → Audit Log chain. POS/CRM integration, ETL streaming, and live CRM write-back are the production extension layer.
Strategic Fit
Why This Matters for Accenture Clients
Most retail clients in India have loyalty programmes with years of transaction data. What they don't have is a clear path from that data to a timely decision. This problem shows up consistently across retail, FMCG, and CPG.
🏪
Indian Retail Clients
DMart, Reliance Retail, Spencer's, Big Basket, Nykaa — all operate loyalty programmes with transaction-level data. None have a closed-loop signal → decision → action → audit workflow. This prototype is the architectural blueprint for that missing layer.
🤖
Agentic AI Practice
The workflow here — LLM synthesis, structured output, human-in-the-loop approval, audited action — is the exact pattern Accenture's AI & Data practice is productising across enterprises. This is a working reference implementation built from first principles.
📋
DPDP Act 2023 Readiness
India's data protection law requires consent records and audit trails for personalised marketing. The audit log here — with action reference IDs, decision timestamps, and recommendation lineage — maps directly to those compliance requirements.
Methodology & Data Provenance
Dataset: UCI Online Retail — UK wholesale B2B gift distributor, Dec 2010–Dec 2011. Used as a methodology proxy for B2C retail. 541,909 raw transactions reduced to 392,692 after cancellation, null CustomerID, and duplicate removal.
RFM: Quintile binning (1–5). Segments by score combination. Signal thresholds data-driven: r_score==3 for High Value churn risk; P95 predicted CLV for Lost anomaly.
CLV model: Linear regression on R, F, M scores. R²=0.1426 (disclosed). CLV proxy winsorised at P99 = £1,057,680 to correct single-transaction annualisation distortion.
Audit trail: Browser localStorage — prototype only. Production would use an append-only database with hash chaining.
Explore Supporting Pages
Prepared by Bhavya Kaushal · MBA Marketing, RMIT Melbourne · May 2026
AI synthesis: Claude Sonnet 4.6 · Built with Next.js 14 · Deployed on Vercel
I built this because a real problem frustrated me at a real job. The dataset is from a UK retailer, but the problem it models exists in Indian retail at the same scale. If you're working with clients who have this gap, I'd like to talk about how to close it.