Forecasting Demand for a 200-SKU Store: A Field Guide
Demand forecasting for a 200-SKU store starts with sales history, not software. A moving average with seasonality, validated against held-out data, will outperform gut feel for most independent retailers. We outline the data you need, a baseline method, a validation step, and the point at which a dedicated tool earns its cost.
What the Data Shows
Retail demand forecasting at the SKU level begins with historical sales data. The core requirement is consistent, item-level sales history recorded over time, with enough granularity to capture weekly and seasonal patterns.
The Minimum Data Set
A practical setup needs four elements:
- Sales history by SKU, recorded at a consistent interval (weekly is sufficient for most stores).
- Time coverage of at least one full year, so seasonal patterns repeat at least once.
- Promotion and price-change flags, so forecast error can be attributed to events rather than model failure.
- Stock-out records, because a zero-sales week may mean no inventory, not no demand.
Without stock-out records, the forecast will understate true demand for fast-moving items. The data shows that demand forecasting is only as reliable as the history feeding it.
What Causes Forecast Failure
Most small-store forecasting fails for reasons that are visible in the data before any model is built.
Missing Seasonality
Retail demand is rarely flat. Seasonality — the recurring, calendar-driven variation in demand — is the single largest pattern a baseline forecast must capture. A moving average that ignores seasonality will systematically under-forecast peak weeks and over-forecast troughs. The data shows that seasonal adjustment is not optional for retailers whose demand varies by month or holiday.
Sparse and Intermittent History
For a 200-SKU store, many SKUs sell in small, irregular quantities. Intermittent demand — weeks with zero sales punctuated by bursts — makes simple averages misleading. A moving average over such a series produces a forecast that is always slightly wrong and never usefully so. The failure mode is not the method; it is the data pattern.
Promotions Confound History
Promotional weeks distort the sales history. A moving average that includes a deep-discount week will forecast that demand into a normal week. The data shows that promotion flags must be separated from baseline demand before any method is applied.
What to Do About It
Step 1: Clean the History
Assemble at least 12 months of weekly sales per SKU. Remove or flag promotional weeks, correct for stock-outs, and exclude returns and transfers. The output is a clean baseline series that reflects organic demand.
Step 2: Build a Seasonal Moving Average
For each SKU, compute a moving average over the most recent 4 to 8 weeks. Then apply a seasonal index — the ratio of each week’s sales to the annual average — to adjust the moving average for the time of year. This method requires no software beyond a spreadsheet and captures the dominant pattern in most retail demand.
Step 3: Validate Against Held-Out Data
Reserve the most recent 4 to 6 weeks of history. Forecast those weeks with the method, then compare the forecast to actual sales. Compute the mean absolute percentage error (MAPE) and the bias — whether the forecast systematically over- or under-predicts. If the bias exceeds a few percent, the seasonal index or the averaging window needs adjustment.
Step 4: Decide When a Tool Is Worth It
A dedicated demand-forecasting tool earns its cost when the baseline method fails a specific test. The criterion is forecast accuracy: when the moving-average error exceeds the cost of holding excess inventory or losing sales to stock-outs, a more sophisticated model is justified. Tools add value by handling intermittent demand, multiple seasonalities, and promotion effects that a spreadsheet cannot model cleanly. The decision is an economic one, measured against your own validation results, not a matter of fashion.
Failure Modes to Watch
- Overfitting the seasonal index. A seasonal index computed from one year of data will chase noise. Use the full year, and re-estimate the index quarterly.
- Ignoring lead time. A forecast is only useful if it covers the supplier lead time plus safety stock. Forecast the horizon you can act on, not the horizon that is convenient.
- Treating all SKUs alike. Fast movers tolerate a simple moving average. Slow movers with intermittent demand need a different treatment, often a longer averaging window or a model that handles zeros.
- Forecasting without a feedback loop. A forecast that is never compared to actuals decays quietly. The validation step is not a one-time exercise; it is the mechanism that keeps the method honest.
Closing
Start with clean sales history, a seasonal moving average, and a validation step against held-out weeks. That baseline will beat gut feel for most 200-SKU stores, and it will tell you — with numbers — when a tool is worth the cost.
Visual Direction
- palette: slate, ivory, deep navy, muted brass accent
- lighting: soft directional, low contrast, cool overcast window light
- texture: matte paper, fine film grain, clean flat surfaces
- subject_register: a neat wall of labels, one object per frame
- abstraction: high
- style_anchor: quiet editorial data-journalism hero, 16:9, left third reserved for title overlay


