Forecasting inventory demand for a Shopify store does not require a data science team, a graduate degree in statistics, or a five-figure planning platform. It requires three inputs (sales velocity, lead time, and a safety stock buffer), a repeatable method for updating them, and a way to apply the math across every SKU before a stockout happens. Get those three things right and you will make better reorder decisions than 90% of merchants who still go by gut feel.
Key takeaways
- Demand forecasting on Shopify is built on four core numbers: average daily demand, lead time, safety stock, and reorder point.
- Shopify's native admin does not forecast demand. Since Stocky was discontinued in 2026, there is no built-in forecasting tool on the platform.
- Three methods cover most Shopify catalogs: moving average (stable SKUs), weighted moving average (trending SKUs), and seasonal decomposition (annual-pattern SKUs).
- Gut feel produces forecast accuracy of roughly 45%. A simple weighted moving average raises that to around 75%.
- A single stockout on a best-seller that earns $200/day in margin costs more in one week than most forecasting apps charge per year.
Why gut feel breaks down past a few dozen SKUs
Guessing when to reorder feels fine when you have 20 products and know every one of them personally. Once you cross 50 to 100 SKUs, two things happen that make intuition structurally unreliable.
First, demand signals multiply. A SKU you reordered last quarter may be growing 30% month-over-month because of a social media mention you half-remember. Your gut rounds that down to "selling okay." Second, lead times introduce a compounding lag. If your supplier takes 21 days, you are not deciding whether to reorder today based on today's stock. You are deciding whether today's stock, minus 21 days of projected sales, plus your safety buffer, is enough. That is a math problem, not a feel problem.
If your supplier takes 21 days, you need to predict demand 21 days into the future at the moment you place an order. The further out you forecast, the more a structured method beats intuition.
Shopify's native inventory system does not forecast demand or calculate optimal reorder points, which means merchants have to bring their own method.
The four numbers that drive every Shopify demand forecast
Before picking a forecasting method, understand the four inputs every method feeds into:
- Average daily demand (ADD): Units sold per day, averaged over a relevant recent window (not all-time, see below).
- Lead time (LT): Calendar days from placing a purchase order to stock arriving and being available to sell.
- Safety stock (SS): A buffer calculated from demand variability and lead time variability. The simplest usable formula is:
SS = Z × σ_demand × √LT, where Z is 1.65 for a 95% service level and σ_demand is the standard deviation of daily sales. - Reorder point (ROP): The stock level that triggers a new order.
The formula that ties them together:
Reorder Point = (Average Daily Demand × Lead Time) + Safety Stock
For example: ADD = 8 units/day, LT = 14 days, SS = 20 units. ROP = (8 × 14) + 20 = 132 units
When stock drops to 132 units, place the order. Not before, not after. That is demand forecasting in its most actionable form. For a deeper walkthrough of how lead time variability compounds this calculation, see the lead time and demand variability guide.
Three forecasting methods and when to use each
Not every SKU in your catalog behaves the same way. Using one method across the board will overstock your slow movers and understock your fast movers. Match the method to the SKU's demand pattern.
| Method | Best for | How it works | Trade-off |
|---|---|---|---|
| Simple moving average | Stable sellers with flat demand | Average units sold over last N weeks (e.g. 4-8 weeks) | Reacts slowly to genuine trend shifts |
| Weighted moving average | Trending SKUs (growing or declining) | Recent weeks get higher weight than older weeks | Slightly more sensitive to short-term noise |
| Seasonal decomposition | SKUs with annual demand cycles | Multiply base forecast by a seasonal index derived from prior-year data | Requires at least 12 months of clean sales history |
| Qualitative (judgment-based) | New SKUs with no sales history | Use supplier data, pre-order counts, or comparable product history | Subjective; should be replaced with quantitative data within 60-90 days |
A simple moving average is a fine default for steady sellers, but its downside is that it reacts slowly to a genuine change in demand.
A weighted moving average gives recent periods more weight than older ones, so the forecast responds faster to trends while still smoothing out noise. It is a good upgrade from a plain average for products whose demand is drifting up or down.
Qualitative methods are especially useful for new SKUs, promotional launches, and major business shifts where there is no reliable sales history to anchor a quantitative model.
The five most common forecasting mistakes Shopify merchants make
Method choice matters less than data quality. These mistakes break forecasts regardless of which approach you use:
- Using all-time average velocity. All-time averages bury a current growth trend under two years of slower historical data. Use a rolling 8-to-12-week window for most SKUs.
- Ignoring lead time variability. A supplier who usually ships in 14 days but sometimes takes 22 days is not a "14-day supplier" for safety stock purposes. Use the worst-case or 90th-percentile lead time in your buffer calculation.
- Treating a promotional spike as normal demand. A flash sale or influencer post can 10x a SKU's velocity for a week. If that week is in your rolling average, your reorder trigger will be permanently inflated. Tag and exclude promotional periods.
- Forecasting total sales instead of channel-separated demand. Without a unified view, a merchant forecasting for a 150-SKU catalog is effectively managing three or more separate inventory pools, leading to localized stockouts on one channel while excess inventory sits on another.
- Never recalibrating. A forecast built in January becomes stale by March. Review and update your ADD and safety stock numbers at minimum once per quarter, and after any major sales event.
How to build your first Shopify demand forecast in an afternoon
Here is a practical starting workflow that does not require any special software:
- Export your last 90 days of sales by SKU from Shopify Admin (Reports > Sales by product).
- Calculate average daily demand for each SKU by dividing total units sold by 90.
- Record the lead time for each SKU's primary supplier. If you have variability data, note the max lead time too.
- Apply the ROP formula:
(ADD × LT) + SSfor each SKU. UseSS = ADD × 0.5 × LT_variability_daysas a quick approximation if you do not have standard deviation data yet. - Sort by urgency: which SKUs are currently below their ROP right now? Those need a purchase order today.
- Flag SKUs with zero velocity in the last 60 days as dead stock candidates. Cash locked in non-moving inventory is cash that cannot fund your next reorder.
This process runs in a spreadsheet for catalogs up to roughly 80-100 SKUs. Above that threshold, the manual refresh cycle becomes the bottleneck. You will either do it less often than you should, or you will make errors on the SKUs you meant to get to next week.
For a worked example of how to read and trust a completed forecast, see the inventory forecast explainer.
When to stop doing this manually
The honest trigger for moving off spreadsheets is not SKU count alone. It is the cost of the mistakes you make because your spreadsheet is two days out of date.
Consider: a best-selling product generating $250/day in gross margin goes out of stock for five days because a reorder trigger was missed during a busy week. That is $1,250 in lost margin from one SKU, one time. Most Shopify inventory apps cost less than that per month.
Good forecasting tools sync automatically with your Shopify inventory. When you sell products, the system updates stock levels and recalculates forecasts, with no manual data entry required.
If you want every recommendation to come with the underlying math shown (so you can audit it, override it, and trust it), Stockcast: Inventory Forecast does exactly that. It monitors your Shopify stock levels daily, surfaces reorder recommendations ranked by urgency with transparent calculations, and sends a daily digest so you are never caught off-guard by a pending stockout. There is a free plan for stores up to 25 SKUs and a 14-day trial on paid tiers.
FAQ
Does Shopify have built-in demand forecasting?
No. Shopify Admin provides sales reports and low-stock alerts, but it does not calculate demand forecasts, reorder points, or safety stock. Since the Stocky app was discontinued in 2026, merchants need a third-party app or a manual spreadsheet process to forecast inventory demand.
How many months of sales history do I need to start forecasting?
You can start with as little as 30 days of data using a simple moving average, though 60 to 90 days gives more reliable results for stable SKUs. Seasonal decomposition requires at least 12 months of history to build a meaningful seasonal index. For new products with no history, use pre-order data, a comparable SKU's velocity, or supplier projections until real sales data accumulates.
What is a good safety stock formula for a small Shopify store?
The simplest practical formula is: Safety Stock = Average Daily Demand multiplied by the difference between your maximum observed lead time and your average lead time. For example, if you sell 10 units per day and your supplier sometimes takes 5 days longer than usual, hold 50 units of safety stock for that SKU. This is less precise than a full standard-deviation-based calculation, but it is far better than holding no buffer at all.
Frequently asked questions
Does Shopify have built-in demand forecasting?
No. Shopify Admin provides sales reports and low-stock alerts, but it does not calculate demand forecasts, reorder points, or safety stock. Since the Stocky app was discontinued in 2026, merchants need a third-party app or a manual spreadsheet process to forecast inventory demand.
How many months of sales history do I need to start forecasting?
You can start with as little as 30 days of data using a simple moving average, though 60 to 90 days gives more reliable results for stable SKUs. Seasonal decomposition requires at least 12 months of history to build a meaningful seasonal index. For new products with no history, use pre-order data or a comparable SKU's velocity until real sales data accumulates.
What is a good safety stock formula for a small Shopify store?
The simplest practical formula is: Safety Stock = Average Daily Demand multiplied by the difference between your maximum observed lead time and your average lead time. For example, if you sell 10 units per day and your supplier sometimes takes 5 days longer than usual, hold 50 units of safety stock for that SKU. This is less precise than a standard-deviation-based calculation, but it is far better than holding no buffer at all.