OTIF and SLA for logistics providers: how to prove service level with data
The formula, the pitfalls of delivery windows and partial deliveries, and what to write into the contract so the metric holds up for both sides.

A logistics provider sells service level. And in the contract, service level usually becomes a number: OTIF, on time and in full. When that number comes from a spreadsheet filled in by the provider itself, the customer is suspicious; when it comes from a system nobody understands, the provider is suspicious. This article shows how to make the metric hold up for both sides.
The formula
OTIF = orders delivered on time and in full ÷ total orders × 100
An order only counts if it meets both conditions. On time but missing an item: it does not count. Complete but late: it does not count. The metric is strict on purpose.
Where OTIF misleads
"On time" by whose clock? The deadline can be a day, a window of hours or a booked appointment. Delivering at 4 p.m. on a day with a window that closes at 2 p.m. is late; under a contract that only measures the day, it is on time. The rule has to be written down.
Which time counts? The time the truck arrived, the time unloading started or the time the proof of delivery was signed? If the customer holds the truck at the dock for two hours, the signature is late through the customer’s fault. Arrival time is the fairest way to measure the carrier.
Partial delivery. An order of 100 cases with 98 delivered: complete or not? Some contracts measure by order line, by item or by value. Each choice gives a different number.
Redelivery and refusal. A refusal because of damage counts against the provider; a refusal because the customer had no space does not. Without a recorded reason, everything becomes a delay.
What to write into the contract
- The window for each customer or type of delivery.
- The reference event for "on time": arrival at the address, recorded independently.
- The completeness rule: by order, by line or by value.
- Exclusions: delays caused by the customer, force majeure, refusals that are not the provider’s fault.
- The data source for each part of the calculation.
- Target, tolerance band and consequence: bonus, penalty or action plan.
The data source determines the trust
For "on time", the source both parties accept most readily is a record that neither of them can edit: the time of arrival at the customer’s geofence, logged by the vehicle tracker. For "in full", the confirmation from the delivery system or the customer’s WMS.
With those two sources, the calculation is automatic, the monthly report is ready on the first business day, and the SLA meeting stops arguing about the number and starts discussing what to do about it.
Beyond OTIF
- Waiting time at the customer, to show the delays that are not the provider’s.
- Lead time from order to delivery.
- Damage per thousand deliveries.
- Temperature within range, for refrigerated cargo.
Where IoTData comes in
A tracker with a geofence at each customer, own and subcontracted fleets on the same map, and the metric calculated from the recorded time, with your contract’s rule configured during implementation.
Sources: standard definition of the OTIF (on time, in full) metric in logistics service contracts.