
Abhijit Singh is CEO of Seven Billion Analytics, which builds AI, analytics and optimisation systems for mid-market manufacturers and distributors.
Short answer: OTIF rises when you fix the decisions upstream of the truck: realistic order promises, schedules that hold when a line goes down, load plans that fit the truck, and dispatch that respects carrier cut-offs. Measure it at line level with root-cause codes so you know which fix comes first.
What is OTIF and how do you calculate it?
OTIF, or on-time in-full, is the share of orders (or order lines) that reach the customer inside the agreed window and in the exact quantity ordered.
OTIF = orders (or lines) delivered on time and in full / total orders (or lines) due in the period
You can count at three levels:
Order level. One short line fails the whole order. Strict, and closest to how a customer feels it.
Line level. Each order line passes or fails on its own. Best for finding causes.
Unit or case level. Counts cases delivered against cases ordered. This is how many large retailers score suppliers.
Worked example (illustrative numbers, not client data): you ship 200 orders with 1,000 lines in a month. 920 lines arrive on time and in full. 170 orders have every line on time and in full. Line-level OTIF is 920 / 1,000 = 92%. Order-level OTIF is 170 / 200 = 85%. Always state which one you report.

The on-time window is set by the buyer, not by you. Walmart, for example, measures on time against a "Must Arrive By Date" window, and treats early deliveries as non-compliant as well as late ones, according to SPS Commerce's guide to Walmart OTIF metrics. Read each key customer's supplier manual and measure against their definition, not yours.
OTIF vs OTD vs fill rate
OTD tells you whether you were on time. Fill rate tells you whether you shipped the quantity. OTIF needs both on the same order or line, so it is always the lowest of the three.
Metric | What it asks | What it misses |
|---|---|---|
OTD (on-time delivery) | Did it arrive inside the window? | Short shipments |
Fill rate | What share of ordered units or lines shipped? | Late arrivals |
OTIF | Did it arrive inside the window and complete? | Nothing on time or quantity, but it hides the cause unless you code it |
If your OTD looks healthy and your OTIF does not, the gap is usually in-full. That points to stock, loading or allocation, not transport.
Why OTIF slips: the five usual causes
Most OTIF misses start before the truck leaves. They come from five places, and step one is tagging every miss with a cause code so you know which one dominates.
Over-promising at order entry. Sales confirms a date the plant and the warehouse cannot meet.
Schedules that break on disruption. A machine goes down, a material is late, and the plan does not recover. Orders slip quietly.
Stock in the wrong location. The units exist, but in the wrong depot or warehouse.
Load plans that leave product behind. Manual loading misjudges cube or weight. Pallets stay on the dock. That becomes a short shipment and a re-shipment.
Dispatch missing cut-offs. Trucks leave late, routes ignore delivery windows, or the carrier cut-off is missed.
A cause code is one field on each missed line: promise, schedule, stock location, loading, dispatch, or customer-side.

The real driver is often not logistics. In our real-time order routing case study, delivery dates slipped because planners assigned jobs by relationships and rough capacity estimates. Busy factories ran over capacity while comparable capacity sat idle elsewhere. The fix was in planning, not in transport.
Fix 1: Promise dates from real capacity and stock
Give customers dates you can keep. That means checking available-to-promise (ATP) stock and, for make-to-order items, capable-to-promise (CTP) capacity before the order promise date is confirmed.
Your ERP already holds the data for ATP. CTP adds a question: if the stock is not there, can the line make it in time, given what is already scheduled?
This is where MRP alone falls short and planning tools add value. We compare the options in MPS vs MRP vs APS for mid-size manufacturers.
Fix 2: Schedules that recover when a machine goes down
A schedule protects OTIF only if it can be rebuilt fast when something breaks. Re-plan in minutes, against due dates, and the late orders get caught before they become misses.
Manual schedules are usually built once a week in a spreadsheet. When a line goes down on Tuesday, the planner patches it. Schedule adherence drops, and nobody sees which customer orders are now at risk until dispatch.

An optimisation-based scheduler treats due dates, changeovers and capacity as constraints and re-solves when the inputs change. In our real-time order routing case study, an electronics manufacturing platform routes PCB orders across 100+ factories in real time: utilisation up 21%, delays down 18%, changeovers down 14%.

Fewer delays and fewer changeovers are the two levers that feed on-time delivery. Our production planning accelerator lists a benchmark of 99.2% on-time customer delivery, up from an 84.1% baseline across 4 plants, as shown on that page of sevenbillion.co.
In our work with an Indian ready-to-eat food maker, an AI production planner moved OTIF from 83% to 96%.
For more on how this works day to day, see how mid-size manufacturers schedule production with AI.
Fix 3: Put stock where orders will land
If the stock sits in the wrong depot, no schedule or truck will fix the in-full score. Forecast at SKU and location level and position inventory before orders arrive. That is a topic of its own: see why a forecast can be accurate and the inventory decision still wrong and our demand and supply intelligence accelerator.
Fix 4: Load plans that fit the truck (3D loading)
A load plan decides what actually leaves the dock. A 3D load optimiser fits the order into the truck by cube, weight, axle limits and drop sequence, so product is not left behind and the loader has a diagram to follow.
Manual truck load planning goes wrong in predictable ways:
The loader eyeballs space and runs out, so the last pallets stay behind. That is a short shipment.
Heavy items go in the wrong place and break axle limits. The truck is reloaded or turned back.
Drops are loaded in the wrong order, so the driver unloads half the truck at stop one. The later stops run late.
3D load optimisation treats each of these as a rule. It checks every item's dimensions and weight, stacking limits, axle loads and the drop sequence. It then picks the truck mix and produces a load diagram the loader can follow step by step.

