Big companies run full-blown TMS carrier scorecard programs — dashboards, business intelligence, red and green lights everywhere. We can't afford any of that. A decent TMS costs tens of thousands of dollars a year, and my little 3,000-square-meter warehouse doesn't clear enough profit to pay the software bill. So our scorecard is a spreadsheet. It's scrappy, but it works — and honestly, for on-time performance calculation, scrappy might be fairer.

Our Mess: 12 Carriers, 13 Definitions of "On Time"

I started taking carrier management seriously at the end of 2023. Back then we worked regularly with 12 carriers — linehaul, LTL, local delivery, the works. Every time a customer complained about a late shipment, I'd call the carrier, and the answer was always the same sentence: "We were on time."

The classic case happened in March 2024: a load coming from the Port of Los Angeles to our warehouse out in Eastvale. The carrier said the driver arrived at 9 AM — on time. The driver said traffic on Highway 60 cost him two hours and he didn't hit the dock until 10:30. The customer said their appointment was 10 AM, the freight showed up at 10:30, so it was late. Three parties, three versions, and me stuck in the middle getting it from both sides.

Then there was the carrier that really got me. Old Wang's fleet ran a 98% on-time rate year after year — by any big-company standard, a model supplier. But when I dug into our own books: roughly 100 loads a year from him, 4 with damage claims. The other guys? About 100 loads each, barely 1 damage claim apiece. On on-time performance alone, he was the star of the show. Add damage rate into the picture, and he was the most expensive carrier I had — every claim and every rework came out of my pocket.

That's when it clicked for me: with scorecards, the numbers don't matter nearly as much as the definitions behind them. Until everyone agrees on what "on time" means, 98% and 88% are the same number.

How Should On-Time Performance Be Calculated? Three Methods, Ranked by a Cheapskate

I looked into how the big TMS carrier scorecard systems calculate on-time performance, and mapped the main approaches against what a small warehouse can actually live with:

Method How it works Upside Downside Who it's for
Exact appointment time Promised 10:00, arriving 10:01 counts as late Precise Our volume can't support this kind of precision — drivers just stop taking our loads Big companies
Appointment window ±2 hours Booked for 10:00, anything 8:00–12:00 counts as on time Fair, forgiving You have to align on the window with the carrier up front Small warehouses like us
Same-day Arrived today = on time Zero effort So loose it means nothing People who've given up

We picked the middle one: performance measured against an appointment window, early or late both count as on time — but the window has to be written down in a text or email beforehand, in black and white. Plus three house rules:

  1. If the customer changes the appointment last-minute, it doesn't count against the carrier.
  2. Port strikes, highway closures, genuine force majeure — flagged separately, excluded from the denominator.
  3. On-time rate is calculated per load, not per carton. A 200-carton load and a 2-carton load cost a small warehouse the same operational headache.

These rules look simple, but 4 of our 12 carriers pushed back at first. Didn't matter. From the day the rules went live, the arguing phone calls dropped by more than half.

Our Scrappy Method: One Spreadsheet and One Coffee a Month

Big-company scorecards track dozens of dimensions. We track three: on-time rate, damage rate, and cooperation.

On-time and damage are hard numbers, covered above. Cooperation is a gut-feel score I assign every month: do they take last-minute extra loads, do they call back fast when something goes wrong, are their drivers decent at our dock? Go ahead and laugh — the subjective score is often the most accurate one. You know in your gut whether working with someone is smooth or painful.

The process is embarrassingly low-tech: at the start of each month I spend half an hour filling last month's numbers into Excel — three columns, red-yellow-green. Then I buy coffee for whoever scored worst that month. No yelling, just a chat: "Wang, your on-time was 88% this month — what happened?"

Dispatch office at a small warehouse

The results surprised me. In the second half of 2024, our overall on-time rate climbed from 91% to 96% — our own books, our own numbers. The secret wasn't the spreadsheet; it was the coffee. What small carriers fear most isn't a bad score, it's getting replaced. When you sit down and talk, they tell you the truth: those two months at 88% happened because his veteran driver went back home for a family emergency and the temp replacement didn't know the roads.

The Counterintuitive Part: I Almost Fired the 98% On-Time Carrier

Back to Old Wang's fleet. 98% on-time, damage rate three to four times everyone else's. By big-company math, an exemplary supplier. By my scrappy math, dead last three months running.

It took three coffees before he leveled with me: to protect his on-time number, he had drivers unloading at our dock without waiting for their appointment slot. Forklift guys rushing, freight getting banged up. The on-time KPI was literally incentivizing him to damage my freight.

That's the trade-off nobody puts on the slide deck: on-time rate and damage rate are natural enemies. Squeeze one hard enough and the other pops up. Big-company scorecards bury this tension under weighted averages of dozens of metrics — looks scientific, hides the seesaw. With only three metrics, we small players see it plainly: whenever a single metric gets pushed to the extreme, somebody is paying for it somewhere you aren't measuring.

I didn't fire Wang. I gave him two months: on-time target lowered from 98% to 95%, damage rate capped at 1.5%. Now he hovers around 95% and 1% on the two, and honestly that's great. Customers want freight that arrives on time in one piece — not on time in eight pieces.

Here's the second counterintuitive bit: if you grade too strictly, good drivers stop taking your loads. Small warehouses have no volume and no leverage. Wave a 99% on-time ruler at a driver and he'll go haul for the big guys instead — more freight, better rates, less hassle. So we draw the line loose, but once drawn, we honor it. Low bar, clear bar.

Three Tips for Fellow Small Warehouses

First, define the metric before you argue about the number. Write down "what counts as on time" with every carrier — a text message thread is fine, no lawyers needed.

Second, don't get greedy with metrics. Three is enough: on-time rate, damage rate, cooperation. A dimension you can't manage is the same as no dimension.

Third, talk every month. The spreadsheet is dead; people are alive. Small carriers run on feeling respected, and one coffee does ten times more than one warning email.

The big-company TMS carrier scorecard playbook isn't for us, and it doesn't need to be. But three things apply to warehouses of any size: define the metric clearly, write the data down, and treat people like people.

Small warehouses have their own way of surviving: no budget for software, so we squeeze Excel for everything it's worth; no bargaining power, so we invest in relationships instead. When it comes to on-time performance, calculating it fairly matters a whole lot more than calculating it precisely.

By Xiao Ma, Small Warehouse Owner