Service-level agreements are won or lost in the gap between the plan and the day. Compliance is not a reporting problem you review at month-end. It is an execution problem you manage live, before a promise is missed.
SLA compliance is a live problem, not a report
Most teams find out they breached an SLA after it happened, when the data lands in a report. By then the cost is fixed: the penalty, the credit, the lost renewal, the eroded trust. Real compliance means seeing the risk while the job is still recoverable and acting on it, prioritising the at-risk stop, reassigning capacity, or resequencing the route before the deadline passes.
The deeper issue is a mismatch of cadences. The contract is measured monthly or quarterly, but the outcomes it measures are decided in minutes: the van that left the depot 20 minutes late, the failed attempt at 11:40, the urgent insert that pushed a committed stop past its window. A monthly review cannot influence any of those moments. Only a system that watches the day as it runs, and can change the day while it runs, sits at the same cadence as the risk.
The SLA maths: why 95% can still lose the account
Ninety-five per cent sounds strong until you translate it into events. Take an illustrative operation running 400 committed deliveries a day for contracted customers. At 95% on-time, that is 20 missed commitments every single day, roughly 440 a month across 22 working days. Each one is a phone call, a credit, or a mark against the relationship. The headline number is green; the experience underneath it is 440 individual failures.
The maths gets worse from the customer's side of the table. A key account receiving one delivery a week experiences your reliability cumulatively. At 95% per-delivery reliability, the chance that account sees at least one failure inside a 13-week quarter is 1 − 0.95¹³, which is just under 50%. In other words, at 95% compliance, roughly half of your weekly-cadence accounts will personally experience a breach every quarter, while your dashboard reports a pass.
Then there is the contract structure itself. Many agreements carry tiered service credits, escalation triggers, and termination rights that activate after consecutive months below a floor. So the exposure compounds three ways: the average hides bad days, the misses cluster on the same accounts and postcodes rather than spreading evenly, and the remedies stack as breaches repeat. This is why "we averaged 95% this month" and "we are about to lose this account" can both be true on the same day.
Visibility over deadlines and service risk
An execution layer gives teams live visibility over job deadlines, route progress, driver availability, and service risk in one place. Instead of every dispatcher tracking commitments in their head or a spreadsheet, the system flags which promises are drifting and how much slack is left, so the most urgent work is protected first.
The shared view matters as much as the data in it. When each dispatcher guards only their own routes, an at-risk stop on one route and spare capacity on another never meet. A single live picture, the job a control tower does, lets the operation trade capacity across the whole network to protect the commitments that carry contractual weight. Seeing the risk is the entry ticket; the pages on why visibility alone is not enough cover what has to happen next.
Manage by leading indicators, not lagging ones
Most SLA metrics are lagging: they describe what has already happened and cannot be changed. On-time percentage, breach counts, credit spend, and dispute rates all belong in the monthly review, but none of them helps at 10:30 on a Tuesday. The metrics that protect an SLA are the leading ones, the quantities that are still moving:
| Lagging (what happened) | Leading (what is about to happen) |
|---|---|
| On-time percentage | Minutes of slack remaining on each committed stop |
| Breach count this month | Predicted breaches at the current pace of the day |
| Service-credit spend | First-departure delay out of the depot |
| Dispute rate | ETA drift against plan since the route began |
| Failed-attempt rate | Age of the unresolved exception queue |
The discipline is simple to state: run the morning on the right-hand column and the left-hand column takes care of itself. A depot that leaves on time, keeps exception queues young, and closes ETA drift early rarely needs to explain a bad month. This is also where dynamic Route Optimization earns its keep during the day rather than before it: recalculating against live conditions is what converts a drifting leading indicator back into slack.
The intervention playbook
What you can do about an at-risk commitment depends almost entirely on how early you see it. The same breach costs very different amounts at different distances from the deadline.
Two hours out. Nearly every option is still open and cheap. Resequence the route so the committed stop moves forward. Move the stop to another driver already heading that way. Release reserve capacity if the day is running hot. Raise the stop's priority so no later insert can push past it. At this distance, protecting the SLA usually costs a few minutes of replanning, not money.
Thirty minutes out. The options narrow to direct protection. Hold the driver to the committed stop even if it costs time on non-committed work; the contracted promise outranks the uncontracted one. Send the customer a firm, updated ETA while the window can still be met. If the breach has become unavoidable, this is the moment to start managing it, not the moment the parcel is late.
After the breach. The goal changes from prevention to containing the compound cost. Notify the customer before they notice, with a concrete recovery plan rather than an apology. Book the reattempt immediately. Capture full time-stamped and geostamped evidence of what happened. Tag the root cause so the pattern gets fixed instead of repeated. A breach handled this way costs a service credit; a breach the customer discovers on their own costs the renewal conversation.
Proof and recovery protect the promise
Compliance is not only about arriving on time. It is also about proving the outcome and recovering cleanly when something slips. Strong proof of delivery, structured exception handling, and event-driven customer communication all keep the service promise intact even on a difficult day, and they reduce the disputes that turn a near-miss into a breach.
Proof also underwrites the SLA numbers themselves. When every delivery carries time-stamped, location-stamped evidence, the monthly compliance figure is a fact rather than a negotiation. Operations without that evidence end up settling disputed jobs by splitting the difference, which quietly converts on-time deliveries into recorded misses and pushes a compliant month below the contractual floor. The commercial upside compounds too: the same execution disciplines that protect SLAs are the ones that reduce delivery costs by 30-40%, because a protected promise and an efficient day come from the same source, better decisions made earlier.
Frequently Asked Questions
How can delivery software help manage SLAs?
It gives visibility over deadlines, route progress, driver availability, and service risk, so teams can prioritise urgent work before a commitment is missed, rather than discovering breaches after the fact.
Why do SLAs get breached even when the morning plan looked fine?
Because the day drifts, traffic, dwell time, failed attempts, and urgent inserts erode the plan. Without live intervention, small slips compound into missed promises by the afternoon.
What is the fastest way to improve SLA compliance?
Move from monitoring to intervention: surface at-risk jobs live, act on them early (reassign, resequence, communicate), and capture strong proof so recoveries and disputes are handled cleanly.
Is 95% on-time delivery good enough?
Not necessarily, because averages hide account-level exposure. At 95% per-delivery reliability, a customer receiving one delivery a week has just under a 50% chance of experiencing at least one failure inside a quarter, and misses tend to cluster on the same accounts rather than spread evenly. Whether 95% is safe depends on how the contract measures compliance, how tightly your misses concentrate, and what remedies stack when breaches repeat.
What is the difference between leading and lagging SLA indicators?
Lagging indicators describe what already happened: on-time percentage, breach counts, credit spend. Leading indicators describe what is about to happen and can still be changed: remaining slack per committed stop, first-departure delay, ETA drift, and the age of the exception queue. Teams that manage the live day by leading indicators rarely have to explain the lagging ones.
Should customers be told before an SLA is missed?
Yes, and ideally with a concrete revised ETA rather than a bare apology. Proactive notice converts a breach into a managed exception: it reduces inbound calls, cuts disputes, and preserves trust in a way that after-the-fact explanations never do. The operations that keep key accounts are usually the ones whose customers hear about a problem from the operator first.