Back to notes

March 8, 2026 · 5 min read

A Demand Forecasting Model That Finally Outperformed the Spreadsheet

A rolling-average spreadsheet had quietly run inventory planning for years. Replacing it with a real model took longer than expected, but the win, once it landed, was undeniable.

Case StudyForecasting

A client's inventory team had been forecasting demand with a twelve-week rolling average in a spreadsheet since before most of them were hired. It wasn't stupid — it was simple, auditable, and nobody had ever proven they could beat it. That last part is the trap. Every data science team that pitches a forecasting model gets asked, reasonably, to prove it, and most can't, because they benchmark against a strawman instead of the actual spreadsheet in production.

Benchmarking against the real thing, not a toy baseline

The first thing I did wasn't build a model. It was reconstruct exactly what the spreadsheet did, in code, so I had an honest baseline. That took a week and felt like wasted time. It wasn't — it's the only way a forecasting improvement claim means anything, and it caught an assumption I'd have otherwise baked in wrong: the spreadsheet already excluded promotional weeks, something nobody had mentioned.

With that baseline in hand, a gradient-boosted model using seasonality, promo calendar, and weather features cut mean absolute percentage error from 34% to 19% on held-out weeks. Not a miracle number, but a real one, and the kind of improvement that shows up directly as fewer stockouts and less markdown on overstock.

A forecasting model that beats a strawman baseline proves nothing. One that beats the spreadsheet the business actually uses proves everything.

The part that actually sold it

  • A side-by-side weekly report showing both forecasts next to actuals, run for eight weeks before any decision was automated.
  • Letting the inventory team keep override power for the first quarter, which built trust faster than any accuracy slide could.
  • Explaining every big miss in plain language instead of hiding behind feature importance scores.
  • Not retiring the spreadsheet — keeping it running in parallel as a sanity check, cheap insurance against a pipeline bug nobody notices until the numbers are already wrong.

The model earned its keep, but the thing that actually got it adopted wasn't the MAPE improvement. It was eight weeks of boring, side-by-side proof that it wasn't going to embarrass anyone. That's the unglamorous part of replacing an entrenched spreadsheet nobody talks about in case studies.