How to Forecast Inventory from Shopify Sales Data

INVENTORY & OPERATIONS8 min read

Build a reviewable demand baseline, show data quality, and turn forecast daily units into a reorder point without promising accurate stockout prevention.

Table of Contents
  1. Start with a clean demand definition
  2. Three transparent demand methods
  3. Send the forecast into the reorder formulas
  4. Validate the result before purchasing
  5. FAQs

Inventory forecasting is a planning exercise that turns a stated demand history into a future replenishment assumption. A useful model shows the window, fields, exclusions, and uncertainty. It does not claim to know demand from a single average or guarantee that a SKU will avoid a stockout.

The Shopify Inventory Reorder Planner reads inventory and sales CSVs in the browser. It can use a simple average, a recent-weighted average when dated sales rows are available, or a manual seasonal factor before applying lead time, safety stock, MOQ, and pack multiple.

Start with a clean demand definition

Choose one observation period and use the same period for every SKU in the first pass. Record whether units sold are net of cancellations and how returns are handled. Match sales to inventory by SKU or by Handle plus option values; do not join variants by product title.

The baseline formula is:

Baseline average daily units = units sold in observation period ÷ observation days

If a SKU sold 120 units in 60 days, its baseline is 2 units per day. This is a descriptive rate, not a forecast by itself.

Three transparent demand methods

Simple average uses the baseline for a known observation period. It is easy to audit and works with an aggregated sku, units_sold file.

Recent-weighted average needs a parseable sales-date column. The planner gives the selected recent window 60% weight and the baseline 40% weight. If recent rows total 90 units over 30 days and the baseline is 2 units per day, the recent rate is 3 and the blended forecast is 3 × 0.6 + 2 × 0.4 = 2.6 units per day.

Manual seasonal factor multiplies the baseline by a factor from 0.1 to 5. A factor of 1.25 means you are planning for 25% more daily demand; it is an assumption that needs a reason, such as a documented promotion or seasonal window. It is not machine learning.

The tool reports included rows, missing dates, and zero-demand SKUs. Invalid dates are not silently treated as recent data. A zero demand rate becomes a manual-review state instead of an infinite coverage number.

Send the forecast into the reorder formulas

Reorder point = forecast daily units × (lead time days + safety stock days)

Target stock = forecast daily units × (lead time days + safety stock days + review cycle days)

Initial suggested units = max(0, target stock − available stock)

The final order rounds the positive gap up to the supplier MOQ and pack multiple. If forecast daily units are 2.6, lead time is 14 days, safety stock is 7 days, and review cycle is 7 days, target stock is 2.6 × 28 = 72.8 units. With 20 units available, the initial gap is 52.8 units; a pack size of 12 rounds the recommendation to 60 units.

Validate the result before purchasing

Review the highest-risk rows first. Confirm open purchase orders, inbound timing, supplier constraints, current promotions, product launches, and country or location differences outside the calculator. Compare the forecast with recent weekly sales and a slower baseline; a single method can hide a sudden demand change.

Keep a data-quality note with missing dates, excluded rows, duplicate keys, zero demand, and the reason for any seasonal factor. If a sales file is store-wide while inventory is location-specific, treat the result as a screening estimate and use location-level sales when possible.

FAQs

What is inventory forecasting?

It is a stated estimate of future demand used for purchasing or capacity planning. The estimate should show its data window and assumptions so a team can review and change it.

Can an average forecast prevent stockouts?

No. Promotions, seasonality, supplier delays, lost sales, returns, and demand changes can make actual movement different. Use the forecast as one planning input and review it when conditions change.

Why is zero demand not shown as infinite coverage?

Dividing stock by zero demand has no useful finite meaning. The planner shows manual review so you can check the sales period, SKU mapping, and new-product status.