Blog · Forecast and pipeline · Supply chain
Compare forecast misses separately for launch, growth, maturity and decline. This workflow shows the export columns, spreadsheet formulas and checks that keep changing product stages from hiding inside one accuracy score.
Demand forecasting over the product life cycle means changing the assumptions you review as an item moves through launch, growth, maturity and decline. Compare forecast misses within each stage before changing the whole portfolio plan. A balanced company total can conceal underforecast growth products and overforecast items being phased out.
The OpenStax product life-cycle framework describes introduction, growth, maturity and decline. It associates maturity with slowing sales growth and decline with a significant reduction in sales and profitability. Use that framework as a commercial classification, not a clock that gives every product a fixed lifespan.
For the export, label introduction as launch if that matches your team's vocabulary. Record a stage effective date and the evidence behind it. A product may have different positions in different channels, so classify at the level where the forecast and purchasing decision are made.
Sales or product management owns the commercial stage assessment. Demand planning owns the dated forecast and error calculation. Procurement reviews the resulting supply exposure. Someone should be able to explain a stage change without pointing only to the forecast miss that followed it.
Bring forecast issue date, target period, SKU, site, stage at issue, forecast units, actual demand units and availability flags. Choose a common forecast horizon, such as the buying window used for the decision, and compare forecasts that were equally far from their target period.
Join forecast and actual exports by product, site and target period. Check unmatched rows separately. A missing actual is not automatically zero, and a new product should not disappear simply because it lacks a prior-year match. Preserve stage at issue rather than replacing it with today's stage.
| Stage | Assumption to make explicit | Useful review evidence |
|---|---|---|
| Launch | Customer adoption and initial distribution | Initial orders, availability and repeat orders |
| Growth | How quickly distribution and repeat demand expand | Active locations and comparable-location demand |
| Maturity | Recurring level, seasonality and promotion effects | Comparable periods and promotion records |
| Decline | Withdrawal, substitution and remaining commitments | Replacement dates, open orders and end-of-life stock |
For launch assumptions without usable history, use new product demand forecasting. The recurring baseline workflow belongs in demand forecasting for existing products.
A US industrial-supply distributor compares saved forecasts for four products over the same selling period and at the same forecast horizon. All products were available. Actual units therefore provide a comparable demand measure for this example; the stage labels were recorded before the period began.
The worksheet uses A:G, with data in rows 2:5. Error means forecast minus actual. Percentages are rounded to one decimal place; calculations use unrounded values.
| Product (A) | Stage at issue (B) | Forecast units (C) | Actual units (D) | Error units (E) | Absolute error (F) | Absolute error / actual (G) |
|---|---|---|---|---|---|---|
| Label printer | Launch | 80 | 100 | -20 | 20 | 20.0% |
| Scanner | Growth | 150 | 180 | -30 | 30 | 16.7% |
| Shipping scale | Maturity | 200 | 190 | 10 | 10 | 5.3% |
| Legacy terminal | Decline | 100 | 70 | 30 | 30 | 42.9% |
| Total | 530 | 540 | -10 | 90 | 16.7% |
In E2:G2, filled down:
=C2-D2
=ABS(E2)
=IF(D2=0,"",F2/D2)
Format G as a percentage. If actual demand is zero, retain the unit error and flag the row for review rather than presenting an undefined percentage as zero accuracy loss.
The portfolio signed error is 530 - 540 = -10 units, matching -20 - 30 + 10 + 30. Its bias is -10 / 540 = -1.9%. That near-balanced total does not describe the underlying problems.
Absolute errors sum to 20 + 30 + 10 + 30 = 90 units. Portfolio weighted absolute percentage error is 90 / 540 = 16.7%. Calculate it from the totals, not the average of the four row percentages:
=SUM(E2:E5)/SUM(D2:D5)
=SUM(F2:F5)/SUM(D2:D5)
=SUM(C2:C5)-SUM(D2:D5)-SUM(E2:E5)
The last formula must return zero. In a longer file, Microsoft's SUMIFS function adds rows meeting specified criteria. Calculate growth-stage absolute error divided by growth-stage actual units with:
=IF(SUMIFS(D2:D5,B2:B5,"Growth")=0,"",SUMIFS(F2:F5,B2:B5,"Growth")/SUMIFS(D2:D5,B2:B5,"Growth"))
Add site and forecast horizon as further criteria when the export contains mixed groups. For repeated directional misses, use forecast bias by SKU and site alongside the stage split.
The growth item was underforecast by 30 units. Check whether additional locations opened sooner than expected or comparable locations ordered more. Those explanations imply different next-period assumptions. The observed miss alone does not justify applying the same uplift to every growing product.
The declining item was overforecast by 30 units. Check the replacement schedule and remaining customer commitments before approving another order. A faster withdrawal could support a lower future demand assumption, while a postponed replacement might support a temporary extension.
Choose review windows around these decisions. Launch and growth assumptions need revisiting when adoption or distribution evidence changes. Mature products need comparable seasonal and promotional reviews. Declining products need reviews around last-order dates and commitments. Record the evidence, owner and revised assumption beside the next forecast version.
Covirage is not affiliated with Microsoft.
Upload a sample of your own dated forecasts, demand export and stage register. Covirage maps the columns, its tools compute and check the comparisons, and the external AI model explains the result with every figure traced to its rows. Create a free Covirage account and set up your business before bringing your files.
See forecast analysis in Covirage for the supporting workflow.
A common framework uses introduction, growth, maturity and decline. For a planning file, introduction can be labeled launch. These labels describe commercial conditions; they are not automatic forecasting formulas or a guarantee that every product follows the same sequence.
Use documented commercial evidence such as distribution expansion, repeat ordering, a replacement launch or a planned withdrawal. Record the effective date and owner. Do not relabel historical forecasts after seeing their errors just to make stage results look better.
Review them separately because replacement timing and remaining customer commitments can matter more than a stable historical average. A decline assumption should state what is changing and when, while preserving enough supply to meet commitments that still need fulfillment.