Trucking KPIs to track every week
A month is too long to find out a lane, a broker or a truck is losing you money. Ten or so numbers, checked on the same day every week, tell you what's working and what to change. Here's how to figure each one, where the numbers come from, and what to do when one moves.
Key takeaways
- Compare revenue per total mile (loaded plus deadhead) with your cost per mile every week. The difference is your profit per mile.
- Split costs into fixed (payments, insurance) and variable (fuel, maintenance, tolls, fees). Fewer miles raise your fixed cost per mile.
- Track cash too: days to get paid, unpaid invoices and detention collected. A profitable week can still leave you short on cash.
- Judge each number against your own 4-week average, not against someone else's. A move for 2 or 3 weeks in a row is a signal to act.
The KPIs and their formulas
A KPI (key performance indicator) is just a number you track to see if the business is on course. These are the ones worth checking every week, for one truck or a small fleet. Track them per truck if you run more than one.
| KPI | Formula |
|---|---|
| Revenue per loaded mile | Total revenue ÷ loaded miles |
| Revenue per total mile | Total revenue ÷ (loaded miles + deadhead miles) |
| Deadhead % | Deadhead miles ÷ total miles × 100 |
| Cost per mile (CPM) | (Fixed costs + variable costs) ÷ total miles |
| Miles per week | Total miles from your ELD or odometer for the week |
| Truck utilization | Days the truck was working ÷ days you planned to work × 100 |
| Fuel MPG | Total miles ÷ gallons bought |
| Fuel cost per mile | Fuel spend ÷ total miles (or price per gallon ÷ MPG) |
| Maintenance cost per mile | Maintenance and tire spend ÷ total miles, over the last 4 weeks or more |
| Days to pay (DSO) | Unpaid invoices ÷ revenue for the period × days in the period |
| Unpaid invoices | Count and dollar total, and how many are past the payment terms |
| Detention and accessorials collected | Amount collected ÷ amount billed × 100 |
| On-time % | On-time pickups and deliveries ÷ all appointments × 100 |
| Profit per week | Total revenue − all costs for the week |
Use the same definitions every week. If you change how you count something, your trend stops meaning anything.
Revenue per mile and deadhead
- Revenue per loaded mile is what brokers and load boards quote. It's useful for comparing loads, but it hides the empty miles you drove to get them.
- Revenue per total mile is the one to compare with your cost per mile, because your truck burns fuel and wears out on every mile, loaded or not. If it's below your CPM, you lost money that week no matter how good the loaded rates looked.
- Deadhead % shows how much of your driving earns nothing. A high-paying load that leaves you 250 miles from the next one can be worse than a lower rate that reloads in the same town.
- What counts as revenue: line haul plus fuel surcharge plus accessorials you actually got paid or approved. Leave out lumper money you paid and got reimbursed, since it just passes through.
Run any load or trip through the deadhead calculator and the load profit calculator before you book it. To cut empty miles, plan the whole loop: see planning a profitable round trip. To push the rate up, see how to negotiate freight rates.
Cost per mile, fuel and maintenance
- Fixed costs don't change with miles: truck and trailer payments, insurance, plates and permits spread by week, ELD, phone, software and accounting. Divide the monthly or yearly bill into a weekly amount.
- Variable costs go up with miles: fuel, maintenance, tires, tolls, and fees that are a percent of revenue, such as dispatch and factoring fees.
- Why the split matters: run fewer miles and your fixed cost per mile goes up, even though you spent the same. A slow week hurts twice.
- Fuel MPG and fuel cost per mile: MPG is miles ÷ gallons. For a fair number, fill up to full at the start and end of the period, or use several weeks. Fuel cost per mile is fuel spend ÷ miles. When diesel goes up, it rises even if your MPG holds. Check the weekly diesel price trend on the EIA Gasoline and Diesel Fuel Update.
- Maintenance cost per mile is lumpy. One week has a $2,000 repair, the next has nothing. Track it over 4 weeks or more, and keep putting money aside every week.
Build your full cost per mile with the cost per mile guide and the cost per mile calculator. Check MPG with the MPG calculator and trip fuel with the fuel cost calculator. Ideas to improve it are in fuel saving tips.
Utilization, on-time, detention and days to pay
- Miles per week and truck utilization. A truck sitting still still costs you its payment and insurance. Count the days the truck was loading, unloading or moving against the days you meant to work. Days lost to a breakdown, waiting for a load or a bad plan all show up here.
- On-time %. Late pickups and deliveries cost you reloads, fines on some rate cons, and future loads from that broker. Count every appointment, not every load.
- Detention and accessorials collected. Compare what you billed with what you got paid. If you're billing detention and not collecting it, the problem is usually the terms on the rate con or the proof (in and out times). See how to get detention paid.
- Days to pay (DSO). DSO means days sales outstanding: on average, how many days your money sits with brokers. Also list every unpaid invoice with its age and the broker's payment terms. A good week on paper can still leave you short for fuel.
- If you factor: your factoring report shows each invoice, the advance, the fee, any reserve held back and, on recourse factoring, invoices the factor may charge back to you. Track how fast the factor funds you and anything charged back. See freight factoring explained.
A worked weekly example
Every number here is made up to show the math. It is not a market rate or a typical cost. One semi, solo owner-operator, 3 loads in the week.
| Item | This week (example) |
|---|---|
| Line haul (3 loads, fuel surcharge included) | $2,400 + $1,900 + $1,600 = $5,900 |
| Detention billed / collected | $200 / $150 |
| Total revenue | $6,050 |
| Loaded / deadhead / total miles | 2,200 / 300 / 2,500 |
| Fuel | 400 gallons at an example $3.75 = $1,500 |
| Maintenance, tolls | $250, $50 |
| Dispatch fee (example amount) | $363 |
| Variable costs | $2,163 |
| Truck payment, trailer payment, insurance, plates and permits, ELD and software | $600 + $200 + $450 + $50 + $100 |
| Fixed costs | $1,400 |
| KPI | Math | Result |
|---|---|---|
| Revenue per loaded mile | $6,050 ÷ 2,200 | $2.75 |
| Revenue per total mile | $6,050 ÷ 2,500 | $2.42 |
| Deadhead % | 300 ÷ 2,500 | 12% |
| Cost per mile | ($1,400 + $2,163) ÷ 2,500 = $3,563 ÷ 2,500 | $1.43 ($0.56 fixed + $0.87 variable) |
| MPG | 2,500 ÷ 400 | 6.25 |
| Fuel cost per mile | $1,500 ÷ 2,500 (same as $3.75 ÷ 6.25) | $0.60 |
| Maintenance per mile (last 4 weeks) | $1,200 ÷ 10,000 miles | $0.12 |
| Miles vs. weekly target | 2,500 ÷ 2,800 | 89% |
| Truck utilization | 5 working days ÷ 6 planned | 83% |
| On-time % | 5 of 6 appointments | 83% |
| Detention collected | $150 ÷ $200 | 75% |
| DSO | $9,000 unpaid ÷ $24,000 revenue (last 28 days) × 28 | 10.5 days |
| Profit for the week | $6,050 − $3,563 | $2,487 (about $0.99 a mile) |
Check: $2.42 revenue per total mile − $1.43 cost per mile = $0.99 profit per mile. The profit is before your own pay and income tax, since you pay yourself out of it. If you factor, add the factoring fee from your report to variable costs. Run your own week in the profit and loss calculator.
Where the numbers come from
- Rate confirmations and invoices: line haul, fuel surcharge, agreed accessorials, appointment times and payment terms. See how to read a rate confirmation.
- ELD and GPS: total miles, and your duty status and times at shippers and receivers, which back up detention claims. Carriers must keep records of duty status and supporting documents for at least 6 months (49 CFR 395.8(k)).
- IFTA mileage records: the IFTA Procedures Manual (P540) expects trip records with dates, origin and destination, route, beginning and ending odometer or ECM readings, total distance, miles in each jurisdiction, and the unit or VIN. If you keep these for IFTA, you already have your weekly miles. Split loaded and empty by matching trips to your loads.
- Fuel receipts or fuel card statements: gallons and dollars. For IFTA tax-paid credit, a receipt must show the date, seller name and address, gallons, fuel type, price, the vehicle and the buyer (P550). IFTA records must be kept 4 years from the date the return was due or filed, whichever is later (P510). See how to file IFTA.
- Factoring reports and bank deposits: what was paid, when, and what's still open.
- Maintenance records: 49 CFR 396.3 requires a carrier to keep, for each vehicle it controls for 30 consecutive days, the vehicle's identification, a way to show the nature and due date of inspections and maintenance, and a record of inspections, repairs and maintenance with their date and nature. Keep them for 1 year, and for 6 months after the vehicle leaves your control. The same records give you maintenance cost per mile. See the truck maintenance schedule.
- Receipts and bills for everything else: IRS Publication 583 lists the supporting documents to keep, such as invoices, receipts, account statements and deposit slips. The IRS says to keep records for at least 3 years in most cases, 4 years for employment tax records, and longer in some situations.
This is general information, not tax or legal advice. Ask your tax preparer what your business needs to keep. See trucking tax basics.
A 30-minute weekly review
- Pick a day and keep it. Many owner-operators use the day after their week closes, such as Monday morning for a Sunday-to-Saturday week.
- Collect the paper. Rate cons, delivered BOLs, fuel receipts or the fuel card statement, ELD mileage, repair bills, and the factoring report or bank deposits.
- Fill in one row per week. A spreadsheet with one row per week and one column per KPI is enough. Add a 4-week average column.
- Send invoices and chase money first. Invoice anything delivered and not billed, then check every unpaid invoice past its terms and follow up.
- Compare with your 4-week average. Mark anything that moved the wrong way for a second week in a row.
- Pick one thing to fix. One change at a time, so you can see whether it worked next week.
- Share the numbers with your dispatcher. Give them your cost per mile and your minimum rate per total mile so they book above it.
When a number should prompt a change
These are signals, not rules. Compare with your own trend, not an industry average.
| If this happens | Look at this |
|---|---|
| Revenue per total mile is below your cost per mile | You're losing money on the miles. Raise your minimum rate, drop the lanes that cause it, and count deadhead before you book. |
| Deadhead % climbs 2 or 3 weeks in a row | Check reload markets before you accept a load, and plan the round trip instead of one load at a time. |
| Miles or utilization drop | Find the lost days: waiting for loads, shop time, long dock waits or home time you didn't plan. Fixed costs per mile go up when miles go down. |
| MPG falls below your 4-week average | Tire pressure, idle time, speed, a dragging brake, a dirty air filter, or heavier or different freight. Book a check if it keeps falling. |
| Fuel cost per mile rises but MPG holds | The price went up. Check your fuel surcharge on new loads and where you buy fuel. |
| Maintenance per mile jumps | One big repair or a pattern? Repeat repairs on the same part point to a root cause, or to a truck that's getting expensive to keep. |
| DSO grows or an invoice passes its terms | Call the broker, confirm they got the paperwork, and check their credit before you haul for them again. |
| Detention collected is low | Get detention terms on the rate con and send in and out times the same day. |
| On-time % slips | Plan around hours of service and dock time, and tell the broker early when you'll be late. |
| Profit per week is negative 2 weeks running | Go back through every line: rate, deadhead, fuel and fixed costs. Talk to your accountant if it doesn't turn around. |
Fleetorica is a dispatch service, not a broker or an accountant. We book loads above the minimum you give us and plan around deadhead and your hours. Our fee is a simple percentage of each load, quoted for your truck before you start, and your first load is free.
- IRS: How long should I keep records?
- IRS Publication 583: Starting a Business and Keeping Records (Rev. December 2024)
- IFTA Procedures Manual, sections P510 to P550 (revised Aug. 26, 2026)
- 49 CFR 396.3: Inspection, repair, and maintenance
- 49 CFR 395.8: Driver's record of duty status (paragraph (k), retention)
- U.S. Energy Information Administration: Gasoline and Diesel Fuel Update (weekly)
This page is general information, not legal or tax advice. Rules change; confirm with FMCSA, the IRS or your state before you file.
Questions carriers ask
Should I use revenue per loaded mile or per total mile?
Use both, for different jobs. Revenue per loaded mile compares one load's rate with another. Revenue per total mile, which includes deadhead, is the one to compare with your cost per mile, because you pay for every mile you drive.
What is a good deadhead percentage?
There's no single right number. It depends on your equipment, lanes and home time. Track your own deadhead % every week and work to bring it down by planning round trips and checking reloads before you book.
How do I figure days to pay (DSO)?
Divide the total of your unpaid invoices by your revenue for a period, then multiply by the days in that period. Example: $9,000 unpaid ÷ $24,000 billed in the last 28 days × 28 = 10.5 days. Also list each unpaid invoice with its age.
How long should I keep the records behind these numbers?
It depends on the record. The IRS says at least 3 years in most cases. IFTA mileage and fuel records: 4 years from the date the return was due or filed, whichever is later. Maintenance records under 49 CFR 396.3: 1 year, and 6 months after the vehicle leaves your control. Records of duty status: at least 6 months. Check with your tax preparer.