Skip to main content
Stockful uses your sales history to predict future demand. Forecasting is available on all plans.
Forecasting uses the 30 days of sales history synced during setup, so predictions are available as soon as your initial sync completes. Accuracy improves over time as more data accumulates.

What you get

For each variant at each location:
  • Velocity - how many units sell per day
  • Days of supply - how long current stock will last at the current sales rate
  • Projected stockout date - when inventory will run out if nothing changes
  • Reorder point - when you should place a reorder to avoid running out (accounts for lead time and safety stock)
  • Recommended order quantity - how much to order based on your restock strategy
  • Sell-through rate - what percentage of inventory has sold over the last 30 days
  • ABC classification - whether a SKU is an A (top revenue), B, or C tier item
  • Forecast accuracy - how close past forecasts were to what actually sold, graded weekly

Where forecasts appear

  • Inventory list - sortable columns for days of supply, velocity, reorder point, projected stockout, and stock status
  • Inventory detail page - full breakdown of forecast metrics for a variant at a location, plus the forecast chart and forecast accuracy
  • Reorder Recommendations report - items that should be reordered based on velocity and lead time
  • ABC Analysis report - revenue-based classification into A, B, and C tiers

Self-tuning forecast models

Stockful doesn’t force every product onto a straight-line forecast. For each variant at each location it backtests a few demand models on that SKU’s own history - a flat baseline, a trend model (demand rising or falling), and a day-of-week model (weekly buying patterns) - and adopts a richer model only when it clearly beats the baseline on recent weeks. Slow or sparse sellers stay on the simple baseline, so a forecast never gets worse by guessing at a pattern that isn’t there. On the inventory detail page, the forecast chart shows the chosen model’s projection: a curve rather than a straight line for SKUs with a real trend or weekly rhythm. Incoming shipments with an expected arrival date appear as a step up on the projection, so you can see stock replenish before it runs out.

Warehouse / hub locations

Locations with the Hub (warehouse) role measure demand differently: a hub’s velocity reflects the total demand of every location it supplies, and its reorder points are sized for your supplier lead time. See hub locations for how roles are detected and overridden.

Sales and promotions

Promotions create demand spikes that aren’t your real baseline, so Stockful detects sale days automatically and leaves them out of velocity, demand variability, and model training. No setup needed - detection covers:
  • Price markdowns - a compare-at price above the selling price, or a price meaningfully below the SKU’s recent regular price
  • Discount codes and order-level promotions - days where at least half a SKU’s ordered units sold with a 10%+ discount (small sweeteners like a 5% loyalty code are ignored on purpose)
This means a flash sale or BFCM weekend won’t inflate reorder points, stockout forecasts, or trigger “unusual sales spike” alerts - spikes that line up with your own promotion are annotated, not alarmed on. If a SKU effectively only ever sells on sale, Stockful falls back to using its full history rather than leaving the forecast empty.

Forecast accuracy

Each week Stockful records the forecast it made, then grades it against what actually sold. The inventory detail page shows a Forecast accuracy figure once there are at least a couple of weeks to compare. You can also ask the AI assistant “how accurate are my forecasts?” or “where did the forecast miss, and why?” for a plain-English breakdown - including whether a miss lined up with a sale or a switch in model. Weeks a SKU was out of stock are left out of the grade, since there was nothing to sell.

Global settings

Configure defaults for all SKUs in Settings → Forecasting. These apply to every variant unless overridden at the SKU level.

Replenishment

SettingWhat it controls
Lead timeDays it takes to receive stock from your supplier (0–365, default 7). Longer lead time means earlier reorder recommendations.
Safety stockExtra days of buffer stock to keep on hand beyond lead time (0–365, default 3). Protects against demand spikes or shipping delays.
Where a SKU has enough sales history, Stockful sizes its safety stock statistically - from how variable that SKU’s demand actually is and your target service level - rather than the flat day-buffer. The day-buffer above is the fallback for new or sparse SKUs.

Velocity calculation

SettingWhat it controls
Velocity periodDays of sales history to use when calculating how fast items sell (7–365, default 30). A longer period smooths out short-term spikes.

Restock strategy

SettingWhat it controls
Restock-to daysHow many days of supply you want after restocking (1–365, default 30). Higher values mean larger, less frequent orders.
Demand adjustmentA percentage modifier applied to velocity (-100% to +500%). Use this to account for anticipated seasonal changes - for example, +50% ahead of a busy period. Leave blank for no adjustment.
Sales groupingHow velocity is calculated for multi-location stores. Per location (default) calculates velocity separately at each location. Combined aggregates sales across all locations before calculating - useful when stock is fulfilled from a central warehouse.
When in doubt, set a slightly longer lead time than your actual average. It’s better to reorder a few days early than to run out waiting for a shipment.

SKU-level overrides

Not every product has the same supply chain. From Settings → Forecasting, click SKU overrides to customise settings per variant. Each variant can override:
OverrideWhat it does
Lead timeSupplier-specific lead time for this SKU
Safety stockCustom buffer for high-value or volatile items
Low stock threshold (days)Override the global days-of-cover low-stock threshold for this SKU
Restock-to daysCustom restock target for this SKU
Demand adjustmentSKU-specific seasonal or promotional adjustment
Leave a field blank to inherit the global default. The override table shows the inherited default value as a placeholder so you can see what each SKU will use. You can search by product name or SKU, and reset individual overrides back to defaults.

AI-suggested thresholds

On the SKU overrides page, click Suggest with AI to have Stockful’s assistant recommend values for lead time, safety stock, low-stock threshold, and restock-to days. Suggestions are based on each SKU’s actual sales history, variability, and supplier link. Each suggested field comes with a one-sentence explanation; you can apply suggestions individually or all at once. Bulk mode runs across many selected SKUs; the same suggestion is also available in the inventory detail modal for single-SKU tuning.

Low-stock threshold

The low-stock alert fires when a SKU is projected to run out within X days at its current sales velocity (default 7). Because it’s days-of-cover rather than a fixed unit count, the same threshold works for slow-movers and fast-movers without re-tuning per SKU.

Units floor (for new SKUs)

Brand-new SKUs have no velocity history yet, so days-of-cover can’t be computed. For those, Stockful falls back to a units floor - alert when stock drops to or below this many units (default 5). The floor only matters until the SKU has accumulated enough sales history; after that, the days-of-cover comparison takes over automatically. Both settings live under Settings → Tracking.

Settings hierarchy

When calculating forecasts, Stockful resolves each setting in order:
  1. SKU override - if set on the variant, use it
  2. Supplier default - if the variant is linked to a supplier with a default lead time, use that
  3. Global default - the value from Settings → Forecasting
This lets you set sensible defaults globally, override at the supplier level for lead times, and fine-tune individual SKUs where needed.