We'll get back to you within 24 hours.
We built a sales forecasting ML system for an FMCG company with 800 SKUs distributed through 5,000 outlets — improving forecast accuracy from 68% to 92%, reducing safety stock by 25%, and cutting stockouts at distributor level by 50%.
Industry Context
India's FMCG market is one of the most complex demand forecasting environments in the world. The structural factors that make Indian FMCG demand uniquely difficult to predict are precisely what make AI forecasting most valuable.
India has more than 40 culturally significant festivals that affect consumer spending patterns — not uniformly, but in hyper-local ways that require granular geographic modeling. Diwali drives a 60–80% demand spike for snack foods nationally, but the timing of this spike varies by geography (North India celebrates 5–7 days before South India buys gifting packs). Eid demand for certain food categories in UP and Bihar follows a lunar calendar that shifts by 10–12 days each year. Harvest festivals in Maharashtra, Punjab, and Tamil Nadu create regional peaks that do not appear in national aggregate data. A moving-average forecast treats all these events as "unexplained variance" to be buffered with safety stock. An AI forecast trained on the festival calendar and regional consumption patterns can anticipate each of these spikes 4–6 weeks in advance with sufficient accuracy to plan production and procurement without emergency orders.
Temperature and monsoon patterns create dramatic demand swings in beverage, snack, and personal care categories that no calendar-based model can capture. A heatwave in May in Delhi increases cold beverage demand by 35–45% beyond the expected seasonal baseline. An early monsoon reduces summer beverage demand by 20–25% — in the same week a manufacturer had planned maximum production. The correlation between weather and demand is well-documented in FMCG research, but capturing it operationally requires integrating weather forecast APIs into the demand planning system and modeling the category-specific, geography-specific weather-demand relationship — work that is beyond the capability of Excel-based planning but well within the scope of an ML forecasting system. Incorporating 5-day weather forecasts improved the client's beverage category forecast accuracy by 18 percentage points alone.
An FMCG company with 800 SKUs distributed across 12 states is managing 9,600 distinct SKU-geography demand streams simultaneously. Human planners, even with sophisticated Excel models, cannot maintain accurate, updated forecasts for 9,600 streams without either significant simplification (aggregating SKUs and geographies in ways that mask the local demand variations that matter for stock allocation) or significant headcount (dedicated analysts for each category, each channel, and each region). ML forecasting systems handle 9,600 streams as naturally as 9 — the computational cost of modeling one more stream is negligible. This scalability advantage is where AI creates the most durable and defensible value in FMCG planning: the human planning system's accuracy degrades as complexity grows; the AI system's accuracy improves as it accumulates more data from more streams.
The Challenge
The FMCG company (snacks and beverages) forecasted production using 3-month moving averages in Excel. This approach completely failed during key periods: summer (40% volume spike for beverages), Diwali (snacks demand doubles in North India), and monsoon (regional demand shift patterns). Production planning lagged reality by 4–6 weeks, resulting in simultaneous overproduction of slow SKUs and stockouts of fast-moving products. The supply chain team used the phrase "firefighting" so frequently in their meeting vocabulary that it had stopped being a metaphor — it was their actual daily activity.
Distributors were complaining of stockouts on 15–20% of orders. The trade marketing team was running promotions without coordinating with production, creating demand spikes that supply couldn't meet. A 20%-off promotion on a beverage brand in April — timed to a summer peak — generated a demand spike that the production team had no visibility on, leading to a 3-week stockout at 35% of distributors. The promotion generated ₹1.8 Cr in incremental sell-in; the stockout cost an estimated ₹4.2 Cr in lost sales and retailer relationship damage. This disconnect between trade marketing, sales, and supply chain was systemic — not a one-off failure but a quarterly pattern.
The S&OP process was a monthly meeting where everyone disagreed and nothing was resolved. Sales presented optimistic forecasts biased by sales targets. Supply chain presented conservative forecasts biased by fear of overproduction. Finance used the previous quarter's actuals with a standard growth factor. All three numbers were different; no one trusted any of them; and production planning proceeded on the supply chain team's conservative estimate, systematically under-planning relative to actual demand. The missing ingredient was not process discipline but a shared, data-driven number that all functions could see was based on evidence rather than departmental bias.
Our Solution
A multi-factor demand forecasting system that incorporates seasonality, promotions, distributor secondary sales, weather, and competitive pricing signals.
The core forecasting engine uses a LightGBM + LSTM ensemble — LightGBM for capturing the complex feature interactions that drive demand (SKU × season × geography × promotion × weather), LSTM for capturing temporal patterns (week-of-year seasonality, trend momentum, lagged demand responses to promotions). The ensemble was chosen after comparative evaluation against Facebook Prophet, ARIMA, and XGBoost on the client's historical data: the LightGBM+LSTM ensemble produced 23% lower MAPE than the best single-model approach. Forecasts are generated for each of 800 SKUs across 12 states at weekly granularity, 4 weeks ahead. Updated every Monday morning with the latest secondary sales data from the distributor management system. The model forecasts at state level (because production and primary distribution happen at state level) but also generates regional sub-forecasts (metro vs. tier-2 vs. rural) for SKUs where the company's data shows significantly different demand patterns across outlet types.
The forecasting feature set was expanded beyond historical sales data to include external signals that predict demand before it appears in sales data: (1) Weather forecasts from the India Meteorological Department API — integrated for beverage and seasonal snack categories with a statistically validated demand-response model calibrated on 3 years of weather-sales correlation data. A 3°C temperature increase above seasonal average in any state predicts a 12% uplift in cold beverage category demand in that state for the following week. (2) Festival calendar — encoded as feature variables for each culturally significant event with geographic scope flags: national festivals (Diwali, Eid, Holi), regional festivals (Pongal, Durga Puja, Baisakhi), and harvest-related consumption events that affect rural distribution significantly. (3) School calendar — term-time vs. school holiday patterns significantly affect snack categories in segments with high child consumer purchase influence. (4) Competitor pricing signals — obtained through distributor network intelligence, where distributor sales reps report competitor trade promotions that they observe in the field. This last source is manual and imperfect, but even partial competitor intelligence materially improves the forecast for categories where price-switching is significant.
Marketing team inputs planned promotions (BOGO, price cuts, display schemes, BTL activations) into the system via a promotion management module 3–4 weeks before the promotion goes live. Each promotion is characterized by: type (price reduction %, BOGO, bundle, display scheme), geography (national, zone, state, or district), SKU or brand scope, duration in weeks, and channel (general trade, modern trade, e-commerce). The model estimates the promotion uplift based on historical promotion response rates — calibrated on 3 years of promotion data where outcomes were measured against baseline. A 15% price reduction on the beverage brand in Maharashtra in summer produces a 28–32% volume uplift based on historical response curves; the same promotion in winter produces only 8–12% uplift because the price elasticity is lower when the weather removes the intrinsic demand driver. Production planning sees the model's demand spike prediction for the promotion 3–4 weeks before launch — sufficient lead time to plan production and distributor stock build-up without emergency orders. In the 12 months post-deployment, no promotion-related stockout has occurred — a perfect record against the pre-deployment baseline of 4–6 promotion-related stockouts annually.
All forecasts are visible to sales, marketing, supply chain, and finance in one platform — replacing the monthly disagreement meeting with a data-driven weekly sync. The S&OP platform shows: the AI consensus forecast with confidence intervals (for production planning, the planner needs to know not just the point estimate but the range of outcomes they should plan for); the previous forecast vs. actual comparison (for model trust-building and bias tracking); promotion impact overlays (showing the baseline forecast and the promotion-adjusted forecast separately, so the promotion uplift is visible as a distinct, trackable component); and a manual override module where sales or supply chain can adjust the AI forecast with a mandatory reason code. Overrides are tracked and their accuracy measured after the fact — producing a bias analysis report that shows which function's manual adjustments improved versus degraded forecast accuracy. This feedback mechanism has a predictable effect: over 6 months, the frequency of manual overrides declined 62% as each function accumulated evidence of which of their instincts the AI model correctly captured and which ones added noise.
Implementation Timeline
A structured rollout through five phases — from data infrastructure setup through live S&OP meeting integration with all business functions.
The first decision in every FMCG forecasting project is which sales data to forecast: primary sales (what the manufacturer sells to distributors) or secondary sales (what distributors sell to retailers). Primary sales data is readily available from the ERP system but reflects distributor stocking behavior, not consumer demand — a distributor loading up inventory ahead of a promotion inflates primary sales and creates a "pipeline fill" effect that makes the underlying demand trend invisible. We built a secondary sales data ingestion pipeline from the client's DMS (Distributor Management System) — extracting weekly SKU-level sales from distributors to retail outlets across all 5,000 outlet relationships. DMS data required significant cleaning: 12% of records had duplicate entries from connectivity sync errors; 8% had SKU coding inconsistencies across distributor systems; and 3% of outlets had implausibly large single-week volumes indicating data entry errors. Cleaned secondary sales data was loaded into a PostgreSQL data warehouse, validated against the corresponding primary sales volumes for reasonableness, and made available to the forecasting pipeline.
Feature engineering was the phase where domain knowledge from the FMCG client was most valuable. We worked with the category management and trade marketing teams over 3 weeks to enumerate every factor that they intuitively knew affected demand but had never been able to quantify. This process produced a feature list of 64 candidate variables: seasonal indices by month, temperature deviation from historical average, rainfall deviation, festival dummy variables with lead/lag windows, school calendar indicators, promotion type and intensity variables, distributor coverage change indicators, and competitor promotion binary flags. For each variable, we ran correlation and information gain analysis against the historical demand data to determine which features had genuine predictive power versus which were believed to matter but showed no statistical evidence of influence. The 64 candidate features reduced to 38 features with validated predictive power — the others were noted as "understood by the team but not measurable in data" and flagged for potential future data collection.
Model training used 3 years of weekly secondary sales data across 800 SKUs and 12 states. The train-validation split used a temporal approach (not random splitting): the model was trained on the first 30 months and validated on the final 6 months — mimicking the real-world scenario where the model is evaluated on future data it has never seen. This temporal split is critical for FMCG forecasting because random splits would allow the model to "cheat" by seeing data from the same month across different years, which would overstate accuracy on the seasonal patterns. Baseline comparison was run against the client's existing Excel moving-average model and against three ML alternatives (ARIMA, Prophet, XGBoost). The LightGBM+LSTM ensemble achieved 92% forecast accuracy (MAPE of 8%) on the held-out validation period — versus 68% for the existing Excel model (MAPE of 32%). Improvement was consistent across all product categories and geographies, with the largest improvement in the beverage category during summer months — exactly the period where the existing model was most wrong and where forecasting error had the largest operational cost.
The S&OP platform was built as a React web application accessible to all functions — unusual in a company where supply chain used SAP, sales used an internal CRM, marketing used Excel, and finance used Tally. A platform that required any function to change their primary tool would have faced adoption resistance. Instead, the S&OP platform was designed as a read-only reporting and collaboration layer that pulls data from all function-specific systems rather than replacing them. Forecasts flow into SAP's production planning module via integration using SAP's Plant Maintenance RFC interfaces — production planners continue working in SAP but now receive AI-generated demand inputs rather than Excel-uploaded planner estimates. The promotion management module was integrated with the marketing team's promotion planning calendar in Google Sheets (the system they were already using) via Google Sheets API — promotion plans entered in Sheets automatically appear in the S&OP platform and trigger the promotion impact modeling run.
For 3 weeks, the AI forecast ran in shadow mode alongside the existing Excel process. The weekly S&OP meeting still used the Excel numbers for actual decisions, but the AI forecast was presented on the same screen. This side-by-side comparison was the most powerful adoption tool: in week 1 of shadow running, the AI forecast predicted a major stockout on the flagship biscuit SKU in Maharashtra 3 weeks ahead — a prediction that the Excel model showed nothing about. The supply chain team ordered a production build-up. The stockout did materialize in week 3, but they had already built the buffer and fulfilled all distributor orders. This single incident — where the AI was visibly right and the Excel model was visibly wrong, with real stakes — created more adoption buy-in than any training session could have. By week 16, all five functions had agreed to use the AI forecast as the single company number going into the S&OP meeting, with manual override reserved for specific situations with explicit justification.
Results
MAPE (Mean Absolute Percentage Error) improved from 32% to 8% at the SKU-month level. Summer and festival season spikes now predicted accurately 4 weeks in advance. The improvement is most dramatic in the categories that were most difficult to forecast manually: beverages in summer (from 45% error to 7% error), snacks during Diwali (from 52% error to 11% error), and rural distribution during harvest seasons (from 38% error to 9% error). These were the exact categories where the company was experiencing its most painful stockouts and overproduction cycles.
With better forecasts, safety stock buffers were reduced — freeing ₹5.2 Cr in working capital previously tied up in "just in case" inventory. The safety stock reduction was implemented gradually: as the AI forecast demonstrated accuracy over the first 3 months, safety stock parameters were recalibrated category by category to reflect the new, lower forecast error. The ₹5.2 Cr freed from safety stock is now available for trade marketing investment, new product launches, and debt reduction. CFO described this as "the first time in 8 years we've been able to reduce inventory without either accepting higher stockout risk or compromising service levels."
Distributor fill rate improved from 83% to 96%. Distributor complaints about stockouts dropped from top complaint to #6 in quarterly reviews. Improved distributor relationships have produced secondary benefits: 3 distributors who had been considering dropping the company's brand in favor of a competitor's restocked their range and increased their investment in display and promotion following the service level improvement. One zone sales manager cited the fill rate improvement as the single biggest factor in a 14% sales volume increase in their zone, because distributors who trust supply consistency invest more in pushing the brand to retailers.
Sales, marketing, and supply chain teams now share one number. Decisions on production, procurement, and promotions made from same data. Alignment improved across functions. The monthly S&OP meeting has been restructured from a 3-hour debate over whose forecast number is right to a 45-minute review of the AI forecast, exception management for SKUs where manual judgment is being applied, and promotion planning coordination. The supply chain director described the change: "We used to leave the meeting agreeing to disagree. Now we leave the meeting with one plan that everyone is aligned on — because the AI gives us a neutral starting point that no one owns politically."
ROI Breakdown
Quantified business impact for an FMCG company with 800 SKUs, ₹220 Cr annual revenue, and distribution through 5,000 outlets — covering working capital, service level, and revenue impact.
| Value Component | Calculation Basis | Annual Value |
|---|---|---|
| Working Capital Release (Safety Stock) | ₹5.2 Cr freed at 12% cost of capital — annual capital cost saving | ₹62,40,000 |
| Stockout Revenue Recovery | 50% fewer stockouts × estimated ₹3.8 Cr annual lost-sale impact | ₹1,90,00,000 |
| Overproduction Waste Reduction | Reduced slow-SKU overproduction → fewer write-offs and markdown sales | ₹45,00,000 |
| Promotion Planning Efficiency | Zero promotion-related stockouts (previously 4–6/year at ₹50L impact each) | ₹2,00,00,000 |
| Emergency Procurement Premium Eliminated | Rush orders to suppliers eliminated — previously ₹18L/year premium | ₹18,00,000 |
| System Build + Year 1 Infrastructure | Development + DMS integration + SAP integration + S&OP platform + maintenance | -₹32,00,000 |
| Net Year 1 Return | ₹4,83,40,000 | |
Tech Stack
FAQ
Related Services
Get a free forecast accuracy benchmark on your historical sales data — we'll show you the improvement AI can deliver in 2 weeks.
Get Free Forecasting Assessment