Average supplier on-time delivery: benchmark, formula and calculator
Supplier on-time delivery is the share of your purchased parts that arrive by the date your supplier agreed. The median supplier delivers 90% of orders on time. When a purchased component misses its date, you expedite, reshuffle the schedule or draw down safety stock, and the parts that run weeks late cost you most.
What is supplier on-time delivery?
Supplier on-time delivery is the share of your PO lines that arrive on or before an agreed date. You count the lines received on time and divide by all the lines received.
The rate looks simple, but four choices change it: which date you measure against, how many days late still count, whether early receipts count, and what you do with lines that haven't arrived. Write those choices down next to the number, or two people will report two different rates for the same supplier.
The median supplier delivers 90% of orders on time
Across 4,648 organizations in all industries, the median supplier on-time delivery rate is 90.0% (Source: APQC Open Standards Benchmarking, measure 102645, read 17 October 2026). Half report that 90% or more of their supplier orders arrive by the agreed date, and half report less.
The figure has two gaps. Each organization reports its own rate, so no one counted it from purchase orders. And it mixes every industry, so it can't tell you what to expect from the supplier of a casting or a carton to a small manufacturer. The Cartograph index will measure rates from PO lines, by material and supplier region, with the sample size and period beside each one. To see where your own suppliers sit against the 90% median, paste your PO lines into the calculator.
You will often hear that 95% on time is good and 98% is world class. No sample stands behind those figures, so treat them as targets. The measured median is 90%, which means half of organizations report less. A supplier at 93% on a long lead time component may already be one of your better ones, and the parts that stop your line deserve a higher target than packaging does.
Measure against your request and the supplier's promise
Every PO line carries two dates worth measuring, and the purchase order tracking lesson covers how to record them. The requested date is when you need the part. The promised date is the first date the supplier confirmed. Measure against both, because they answer different questions: whether the supplier keeps its word, and whether you get parts when you need them.
- The date. Count against the first promised date. A re-promised date makes a supplier who moved the date twice look on time. The lesson on promise dates and need dates explains the difference.
- The tolerance. The tolerance is the number of days late you still count as on time. It covers the day between the truck arriving and the receipt being booked, and a weekend in between. Zero is strict, one or two days suits most receiving docks, and anything wider stops the rate from meaning much. Use the same tolerance for every supplier and write it next to the number.
- Early receipts. Count them as on time unless arriving early costs you storage, cash or dock space.
- Open lines. Leave lines that haven't arrived out of the rate, and track them as past due purchase orders once their date has passed.
Measure per supplier and per material
A single rate across all your suppliers can hide the part that stops your line. Suppliers at 95% on packaging and 70% on one machined component average to a healthy number while that component holds up production. Start with the parts that have long lead times and no second source. Count lines first, and weight by quantity or value only when split shipments or a few expensive parts make a plain count misleading. The supplier scorecard works out each supplier's rate from a PO export.
Calculate your on-time rate
Paste PO lines from a spreadsheet with the requested, promised and received dates. The calculator works out both rates, the days-late spread and the lateness that 9 in 10 lines stayed within, and shows your rates next to the 90% median. It opens on an illustrative example, and your data stays in your browser.
Supplier on-time delivery calculator
It runs in your browser, and your data stays on this page.
Paste from a spreadsheet: PO line, requested date, promised date, received date. With a header row, you can paste a wider PO export as it is, and the calculator finds the requested (or need), promised (or confirmed) and received columns by name. Leave the received date empty for open lines. Dates can be 2026-03-14, 3/14/2026 or 14.3.2026.
Illustrative exampleOn time to your requested date
47.4%9 of 19 received lines arrived on or before the date
On time to the supplier's promised date
73.7%14 of 19 received lines arrived on or before the date
19 of 20 lines are received and counted. 1 open line is left out until it arrives. Suppliers promised a median of 4 days after the date you requested, across 20 lines.
Your rates next to the cross-industry median
Days late against the promised date
- Lines late
- 5 of 19
- Median days late, late lines only
- 7 days
- 90% of lines arrived within
- 7.6 days
The bars use the raw dates with no tolerance. The 90% figure is the 90th percentile of days late across every received line, with early and on-time lines counted as 0, calculated like Excel's PERCENTILE.INC. Use it as the lateness to plan around in your safety time.
Show every line
| PO line | Requested | Promised | Received | vs requested | vs promised |
|---|---|---|---|---|---|
| 4410-1 4140 bar | 2026-03-02 | 2026-03-09 | 2026-03-09 | +7 miss | 0 on time |
| 4410-2 6061 bar | 2026-03-02 | 2026-03-09 | 2026-03-13 | +11 miss | +4 miss |
| 4412-1 Bearing | 2026-03-04 | 2026-03-04 | 2026-03-03 | -1 on time | -1 on time |
| 4415-1 Cartons | 2026-03-05 | 2026-03-05 | 2026-03-05 | 0 on time | 0 on time |
| 4415-2 Foam | 2026-03-05 | 2026-03-05 | 2026-03-05 | 0 on time | 0 on time |
| 4418-1 PCB assy | 2026-03-09 | 2026-03-23 | 2026-04-02 | +24 miss | +10 miss |
| 4420-1 M8 bolts | 2026-03-10 | 2026-03-10 | 2026-03-10 | 0 on time | 0 on time |
| 4421-1 Resin | 2026-03-11 | 2026-03-18 | 2026-03-17 | +6 miss | -1 on time |
| 4423-1 Motor | 2026-03-12 | 2026-03-26 | 2026-03-31 | +19 miss | +5 miss |
| 4424-1 Labels | 2026-03-13 | 2026-03-13 | 2026-03-12 | -1 on time | -1 on time |
| 4426-1 Steel | 2026-03-16 | 2026-03-20 | 2026-03-20 | +4 miss | 0 on time |
| 4426-2 Steel | 2026-03-16 | 2026-03-20 | 2026-03-27 | +11 miss | +7 miss |
| 4429-1 Casting | 2026-03-18 | 2026-04-01 | 2026-04-21 | +34 miss | +20 miss |
| 4430-1 Pallets | 2026-03-19 | 2026-03-19 | 2026-03-19 | 0 on time | 0 on time |
| 4431-1 O-rings | 2026-03-20 | 2026-03-20 | 2026-03-20 | 0 on time | 0 on time |
| 4433-1 Terminal | 2026-03-23 | 2026-03-30 | 2026-03-30 | +7 miss | 0 on time |
| 4435-1 Film | 2026-03-24 | 2026-03-24 | 2026-03-23 | -1 on time | -1 on time |
| 4436-1 Shaft | 2026-03-25 | 2026-04-03 | 2026-04-03 | +9 miss | 0 on time |
| 4438-1 Wire | 2026-03-26 | 2026-03-26 | 2026-03-26 | 0 on time | 0 on time |
| 4440-1 Sensor | 2026-03-30 | 2026-04-13 | open | open |
Worked example
Illustrative example. Twenty PO lines for bar stock, castings, resin, terminals, cartons and labels, with one line still open. With no tolerance and early receipts counted as on time:
- 14 of the 19 received lines arrived on or before the promised date: 14 ÷ 19 = 73.7%.
- 9 of the 19 arrived on or before the requested date: 9 ÷ 19 = 47.4%.
- The 5 late lines were 4, 5, 7, 10 and 20 days past the promised date, so the median is 7 days.
- Across all 19 lines, with on-time lines at 0, the 90th percentile is 7.6 days, the lateness to plan around.
- Suppliers promised a median of 4 days after the requested date, which explains most of the gap between the two rates.
Open "Show every line" under the results to check each line.
How late the late lines are decides your buffer
Two suppliers at 80% on time can differ by weeks. One misses by a day or two, and the other misses by three weeks. Your safety stock depends on that spread, and the on-time rate can't show it. With a cycle service level target, the chance of no stockout in a replenishment cycle, the combined safety stock formula is:
Hover over a symbol to see what it stands for. Z is 1.645 for a 95% cycle service level.
Measure lead-time variation from your receipts
For each PO line, take the received date minus the order date, and work out the variation per supplier and part. The days-late spread in the calculator shows how much of that variation your suppliers add after they promise a date.
Reliable suppliers earn a smaller buffer
When is small, the second term shrinks, and safety stock falls at the same service target with no extra setting. Treat a supplier as unreliable when is more than about a quarter of .
Enter your figures in the safety stock calculator to see how much of your buffer the lead-time spread takes, then set the reorder point from it.
Why suppliers deliver late, and how to raise the rate
Your own lines tell you where lateness starts. A large gap between the requested and promised dates means you order inside the supplier's real lead time. Lines that miss the promised date mean the supplier can't keep its word, through capacity, its own material shortages or freight.
- Get a confirmed date on every line. A PO with no promised date can't be late on paper, so it hides the problem until the dock is empty.
- Check the date before it comes due. Ask a few days ahead whether the date still holds, while you still have time to expedite or reschedule. The open PO tracker ranks the lines to follow up.
- Correct the planned lead time. If a supplier delivers a week later than your ERP assumes, put that week into the planned lead time. The supplier lead time lesson shows how.
- Share the numbers with the supplier. Send each supplier its rate to promise and its days-late spread every month, line by line, so the conversation starts from the same facts.
- Buffer the parts that stay late. For a part whose supplier stays unreliable, hold safety stock or safety time sized from the spread, and look for a second source.
What the Cartograph index will measure
Scout Agent asks your suppliers to confirm a date on each purchase order and asks again before the date comes due. Together with the receipt date in your ERP, that gives three dates on every PO line: the date you requested, the date the supplier promised and the date the goods arrived. The index will report on those dates across manufacturers who opt in.
Cartograph Supplier Delivery Index
Cartograph data: to be published after review- PO lines
- Pending
- Suppliers
- Pending
- Manufacturers
- Pending
- Period
- Pending
On time to request
On time to promise
Median days late
90th percentile days late
Re-promise rate
How late deliveries were, against the promised date
This chart is a placeholder with blank bars and no data. The published chart will show the share of PO lines in each band: early, on the date, 1 to 3 days late, 4 to 7 days late, 8 to 14 days late, 15 or more days late.
By material category
| Category | On time to request | On time to promise | Median days late | P90 days late | Re-promise rate | PO lines |
|---|---|---|---|---|---|---|
| Raw material | ||||||
| Component | ||||||
| Packaging |
By supplier region
| Supplier region | On time to request | On time to promise | Median days late | P90 days late | Re-promise rate | PO lines |
|---|---|---|---|---|---|---|
| Same country as the buyer | ||||||
| Rest of North America | ||||||
| Europe | ||||||
| Asia | ||||||
| Other |
A cell stays empty until it meets the minimum cohort size described under How the index will be built.
- On time to request: the share of PO lines received on or before the date the buyer asked for.
- On time to promise: the share received on or before the first date the supplier confirmed.
- Median and 90th percentile days late: how late the late lines were, and the lateness that 9 in 10 lines stayed within.
- Re-promise rate: the share of lines where the supplier moved the date after confirming it, and by how many days.
- Cuts: raw material, component and packaging, and supplier region, each with its number of PO lines and the period it covers.
How the index will be built
We plan to publish the index under these rules and will fix them when we review the first edition.
- Source. PO lines where Scout Agent asked the supplier for a date, from manufacturers who use Cartograph. The requested date comes from the PO, the promised date is the first date the supplier confirmed, and the received date comes from the receipt in the manufacturer's ERP.
- Opt-in. We count only manufacturers who agree to contribute.
- Anonymized. We name no supplier, customer or part, and publish only aggregates.
- Minimum cohort. We publish a cell only when it holds enough manufacturers and PO lines that nobody can read one company's data from it. Smaller cells stay empty.
- Exclusions. We leave cancelled lines, lines with no receipt and lines with no promised date out of any rate we can't measure them against.
- Sample size and period. Every figure shows its number of PO lines, suppliers, manufacturers and the months it covers.
The sample will come from small and mid-size manufacturers that use Cartograph, so the index describes those companies. It doesn't describe the whole market.
Your own rate stays current only when someone records the promised and received date for each PO line. Cartograph follows up on open POs: Scout Agent emails and calls suppliers to confirm dates and expedite late lines, and Cartograph records the promised and actual dates on each line. See how Cartograph holds suppliers to their dates, or get Cartograph free to see it on your own POs.
Supplier on-time delivery questions
What is the average supplier on-time delivery rate?
The median supplier on-time delivery rate is 90.0%, across 4,648 organizations in all industries. Each organization reports its own rate, so nobody measured the figure from purchase orders, and it has no split for small and mid-size manufacturers.
What is a good on-time delivery rate for suppliers?
95% is a common target and 98% is often called world class, but the measured median is 90%, so half of organizations report less. Set your target from your own rate to the promised date and from the parts that stop your line. A supplier at 85% on packaging may matter less than one at 92% on a long lead time component.
Should I measure against my requested date or the supplier's promised date?
Measure both. The rate to the promised date tells you whether the supplier keeps its word. The rate to the requested date tells you whether you get parts when you need them. A wide gap between the two means suppliers promise later than you ask, and that points to lead time. Count against the first date the supplier confirmed.
How do I calculate supplier on-time delivery in Excel or Google Sheets?
Put the requested date in column B, the promised date in C and the received date in D, from row 2. The rate to promise is =SUMPRODUCT((D2:D101<>"")*(D2:D101<=C2:C101))/COUNT(D2:D101). Use column B in place of C for the rate to request, and add a tolerance with C2:C101+1. For days late, put =IF(D2="","",MAX(0,D2-C2)) in E2, fill it down, and take =PERCENTILE.INC(E2:E101,0.9) for the 90th percentile.
Should I weight on-time delivery by quantity or value?
Count lines first, because each late line is a separate problem to follow up. Weight by quantity when partial and split shipments are common, and by value when a few expensive parts drive your exposure. Whichever you pick, keep it the same from month to month, or the trend means nothing.
What causes late supplier deliveries?
The common causes are dates the supplier promised without checking capacity, orders placed inside the real lead time, a planned lead time in your ERP that is shorter than what the supplier delivers, material shortages at the supplier, and freight delays. Your own data shows which one applies: a large promise gap points to lead time, and late lines against the promise point to the supplier.
What tolerance should I use for supplier on-time delivery?
Use zero days when your receipts are booked the day goods arrive, and one or two days when receiving runs behind or a weekend falls between arrival and booking. Wider windows hide real lateness. Pick one tolerance for every supplier, keep it from month to month, and state it next to the rate. The calculator lets you try 0 to 3 days.
What is the difference between supplier OTD and OTIF?
On-time delivery (OTD) asks whether a line arrived by the date. On time in full (OTIF) also asks whether the full quantity arrived. A line that arrives on the day with 80% of the quantity counts as on time but not in full.
How do I count partial deliveries?
Pick one rule and keep it. The strict rule counts a line as on time only when the last quantity arrives by the date. The calculator uses one received date per line, so enter the date the line was complete, or enter each receipt as its own line if you want to count shipments.
Is an early delivery on time?
Most buyers count it as on time, and the calculator does by default. If early receipts cost you storage, cash or dock space, turn off “Early receipts count as on time” and a receipt before the date counts as a miss.
Why does my supplier report 98% when my records say 85%?
Many suppliers measure ship date against their own latest promise and count partial shipments as hits. You measure receipt date against the date you needed, or the date they first confirmed. Agree the date basis, tolerance and partial rule before you compare numbers.
How should supplier on-time delivery change my safety stock?
The spread of lateness sizes safety stock, because it feeds the lead-time variation in the safety stock formula. Take the 90th percentile of days late from the calculator as the lateness to plan around, and enter your lead-time variation in the safety stock calculator.