Demand Pattern Classifier

Paste 30+ days of daily sales for any item. The classifier returns the item’s demand pattern (smooth, intermittent, erratic, or lumpy) via the Syntetos–Boylan–Croston (SBC) framework and the forecast method that should be applied. Same methodology LineNow runs internally on every connected item every night.

Tip: pull the last 30 days of daily sales for one item from your POS. Days with zero sales are meaningful — keep them in.
Smooth

Sells most days, with low variance from day to day. Future demand looks like recent history. The straightforward case — daily-sold staples like coffee beans, milk, or a flagship product.

Recommended forecast

Exponential smoothing or a simple moving average. Standard min/max thinking works here too.

Safety stock approach

Standard `z × σ × √(lead time)` formula with a moderate service level (90% is the sensible default).

Operator advice

This is the easy case for the system; the operator should just set a reasonable service level and let the math run.

Show the math
Days observed30
Days with non-zero sales27
Days with zero sales3
Mean daily sales4.63
Std dev (σ)1.72
Mean non-zero demand5.15
ADI (Average Demand Interval)1.11
CV² (squared coeff. of variation, non-zero demand)0.024
SBC thresholdADI ≤ 1.32, CV² ≤ 0.49
ClassificationSmooth

What this tool computes

The classifier uses two parameters from the SBC framework (Syntetos, Boylan, Croston) to place every item into one of four regimes:

  • ADI (Average Demand Interval) — how many days, on average, between non-zero demand observations.
  • CV² (squared coefficient of variation) — how volatile non-zero demand sizes are relative to their mean.

The four regimes:

  • Smooth — ADI ≤ 1.32 and CV² ≤ 0.49. Daily-sold staples. Use exponential smoothing.
  • Intermittent — ADI > 1.32 and CV² ≤ 0.49. Slow but stable. Use Croston / Syntetos–Boylan Approximation.
  • Erratic — ADI ≤ 1.32 and CV² > 0.49. Daily-sold but spiky. SBA plus thicker safety stock.
  • Lumpy — ADI > 1.32 and CV² > 0.49. Rare and spiky. SBA plus operator override / external signals.

The reason this matters: applying the wrong forecast to the wrong regime silently destroys margin. A smooth-demand average applied to lumpy demand will over-order on top of the spikes and stockout between them. Most SMB inventory tools use one method for every item (typically a moving average or sell-through rate), which is why their replenishment math drifts from reality within a quarter. See Coefficient of Variation for the full math.

How to use this

  1. Pull the last 30+ days of daily sales for one item from your POS (Shopify, Square, Toast, Faire, Clover). Daily granularity matters — weekly buckets give a different (less reliable) result.
  2. Paste the values into the form. Comma-separated, space-separated, or one per line all work.
  3. The classifier returns the regime and the recommended method.
  4. Apply the recommended method when computing PAR, reorder point, and safety stock for that item. (The PAR Level Calculator uses statistical safety stock that already accounts for the classification.)

Classifying one item by hand is useful. Classifying 200 items every night, automatically, with the right forecast applied to each regime, is what LineNow does inside its closed-loop replenishment engine. Free 90 days, $50/month after.

Related