Notes

OTIF vs on-time delivery: which promise did we measure?

Ten orders show why 80% on-time delivery can mean 60% OTIF, and how revised promise dates can improve the report while every delivery stays the same.

Eight of ten orders arrived on time. Eight arrived in full. How many did both?

You can't tell from those two totals. You need to check the same order identities against both conditions.

On-time delivery measures whether deliveries meet the agreed timing rule. OTIF means on time, in full: the delivery must also meet the quantity requirement. For the order-based score in this article, an order passes only when its full accepted quantity arrives within its delivery window.

ASCM's dictionary defines the concepts. The practical rules still need agreement: which date, which receipt event, which quantity and which orders belong in the report.

Ten orders, one declared rule

A fictional supplier has ten customer orders due today. Each requests 100 units of the correct product. Their original receiving window is 08:00 to 13:00, and the review takes place at 17:00.

Each order has one receipt. We know its time and the quantity accepted by the customer. There are no substitutions, rejected units or cancellations.

Six orders arrive at 12:50 with all 100 units. Two arrive at 12:50 with only 80 units, and their remaining units are still missing at review. Two arrive at 14:00 with all 100 units.

Outcome against the original window Orders On time? In full by review? OTIF?
100 units at 12:50 6 Yes Yes Yes
80 units at 12:50 2 Yes No No
100 units at 14:00 2 No Yes No

Here, the on-time measure checks when the recorded receipt occurred, independently of quantity. “In full by review” checks whether all 100 units have been accepted by 17:00. The OTIF rule is stricter: all 100 must arrive within the window.

Order-based calculation

On-time delivery = 8 on-time orders ÷ 10 due orders × 100 = 80%

In full by review = 8 full orders ÷ 10 due orders × 100 = 80%

OTIF = 6 orders meeting both conditions ÷ 10 due orders × 100 = 60%

The two short orders help the timing score. The two late orders help the quantity score. Neither group passes OTIF.

Change the date basis, keep the deliveries

Before 13:00, suppose the customer agrees to extend the two late orders' windows to 14:00. The revision is recorded at 12:00. Nothing about the actual receipts changes.

Explore both date bases below. The original promises remain visible so the revised plan doesn't replace the delivery history.

Same ten orders

Which delivery window are we scoring?

The two receipts at 14:00 have a customer-agreed revised deadline. All quantities and receipt times stay fixed.

On-time delivery80%8 of 10 orders

In full by 17:0080%8 of 10 orders

Order-based OTIF60%6 of 10 orders

Original-promise OTIF stays at 60%. Received quantity stays at 960 of 1,000 units. Each order has one receipt.

Original windows

On time and in full: 6 orders

Order IDs: 101, 102, 103, 104, 105, 106. Every order here meets both conditions.

Scroll the ledger sideways to compare all dates and quantities.

Order ledger. Window start 08:00 for every order; review 17:00. “Full” means accepted quantity by review.
OrderOriginal endAssessed endReceiptAccepted / dueOn timeFullOTIF
10113:0013:0012:50100 / 100YesYesPass
10213:0013:0012:50100 / 100YesYesPass
10313:0013:0012:50100 / 100YesYesPass
10413:0013:0012:50100 / 100YesYesPass
10513:0013:0012:50100 / 100YesYesPass
10613:0013:0012:50100 / 100YesYesPass
10713:0013:0012:5080 / 100YesNoFail
10813:0013:0012:5080 / 100YesNoFail
10913:0013:0014:00100 / 100NoYesFail
11013:0013:0014:00100 / 100NoYesFail
Revision record and counting rule

Orders 109 and 110: original window 08:00–13:00; revised window 08:00–14:00; customer agreement recorded at 12:00. This is an assumed agreed change, not an observed customer record. Orders 101–108 have no revision.

Each due order counts once. On time means its single receipt is inside the assessed window. In full means all 100 correct units are accepted by the 17:00 review. OTIF requires both. Multiple receipts need consolidation against the order’s full quantity, as explained in the article.

Ten fictional orders, 100 units each, reviewed at 17:00. Each has one accepted receipt. Original windows are 08:00–13:00. For orders 109 and 110 only, a customer-agreed revision recorded at 12:00 extends the window to 14:00. Buttons change the assessed window, not the receipt times or quantities. This example uses a binary order-based OTIF rule.

Against the revised windows, all ten receipts are on time. Eight orders are full, so OTIF becomes 80%. Against the original windows, it remains 60%.

Both views can be useful. The revised one shows whether the supplier met the updated agreement. The original one shows whether it met the earlier promise. A report should say which question it answers.

Keep the original date, revision time, agreed date and reason. A new date entered after a late delivery is a different record from a customer-approved change made beforehand. The data quality note explains why plausible values still need evidence behind them.

Why OTIF formulas can disagree

Our example counts complete orders. Some delivery programmes count lines or cases instead. That changes what partial fulfilment earns.

A 2019 Trading Partner Alliance and McKinsey study found differing definitions in consumer goods and proposed an on-time case-quantity measure. It credits quantities delivered within the window, even when the whole order isn't complete. That is a different rule from the binary order score used here.

With our original windows, 760 units arrive on time: 600 across six complete orders, plus 160 across two partial orders. An on-time quantity measure would therefore be 760 ÷ 1,000 = 76%. Our order-based OTIF is 60%.

By 17:00, 960 units have arrived, giving a received-quantity share of 96%. That figure includes the two late deliveries. It cannot stand in for an on-time score.

The cycle service level and fill rate article explores these different denominators. Its unit fill rate counts demand supplied immediately from stock, which is another event again.

OTIF across dispatch and customer receiptVrolen's guide follows the evidence from shipment to delivery, using a separate ten-order example. A dispatch timestamp alone doesn't establish when the customer received the goods.

Partial deliveries need the whole receipt history

The single-receipt example keeps the arithmetic easy to inspect. Real orders may arrive in several parts.

Suppose a separate order receives 80 units at 12:50 and its remaining 20 at 14:00, against a 13:00 deadline. It was complete by the 17:00 review, but it was not complete on time. Scoring only its first receipt would miss that failure.

Combine receipts against the same order and compare the time its full required quantity was accepted with the window. Agree how your rules treat damaged goods, substitutions, customer holds and missing receipt evidence.

Also decide which orders enter the denominator. A report covering all orders due today should not silently drop an undelivered order because it has no receipt timestamp. Apply the declared rule and keep unresolved evidence visible. If no orders are eligible, the rate is not applicable, rather than 100%.

Use the failure pattern to choose the follow-up

Against the original promises, our supplier has two short deliveries and two late ones. Those groups need investigation. The score alone doesn't tell us whether picking, stock availability, transport or appointment changes caused them.

Take the order ledger into the review. Separate quantity failures from timing failures, then show the original and revised windows beside the receipt evidence. A higher percentage after a legitimate promise change tells the team something about its revised commitments. Improving the original result requires a change in what customers actually receive and when.

Sources and example notes

All orders, quantities, times and revisions are fictional. The order-level rule, population and review cutoff are declared teaching choices. The separate split-receipt example is not included in the interactive ledger.

NextPareto analysis example: count, delay or cost?

Working on something like this?

I work with operations and transformation teams on operational excellence, digital transformation programs, supply chains and industrial AI. If this sounds like your line, your program or your problem, I’d be glad to compare notes.

Abolfazl ShirkavandImage preview unavailable