Skip to content
GREEN FUTURETECH.
Explore

GFT instruments / Synthetic demand laboratory

History becomes signal.
One week at a time.

How fast does a forecast improve as sales history accumulates? Reveal an illustrative demand series, fit three methods and test them against the same unseen weeks.

Held-out MAPE7.2%illustrative, same unseen weeks
Reveal the learning curve
Operate the instrumentProcedural visualisation. Schematic, not a facility.

01 / Instrument, synthetic and illustrative

How much history earns a better forecast?

Synthetic experiment. Every demand point and every price is illustrative. No factory sales are supplied. The forecast origin stays at week 104.

Held-out MAPE, lower is better7.2%Holt-Winters
Mean absolute error84units per forecast week
History admitted39weeks before the same origin
Mismatch proxy, illustrative42,022 XAF/weekexcess plus shortage, one unit cost
Choose the forecast
A / Demand and uncertainty

History exposes the seasonal thread.

Illustrative units
UNITS / WEEK05001000150020006585104117WEEK IN SYNTHETIC SERIES
UNITS / WEEK05001000150020006585104117WEEK IN SYNTHETIC SERIES

Point at the chart to read a week. With the chart focused, the arrow keys step through the weeks.

Admitted historySelected forecastUnseen actualResidual-spread fan

The vertical marker is the fixed forecast origin. Fans show ±1 and ±2 residual RMSE × √h, clipped at zero. These are heuristic spreads, without calibrated probability coverage.

B / The learning experiment

Each week must earn its improvement.

MAPE / %
MAPE / LOWER IS BETTER0%20%40%4265278104WEEKS OF TRAINING HISTORY
MAPE / LOWER IS BETTER0%20%40%4265278104WEEKS OF TRAINING HISTORY

Point at the curve to compare the three methods at that history. Select a point to admit that many weeks.

Last-week naiveFour-week averageHolt-Winters

All weekly fits face the same unseen window. Holt-Winters starts after two cycles, at 26 weeks. The cursor marks your history setting. Flat baselines are expected because their recent inputs do not change.

02 / Read the result against the baselines

Compare the methods, then price the mismatch.

Held-out MAPE at the history you set, on the same unseen weeks. A shorter bar is a smaller error. Point at a bar to find its row below, or select it to forecast with that method.

Holt-Winters has 7.2% MAPE on the same 13 unseen weeks. It improves on last-week naive by 6.4 percentage points in this synthetic case. More history can expose seasonality, but individual weekly errors need not fall. Test on several real forecast origins before an operating decision.

Compare methods at the current history length. Select a method name to forecast with it.
MethodMAPEMAE, units/weekFit status
13.7%170Simple baseline
21.2%278Simple baseline
7.2%84Training-only grid fit
03 / A cost hypothesis to test

Price the mismatch separately.

42,022 XAF/week

Illustrative weekly mismatch-cost proxy. The same assumed unit cost applies to excess and shortage.

Excess forecast over the horizon
255 units
Shortage forecast over the horizon
838 units
Excess + shortage = absolute mismatch
1093 units
A / B scenario register

Keep a decision beside its assumptions.

A, savedNone yetUse Save scenario A
B minus An/apercentage points MAPE
B, live7.2%39 weeks, Holt-Winters

Save this state as A, then change history or another input to compare with B. A is held in this page and included in a shared link.

04 / External context, R27

A sector range is not your return.

  1. Inventory cost, down35 to 40%
  2. Forecast accuracy, up20 to 30%
  3. Forecast errors, cut20 to 50%
Your claimed change25%

inside 2 of the 3 cited ranges

A claimed 25 percent sits below the 35 to 40 percent range for inventory cost, inside the 20 to 30 percent range for forecast accuracy and inside the 20 to 50 percent range for forecast errors. Position only: the figure never scales the laboratory cost proxy.

The programme-annex evidence register attributes inventory-cost reductions of 35 to 40 percent to McKinsey’s The State of Fashion 2025, with forecast accuracy up 20 to 30 percent and forecast errors cut 20 to 50 percent.

This is an external outer-bound reference annotation, not an outcome demonstrated by this laboratory or by GFT. The original article was not independently reverified for this page. It never enters the equations and does not cap or scale the mismatch-cost proxy. Inventory cost also depends on service targets, lead time, ordering rules, stock ageing and the cost of capital.

Your laboratory, right now, illustrative
7.2%held-out MAPE
42,022 XAF/weekmismatch proxy

Different units. No percentage on the left converts to a figure on the right.

05 / Method, redrawn on your inputs

Freeze, admit, fit, read.

