Using Machine Learning to Forecast Sales for a Retailer with Prices & Promotions

Nicolas Vandeput
5 min readOct 4, 2022

Using cutting-edge machine learning models, SupChains delivered a forecasting model for an international FMCG reducing its forecast error by 30% compared to the benchmark and cutting its bias to virtually zero. The client used the forecast to plan its 2023 purchasing budget.

Business Situation

The client, an international FMCG retailer operating more than 10,000 stores, enjoys the position of a European leader. They partnered with SupChains to develop a forecasting model for a selection of their most critical products.

Every year by Q2, the retailer must provide purchasing budgets to their suppliers for the upcoming year. To support their purchasing process, they need to forecast the following year’s sales per country per product.

As for most FMCG retailers, part of the clients’ business is promotion-driven: around 20% of its sales are made during promotions. You can see the impact of promotions and pricing on sales in the (anonymized) figure hereunder (Xs highlight promotions).

Forecast Challenge

To generate an accurate forecast per country per product, we decided to work on a forecast per store, week, and product. This level of aggregation would allow the model to use multiple detailed store-specific information such as:

  • Opening hours and holidays
  • Shortages
  • Pricing
  • Promotions

Even at this granular level, the sales patterns can be described as smooth. The average weekly sales are around 140 pieces, with the median being around 100 (you can see the sales distribution in the figure below). As illustrated on the following page, a one-year sales moving average would provide an accuracy of around 50% — even when forecasting more than one year ahead.

The challenge of this forecasting exercise lies in gathering local, granular information (weekly prices, promotions, and shortages), cleaning it, and then generating a long-term…

--

--

Nicolas Vandeput

Consultant, Trainer, Author. I reduce forecast error by 30% 📈 and inventory levels by 20% 📦. Contact me: linkedin.com/in/vandeputnicolas