Sign in

Blog · Forecast and pipeline · Supply chain

Demand planning key performance indicators: a balanced scorecard

Demand planning KPIs connect forecast quality with availability and inventory. Build a planner scorecard from frozen forecasts, customer demand, fulfillment records and stock snapshots, then reconcile the measures before acting.

The short answerDemand planning key performance indicators measure forecast quality, customer availability and inventory outcomes together. A useful scorecard includes weighted absolute percentage error, signed forecast bias, on-time unit fill rate and inventory cover. Calculate them at the same product, location and period, using a frozen forecast, and investigate the underlying rows before assigning responsibility.

Demand planning key performance indicators should measure forecast quality, availability and inventory together. A plan can match total demand while missing individual products badly, and a high service result can depend on carrying too much stock. Use a scorecard that makes those tradeoffs visible at the product and location where decisions happen.

Start with four measures and one decision grain

A useful KPI connects a defined measure to an owner and an action. For a demand planning team, the action is usually to correct an assumption, investigate a repeated miss or agree on an inventory policy with operations.

Use the same product, location, selling unit and period across the scorecard. Also retain the forecast issue date. The forecast approved before an order was placed answers a different question from the latest revised forecast.

Measure Calculation used here What it tells the meeting
Weighted absolute percentage error, or WAPE Sum of absolute forecast errors / Sum of actual demand Size of the misses without cancellation
Signed forecast bias Sum of forecast minus actual / Sum of actual demand Direction of the net miss; positive means overforecast
On-time unit fill rate Units fulfilled by the promised date / Requested units due How much requested demand received timely stock
Inventory cover Average available inventory / Average daily demand Stock carried relative to the demand rate

These are explicit working definitions. A company using order fill rate, first-shipment fill rate or closing inventory cover needs a different label and denominator. Do not combine those definitions in a trend.

For forecast evaluation, use periods that were unknown when the forecast was issued. Hyndman and Athanasopoulos explain why test-set forecast errors differ from fitted residuals: a good fit to history does not establish performance on new demand.

Build the scorecard from four exports

Bring a frozen forecast with product, site, forecast month, forecast issue date and forecast units. Join it to customer demand by requested delivery period, fulfillment by promised date, and daily available-stock snapshots.

Here, actual demand means accepted customer requests due during the month, net of cancellations made before the agreed cutoff. It is not shipments. Unfilled requests still belong in demand; otherwise a stockout makes both forecast error and service look better.

Use order-line identifiers to prevent split shipments from duplicating demand. Aggregate shipments to the order line before joining them to requested quantities. Separate backorders carried from earlier periods so the service numerator and denominator describe the same cohort.

Calculate average inventory from daily snapshots covering the full month. Keep unavailable or quarantined inventory outside available stock, and state whether stock allocated to open orders remains in the measure. The broader KPI examples help distinguish team measures from company outcomes; this scorecard keeps the demand planner's review focused.

A worked monthly scorecard

A US distributor sells four comparable carton products from one site. September has 30 days. The forecast was frozen before September, requested units include unfilled demand, and the inventory column is the average of the month's daily available-stock balances.

Product Forecast units Actual requested units Forecast minus actual Absolute error units On-time fulfilled units Average stock units
A 100 120 -20 20 114 60
B 200 180 20 20 180 90
C 50 40 10 10 36 30
D 150 160 -10 10 152 80
Total 500 500 0 60 482 260

All calculations use unrounded inputs. Display percentages and days to one decimal place.

WAPE = 60 / 500 = 12.0%

Bias = (500 - 500) / 500 = 0.0%

On-time unit fill rate = 482 / 500 = 96.4%

Inventory cover = 260 / (500 / 30) = 15.6 days

The total forecast is exactly right, yet absolute misses total 60 units. Product A is underforecast, product B is overforecast, and those errors cancel. Zero bias therefore gives no assurance that the assortment is planned well.

The service result adds a second perspective. Requested units exceed on-time fulfillment by 500 - 482 = 18 units. Some of that gap may come from forecast misses, but supplier delays, allocation decisions or fulfillment execution may also explain it. The scorecard starts the investigation; it does not establish the cause.

Prove the totals before interpreting them

The signed-error identity is the first check: the sum of row errors must equal total forecast minus total actual demand. Here, -20 + 20 + 10 - 10 = 0, matching 500 - 500.

Absolute error must be calculated before aggregation. Taking the absolute value of the total error would produce zero and erase every product-level miss. Likewise, compute company fill rate from summed fulfilled and requested units, rather than averaging product percentages.

The stock calculation also needs context. Product C carries 30 / (40 / 30) = 22.5 days of cover, while each other product carries 15.0 days. Its on-time unit fill rate is 36 / 40 = 90.0%. Relatively high average stock alongside weak service suggests checking timing, availability restrictions or where stock sat during the month.

The pooled cover figure is useful here because the products use comparable carton units. Across unrelated units, report cover by product or use a consistently cost-valued inventory measure with a matching cost denominator. Never divide inventory dollars by demand units.

Turn the scorecard into an owned review

The demand planner owns the frozen forecast, assumptions and explanation of repeated error. Customer service validates requested demand and cancellations. Operations owns shipment timing and stock availability, procurement explains supply constraints, and finance agrees how inventory outcomes connect to working capital.

Assign an action only after separating these causes. Product C might need a better forecast, but extra purchases will not fix stock that was unavailable for release. Use the existing SKU and site bias diagnostic to find persistent directional errors without expanding this scorecard into a separate forecasting method.

Keep the decision horizon stable. A forecast made shortly before delivery has information that an earlier purchasing forecast did not have. For a more demanding evaluation, rolling-origin testing repeatedly uses only earlier observations to assess later outcomes, including the relevant multi-period horizon.

Where demand planning KPIs go wrong

  • Revised forecasts replace the frozen version. The score then reflects information learned after the decision. Preserve both versions and label their purposes.
  • Shipments stand in for demand. During stockouts, observed sales understate customer requests. Keep recorded unmet demand visible and label any estimated demand separately.
  • Percentages are averaged. Sum the components first. Small products should not receive the same implicit weight as large products unless that is the stated scoring policy.
  • Inventory and service use different scopes. A stock balance for every site cannot explain service for one site without an allocation or transfer view.
  • A target becomes the explanation. A missed threshold identifies an exception. It does not prove the planner caused it or establish which change will help.

Check your planner scorecard in Covirage

Bring your frozen forecast, customer demand, fulfillment export and inventory snapshots. Covirage maps the columns; its tools compute and check the figures, while the external AI model explains the results with every figure traced to its rows. Create a free Covirage account, which takes about a minute, then set up your business and bring a sample of your own data.

See Covirage for supply chain teams for the supporting business context.

Questions people ask

Which demand planning KPIs should a team start with?

Start with absolute forecast error, signed bias, on-time unit fill rate and inventory cover. Together they show whether the plan was close, which direction it missed, whether customers received stock and how much inventory supported the service result.

Is zero forecast bias a good result?

Zero bias means signed misses cancel at the level being measured. Large shortages on some products can offset large overforecasts on others. Read bias beside absolute error and inspect product-location results before calling the plan balanced.

Should planners be measured on inventory and service?

Include inventory and service in the shared scorecard because they show business outcomes. Separate accountability for forecast assumptions, supplier delivery, stock policy and warehouse execution, so a planner is not assigned every consequence of an operational constraint.

How often should demand planning KPIs be reviewed?

Review exceptions at the operating cadence used for replenishment, and close the scorecard when a complete period of actual demand is available. Keep the forecast horizon consistent so successive reviews compare decisions made with similar information.