All Projects
Machine Learning

Enterprise Sales Forecasting Transformation for FMCG Retail

Designed and deployed a scalable machine learning–driven demand forecasting system for a large FMCG retailer, enabling accurate item × outlet level predictions, improved promotion planning, and reduced inventory inefficiencies across 6000+ SKUs and 130+ outlets.

8–10%
forecast accuracy improvement
6000+
SKUs forecasted
130+
outlets covered
System Overview
Enterprise Sales Forecasting Transformation for FMCG Retail system overview

1The Problem

A large FMCG retailer lacked a reliable forecasting system to support inventory planning and promotion execution across thousands of SKUs and outlets. The existing process failed to properly separate baseline demand, seasonal effects, and promotional uplift. This resulted in: - Frequent stock-outs during promotions leading to lost sales - Excess inventory for slow-moving items increasing holding costs - Heavy manual effort during promotion cycles - Poor inventory balance across the network The business needed an enterprise-grade forecasting solution that could operate at multiple granularities and support different decision points in the supply chain.

2The Approach

I designed a modular machine learning forecasting system that separates demand into baseline, promotional uplift, and uncertainty buffers. Key decisions: - Use XGBoost for its ability to model non-linear demand patterns and handle mixed feature types - Build a single global model across item × outlet combinations to improve generalization - Introduce multi-horizon forecasting aligned with supply chain decision timelines - Replace static safety stock rules with error-driven buffer calculations - Automate the full pipeline from data ingestion to order management system integration

Technical Architecture

Architecture Diagram
Enterprise Sales Forecasting Transformation for FMCG Retail architecture diagram
1

Data Layer: Aggregated transactional sales, item hierarchy, outlet features, and promotion data

2

Feature Engineering Layer: Time features, seasonality signals, promotion attributes, and historical trends

3

Baseline Forecasting Model: Predicts natural demand excluding promotions (weekly forecasts W+1 to W+7)

4

Promotion Uplift Model: Estimates incremental demand impact at multiple planning stages (13 to 2 weeks prior)

5

Buffer Calculation Layer: Computes safety stock dynamically using historical forecast errors

6

Forecast Disaggregation Layer: Converts weekly predictions to daily item–outlet level outputs

7

Automation Pipeline: End-to-end pipeline from data extraction to order management system integration

8

Monitoring Layer: Power BI dashboards for tracking forecast trends and performance

Results

  • Improved promotion forecasting accuracy by 8–10% over existing methods

  • Reduced stock-outs during promotional periods

  • Minimized excess inventory for slow-moving items

  • Significantly reduced manual effort in promotion planning cycles

  • Enabled scalable forecasting across 6000+ SKUs and 130+ outlets

Key Insights

Separating baseline demand and promotional uplift significantly improves forecast accuracy in retail systems

Global models outperform per-item models by leveraging shared demand patterns across outlets

Error-driven buffer calculations are more effective than static safety stock rules

Explainability is critical for adoption in supply chain and business teams

Tech Stack

PythonXGBoostMachine LearningPower BISQLPySparkAzure

Interested in a similar project?

I'd love to discuss how we can apply this kind of approach to your specific business challenge.

Let's Talk