Forecasting
Inventory forecasting formulas, and which one to use when
Four formulas cover almost every real store. Choosing between them matters far less than the number you feed them, which is where most forecasts go wrong.

The simplest useful inventory forecast is units sold divided by the days the product was actually available for sale. Everything below is a refinement of that one line, and the refinements matter less than the divisor. Get the divisor wrong and the most sophisticated model on the page will give you a confident wrong answer.
Four formulas cover almost every store that is not running a data science team. Here they are with the arithmetic done, and with the case each one is genuinely right for.
How do you forecast inventory?
You estimate a daily rate, then multiply it by the days you need to cover. That is the whole shape of it.
units to cover = daily rate × (lead time + the days of stock you want on arrival)
The formulas below differ only in how they produce that daily rate. The second half of the line, the lead time, is not a forecast at all, it is a measurement, and for importers it usually dominates the result. A perfect rate multiplied by a wrong lead time is a wrong order.
What are the five forecasting methods?
Textbooks usually count five: naive, moving average, weighted moving average, exponential smoothing, and trend or regression analysis. Four of them are worth your time in a store. Here they are in ascending order of effort.
Naive forecast
Next period equals last period. Sold 90 last month, forecast 90.
It sounds useless and it is not: it is the benchmark every other method has to beat. If your clever model cannot outperform "same as last month" on your own history, the clever model is noise. Use it as a control, not as a plan.
Simple moving average
rate = units sold in the window ÷ days in the window
Sell 540 units over the last 60 in-stock days and your rate is 9 a day. Cover a 70-day lead time plus 60 days of stock on arrival and you need 9 × 130, which is 1 170 units.
Right for steady products with no strong season. Its weakness is that every day in the window counts equally, so a spike four weeks ago pulls the number as hard as yesterday does.
Weighted moving average
rate = (w₁×p₁ + w₂×p₂ + w₃×p₃) ÷ (w₁ + w₂ + w₃)
Take three months at 240, 300 and 360 units, oldest first, and weight them 1, 2 and 3. That gives (240 + 600 + 1 080) ÷ 6, which is 320 a month, against a simple average of 300. The weighted figure sits nearer the recent trend without chasing it entirely.
Right when demand is drifting and you can see the drift. The weights are a judgement call, which is honest: you are stating how much you trust recent history, rather than pretending the model decided.
Exponential smoothing
new forecast = last forecast + α × (actual − last forecast)
With a forecast of 300, an actual of 360 and α of 0.3, the next forecast is 300 + 0.3 × 60, which is 318. Every past period is still in there, fading as it ages, and you only have to store two numbers instead of a window of history.
α between 0.1 and 0.3 is the usual range. Higher reacts faster and jitters more; lower is calmer and slower to notice a real change. Right for a large catalogue where you want one rule that behaves sensibly everywhere.
Seasonal indexing
index = average for that month ÷ average for all months, then forecast = base rate × index
If November averages 1 800 units against an all-month average of 1 200, November's index is 1.5, and a base rate of 40 a day becomes 60 for November. Two full years of history is the honest minimum, because one year cannot separate a season from a one-off.
Right for anything with a real calendar. It is also the method most likely to be wrong in a way that hurts, because it multiplies, so an index built on a year that contained a stockout will quietly understate every future November.
Which formula should you use?
| Method | Needs | Right when | Fails when |
|---|---|---|---|
| Naive | One period | You need a benchmark | Anything moves |
| Moving average | 30 to 90 days | Demand is steady | There is a trend or a season |
| Weighted average | 3 to 6 periods | Demand is drifting | Weights are guessed badly |
| Exponential smoothing | Two stored numbers | Large catalogue, one rule | Strong seasonality |
| Seasonal index | Two full years | A real calendar pattern | History has stockouts in it |
What breaks all four
The divisor. Every formula above divides by a number of days, and the instinct is to divide by days elapsed. That is wrong whenever the product was unavailable, because the days it could not sell are counted as days it chose not to.
Sell 30 units over 60 days with the product out of stock for 40 of them, and the calendar rate is 0.5 a day while the honest rate is 30 ÷ 20, which is 1.5. Wrong by a factor of three, and wrong in the direction that makes you order less of something that keeps running out. We have written about that loop and how it compounds separately, because it costs more than any choice of model on this page.
Two smaller ones worth the same suspicion. A discount week measures price sensitivity, not demand, so it belongs out of the window or explicitly flagged. And a brand-new product has no rate at all, which no formula fixes: that is a judgement about a comparable product, and it should be labelled as one.
What are the 7 steps of forecasting?
The seven-step version comes from operations management teaching, most often cited to Heizer and Render: decide what the forecast is for, choose the items to forecast, set the time horizon, pick the model, gather the data, make the forecast, then validate and implement it.
The steps people skip are the first and the last. Deciding what the forecast is for sets the horizon, and a forecast made for the wrong horizon is useless however accurate it is. Validating means comparing what you predicted against what happened, which almost nobody does, and without it you cannot know whether your model beats the naive benchmark.
Do you need software for this?
Not for the arithmetic. Every formula here fits in a spreadsheet, and for a few dozen products a spreadsheet is genuinely the right tool. What software changes is the bookkeeping around the formula: measuring in-stock days per product so the divisor is honest, tracking real lead times, subtracting what is already on the water, and doing it for every product every day rather than for the products you remembered to check.
Restocio uses a moving average over in-stock days, with the stockout correction applied by default rather than as an option, then turns the rate into a date and a quantity net of goods in transit. It does not run exponential smoothing or seasonal indexing today, and saying otherwise would be easy and untrue. Seasonality is on the roadmap and is deliberately not shipped half-built, because a seasonal multiplier applied to bad history is worse than no seasonality at all.
Common questions
How do you forecast inventory?
Estimate a daily sales rate, then multiply it by the days you need to cover, which is your supplier's lead time plus the stock you want left when the delivery lands. The rate comes from units sold divided by the days the product was actually available for sale, not days elapsed. For importers the lead time usually matters more than the model, because a perfect rate multiplied by a wrong lead time still produces a wrong order.
What are the five forecasting methods?
Naive, moving average, weighted moving average, exponential smoothing, and trend or regression analysis. In a store the practical four are: naive as a benchmark to beat, moving average for steady demand, weighted average when demand is drifting, and seasonal indexing when there is a real calendar pattern. Exponential smoothing suits large catalogues because it needs only two stored numbers per product.
What is the inventory forecasting formula?
At its simplest, rate equals units sold divided by the days the product was in stock, and units to order equals that rate multiplied by lead time plus the days of cover you want on arrival. Sell 540 units across 60 in-stock days and the rate is 9 a day; cover a 70-day lead time plus 60 days of cover and you need 1 170 units.
What are the 7 steps of forecasting?
As taught in operations management, most often cited to Heizer and Render: determine the use of the forecast, select the items to forecast, determine the time horizon, select the forecasting model, gather the data, make the forecast, and validate and implement the results. The commonly skipped ones are the first and the last, and skipping validation means you never learn whether your model beats simply repeating last month.
How do you forecast inventory in Excel?
A moving average is AVERAGE over a range of in-stock days, and exponential smoothing is one cell referring to the cell above it, in the form new = old + alpha times (actual minus old). Excel also ships a FORECAST.ETS function that handles seasonality if you have at least two full cycles of history. The hard part in a spreadsheet is not the formula, it is maintaining an honest count of in-stock days per product.
What is the best software for inventory forecasting?
It depends on what breaks first for you, and the honest test is whether a tool corrects for stockouts in its own sales history, since one that does not will systematically under-order everything that already ran out. Beyond that, importers should weigh lead-time handling and whether goods in transit are netted off, while domestic sellers with short lead times often need no tool at all. Restocio is built for the import case and we say plainly when a spreadsheet would serve you better.
Marcus co-founded Restocio and works on it daily with a Swedish importer who plans their purchasing in it every working day. Restocio is built in Sweden by two founders, one Swedish and one Danish, and Marcus is the Danish one. Most of the examples on this blog come from that store's real ordering decisions rather than from a textbook. Why we are building it.
Related reading
- Inventory forecasting for Shopify, and what it cannot tell you
- Reorder point formula, with a worked example
- ABC analysis for inventory, and where the letters stop helping
Restocio plans purchasing for Shopify stores that import. It works out what to order, how much, and whether it should travel by sea, rail or air, so you pay air freight only for the units that genuinely cannot wait.