Live stage / your current inputs
SYNTHETIC DEMAND SERIES · ILLUSTRATIVE UNITS / WEEKORIGIN FIXED AT WEEK 104ORIGIN LOCKED · WK 104CANDIDATE HISTORY POOL (WEEKS 1 TO 104)Seed 7 · Base 1,000 units/wk · Cycle 13 weeksModels may only read weeks to the left of the origin.FROZEN13 wksunseen39 WEEKS ADMITTED TO TRAININGMAPE TICK: 7.2% AT 39 WKSADMITTED WINDOW39 / 104 wksNaive baseline: 13.7%HELD-OUT LEARNING CURVE (HOLT-WINTERS)1. LEVEL COMPONENT (α 0.15)1,192 unitsTraining baseline2. TREND SLOPE (β 0)0.1 u/wkCycle-to-cycle additive growth3. SEASON WAVE (γ* 0.25)-299 to +29813-week repeating offsetsILLUSTRATIVE STOCK TARGET LINEEXCESS OVER HORIZON255 unitsForecast above unseen actualSHORTAGE OVER HORIZON838 unitsUnseen actual above forecastMISMATCH PROXY (500 XAF/U)42,022 XAF/wkTotal gap: 1093 unitsover 13 wksUNSEEN (13W)
1 / The test window is frozenOrigin locked after week 104. 13 unseen weeks are hatched and withheld from every fit.
2 / Admitted weeks sweep in with MAPE tick39 of 104 historical weeks enter from the right; held-out error ticks to 7.2%.
3 / Seasonal wave and components are fittedLevel 1,192u (α 0.15), trend 0.1u/wk (β 0) and 13-week wave (γ* 0.25).
4 / Error fan versus stock lineResidual fan (±1σ, ±2σ) and stock reference line show 255 excess + 838 shortage = 1093 mismatch units.
  1. Step 1 of 4 / Locked origin

    The test window is fixed

    The series is synthetic and seeded. The forecast origin is fixed after week 104, and every fit predicts the same unseen weeks to its right.

    Read the full method

    The laboratory builds a deterministic series with a seeded linear congruential generator. Weekly demand is the starting demand times a linear trend, an additive seasonal wave and zero-mean uniform noise. The series is synthetic throughout, so the data requirement is visible without pretending to hold a factory’s sales ledger. The same seed reproduces the same demand.

    The forecast origin is fixed after week 104. Every fit predicts the same unseen weeks to its right. This is a controlled history-length experiment, not a real-time backtest with a changing calendar.

  2. Step 2 of 4 / Admitted window

    History joins from the right

    The history slider sets how many preceding weeks the models receive. Older weeks join from the left, and the error curve can rise as well as fall.

    Read the full method

    The history slider decides how many immediately preceding weeks the models receive, revealing older observations towards the left. The error curve is calculated at every whole week of training history. No smoothing makes it fall, so it can rise.

    The naive method repeats the last observation. The moving average repeats the mean of the last four; it does not feed its forecasts back into the mean. Both are deliberately simple comparators, and older history cannot change their inputs once four observations exist.

  3. Step 3 of 4 / Training decomposition

    The season is fitted on training only

    Holt-Winters splits level, trend and season, tuned on training weeks only. It needs two 13-week cycles, so it unlocks at 26 weeks.

    Current fit: α 0.15, β 0, γ* 0.25. Fitted on training only.

    Read the full method

    Additive Holt-Winters separates level, trend and seasonal offsets. The first-cycle mean initialises the level. The change between the first two cycle means, divided by cycle length, initialises the trend. The first cycle’s deviations initialise the seasonal offsets, and the second cycle onwards updates them. The forecast extends level plus trend and repeats the latest seasonal offsets, with negative values clipped to zero.

    A coarse grid tries alpha 0.15, 0.35, 0.65 and 0.90, beta zero, 0.10 and 0.30, and gamma-star 0.05, 0.25 and 0.60, and keeps the smallest one-step squared-error sum after the first two cycles. The unseen window never selects parameters. The method needs two complete cycles, 26 weeks: a laboratory rule, not a universal guarantee of adequate data.

  4. Step 4 of 4 / Stocking vs forecast error

    Read the limits before stocking

    The fans are teaching spreads, not probability claims. One seed and one origin cannot show a commercial benefit, and the cost proxy simulates no inventory policy.

    Read the full method

    The fans do not promise coverage at a stated probability. Residuals can understate uncertainty when the model is wrong, and the square-root widening rule is a teaching convention. A clean synthetic seasonal signal can make a seasonal method look unusually good. Structural breaks, holidays, product substitution, promotion timing and stockout-censored orders are absent. One seed and one origin cannot establish an expected commercial benefit.

    The cost proxy penalises forecast mismatch with one unit cost for excess and shortage. It does not simulate an inventory policy, safety stock, lost-sales recovery or purchasing, and it estimates no revenue, cash release, payback or investment return. Replace the symmetry with measured carrying, markdown and shortage costs in a real inventory study.

    MAPE can be unstable near zero and cannot be used where actual demand is zero; the synthetic floor prevents that division here. A manager can use the page to frame a data-collection pilot, an engineer can inspect the equations, and an investor can see which operating evidence is still missing.

