Last-Mile Delivery: Three Metrics Worth Watching
Guide · Supply Chain & Logistics · Logistics Systems Team · 2026-09-25T09:00:00.000Z
First-attempt success, cost per delivery and on-time rate tell you most of what you need to know.
Metric 1: First-attempt delivery success
How to calculate: parcels delivered on the first attempt ÷ parcels attempted.
Every failed first attempt means a second trip, another call to the customer and a longer wait. It is usually the metric that moves the others. Improve it with confirmed addresses, delivery slots the customer chose, and a call or message before the rider arrives.
Metric 2: Cost per delivery
How to calculate: total delivery cost ÷ parcels delivered.
Count everything that belongs to delivery: rider or driver pay, fuel, vehicle costs, failed attempts, re-attempts and returns. Leaving out failed attempts is the most common mistake and makes the number look better than it is. Compare by area, because one remote pincode can hide behind a healthy average.
Metric 3: On-time rate
How to calculate: parcels delivered within the promised window ÷ parcels delivered.
Decide what "on time" means before you measure it: a date, a time slot or a number of hours. Measure against what the customer was told, not against what the carrier planned internally.
example Illustrative example. If 80% of parcels are delivered on the first attempt, the other 20% need a second trip. Each of those parcels costs roughly twice as much to deliver and is more likely to be late. Raising first-attempt success from 80% to 85% can lower cost and improve on-time rate in the same step.
How the three work together
- First-attempt success up. Usually brings cost per delivery down and on-time rate up.
- Cost per delivery pushed too low. Can hurt on-time rate if routes are packed too tightly.
- On-time rate pushed too high. Can raise cost if you add vehicles for every busy hour.
Watch all three on one screen so a gain in one is never bought with a loss in another.
Common mistakes
- Reporting one average for the whole city instead of splitting by area and time slot.
- Counting parcels dispatched instead of parcels attempted.
- Leaving failed attempts and returns out of cost.
- Changing the definition of "on time" without saying so.
A weekly review routine
- Open the three metrics split by area, time slot and carrier or rider.
- Pick the worst two areas and find the top cause for each failed attempt.
- Agree one fix, one owner and one date.
- Re-check the same view next week.
What is a good first-attempt rate?
It depends on the city, the payment mix and the item. Compare against your own last quarter by area, then raise the target step by step.
Should we measure riders individually?
Yes, but use it to find help and routing issues, not only to rank people. A rider with a hard area will look worse than one with an easy area.
What do we need to measure this?
Delivery status with timestamps, failure reasons, cost data and a promised delivery window for each parcel.