In our work with an Indian FMCG company, a 3D truck-load optimiser plans 100 vans in under 30 seconds at 88% cube utilisation.
In our work with an Indian FMCG food maker, OTIF reached 96% once SKU and depot forecasts were linked to 3D van loading.
See ContainerOS for load planning and the transportation optimization accelerator for how it connects to routing.
Fix 5: Dispatch and routing that hit delivery windows
Dispatch planning should start from the customer's delivery window and the carrier cut-off, then work backwards. Routes that ignore windows are cheap on paper and late in practice.
Good dispatch planning does three things. It sequences loading so trucks are ready before the carrier cut-off. It builds routes around delivery windows and unloading slots, not just distance. And it flags at-risk orders early, so someone can split a load or change a carrier before the miss happens.
Under Walmart's collect model, suppliers are measured on whether cases are ready for pick-up by the appointment time, per SPS Commerce.
Our transportation optimization accelerator covers routing and dispatch. For live tracking of what is in transit, see real-time supply chain visibility.

Where AI helps and where simple rules are enough
Start with rules. Cause codes, a clear definition and a daily OTIF review fix a lot before any model is built. AI and optimisation earn their place where the decision is too large or changes too often for a person to solve well.
Simple rules are enough for:
Defining OTIF and the on-time window per customer.
Cause-coding every missed line.
A 15-minute daily review of yesterday's misses and today's at-risk orders.
Blocking order entry from confirming dates inside a frozen window.
Optimisation and AI help when:
Schedules need to re-plan across many lines or sites within minutes.
Load plans involve many SKUs, truck types, axle limits and drops.
Routes must balance windows, cut-offs and cost every day.
Stock positioning depends on SKU and location demand patterns.
If your misses are mostly promise errors, fix order entry first. If they are mostly loading and dispatch, that is where optimisation pays back fastest.
A 60 to 90 day plan
You can move OTIF in one quarter without a new ERP or TMS. Baseline it honestly, pick the biggest cause, pilot one fix in one plant or region, and measure against the baseline.
Weeks 1 to 2: Baseline. Pull line-level OTIF from the ERP for the last 3 to 6 months. Agree the on-time window per key customer. Start cause-coding every miss.
Weeks 3 to 4: Pick the cause. Rank causes by missed lines and by penalty cost. Choose the top one.
Weeks 5 to 10: Pilot. Apply one fix in one plant, depot or region. Keep everything else the same so the effect is visible.
Weeks 11 to 13: Measure and decide. Compare pilot OTIF with the baseline and with a control site. Roll out, adjust or drop.

The pilot reads from and writes back to the ERP you already run.
Expect the baseline to take longer than the fix if your data lives in several systems. In our unified reporting case study, a food and beverage group had 15+ sources that never agreed. It took metric-definition workshops and one agreed calculation for every metric before every team looked at the same number. Agree your OTIF definition the same way before you measure anything.
FAQ
What is a good OTIF score?
It depends on the customer, because each buyer sets its own target and window. As one public example, 8th and Walton lists Walmart's goals as of March 2024 as 90% on time and 95% in full for prepaid suppliers, and 98% on time and 95% in full for collect suppliers. Your target is the one in your customer's supplier agreement.
How is OTIF different from on-time delivery?
On-time delivery only checks timing. OTIF checks timing and quantity on the same order or line. A complete order that arrives late fails both. An on-time order that is short passes OTD and fails OTIF.
Why do retailers fine suppliers for OTIF?
To keep shelves stocked. Late, early or short deliveries disrupt distribution centre flow and store replenishment. Walmart, for example, fines 3% of the cost of goods on cases that miss the goal, according to 8th and Walton, which describes the purpose as improving supply chains to keep items in stock rather than raising revenue.
Can we improve OTIF without a new ERP or TMS?
Yes. Your ERP already holds the orders, stock and dates. The fixes in this post sit on top of it: cause codes, promise checks, re-planning, load plans and dispatch rules. They read ERP data and write plans back.
How often should OTIF be reviewed?
Review yesterday's misses and today's at-risk orders daily, at line level, with cause codes. Review trends and the cause ranking monthly with operations, planning and customer service in the same room. Many buyers score monthly, so your monthly review should match their calendar.
Start with your biggest cause of misses
Bring us three months of order and delivery data. In a Phase 0 two-week discovery, we will baseline line-level OTIF, find the cause that costs you most, and show which fix moves it first, on the ERP you already run. Book a demo.
Related: supply chain optimisation, manufacturing. The supply chain optimisation page shows a 96.2% OTIF delivery rate benchmark (sevenbillion.co, /solutions/supply-chain-optimisation).
KEEP READING
Explore more perspectives on AI, analytics, and enterprise intelligence.