06 / The model stays visible

Every equation, wired to the bench.

A seeded synthetic weekly series, a fixed unseen test window and training histories from 4 to 104 weeks. Compare last-week naive, a four-week moving average and additive Holt-Winters. MAPE measures held-out error. A separate XAF mismatch-cost proxy uses your illustrative unit assumption. Select an equation to light its lane and read the bench’s current value.

Live decomposition / your current inputsIllustrative units
DEMAND yB 1,000, n 8%LEVELα 0.15TRENDβ 0SEASONγ* 0.25FORECAST AND GAP7.2% MAPE6585104117
DEMAND yB 1,000, n 8%LEVELα 0.15TRENDβ 0SEASONγ* 0.25FORECAST AND GAP7.2% MAPE6585104117
Levelα 0.15

How fast the level follows the newest deseasonalised week. After 39 admitted weeks the level stands at 1,192 units. Fitted on training weeks only.

Exact horizon identity, unrounded1093 units

Excess plus shortage over the unseen horizon equals MAE times horizon length (13 weeks). Method source: Hyndman and Athanasopoulos, Forecasting: Principles and Practice; GFT programme-annex R27 for context only ↗.

A planning aid. Not investment, legal or tax advice. Verify inputs and boundaries before an operational decision.

Read the parameterisation and floor notes

t starts at zero; u is seeded uniform noise; m is the illustrative 13-week cycle. The cost identity reconciles on unrounded values, so display rounding can cause a small visible difference. The one-unit floor makes MAPE defined; it is not evidence that real demand cannot be zero.

The gamma-star parameterisation follows the alternative form documented in OTexts. Forecast fans use training residual RMSE multiplied by the square root of the forecast step. The spread is a visual stress range, not a statistical confidence claim.

07 / Assumptions register, bound to your sliders

Every default declares its status.

Illustrative assumptions, not GFT programme defaults. Rows that differ from the default light up as you move the controls above, and their gauge dot leaves its tick.

Holt-Winters, 7.2% MAPE, 0 of 8 inputs changed. Point at a row to read its default and its live value.

Illustrative assumptions with their live values. The gauge shows where each input sits in its allowed range; the tick is the default.
InputDefaultLive now, and place in rangeStatus and basis
Sales history39 weeks39 weeksAt default Illustrative: three complete seasonal cycles. Set it above ↑
Unseen forecast horizon13 weeks13 weeksAt default Illustrative: one seasonal cycle withheld. Set it above ↑
Starting weekly demand1000 units/week1000 units/weekAt default Illustrative: round teaching scale. Set it above ↑
Seasonal amplitude25 % of base25 % of baseAt default Illustrative: visible repeatable wave. Set it above ↑
Noise standard deviation8 % of base8 % of baseAt default Illustrative: moderate random variation. Set it above ↑
Weekly linear growth0.2 % of base/week0.2 % of base/weekAt default Illustrative: gentle additive growth. Set it above ↑
Synthetic series seed7 integer7 integerAt default Illustrative: reproducibility identifier. Set it above ↑
Cost per mismatch unit500 XAF/unit500 XAF/unitAt default Illustrative: symmetric mismatch penalty for a cost sensitivity. Set it above ↑
Seasonal cycle13 weeks13 weeks, fixedFixed Illustrative short cycle for learning, not annual retail seasonality.
External cost-reduction annotation35 to 40 percentNot an inputContext only Shared evidence R27. No arithmetic input.

09 / Carry the result out of the laboratory

Earn the forecast before sizing the stock.

Use the laboratory to understand a data requirement. A repeated seasonal pattern is easier to learn than a new product launch, a supply interruption or a sudden change in customers. Real inventory decisions need real demand and lead-time evidence.

0%20%40%4265278104MAPE, HOLT-WINTERSWEEKS OF HISTORY
0%20%40%4265278104MAPE, HOLT-WINTERSWEEKS OF HISTORY
  • Holt-Winters
  • 39 weeks of history
  • 13 unseen weeks
  • noise 8% of base
  • seed 7
  • MAPE 7.2%
Illustrative, not data

Downloads a CSV with your laboratory settings as commented lines and 52 blank weeks for orders, fulfilled demand, stockouts, promotions, returns and product changes. Nothing is uploaded.

Read the measurement approach ↗

Find a thread.

Type to search.