TL;DR
A freight audit checks each carrier invoice line by line against the contracted rate, the shipment that actually happened, and the purchase order behind it. It is not the same as accounts payable confirming the total looks reasonable. The hardest part is accessorial charges, because unlike base rates they cannot be validated against a rate card alone. An accessorial is a claim about something that physically happened, and checking it requires evidence.
Key Takeaways: Freight audit runs a four-way match across contract, shipment, invoice, and purchase order. Accessorial charges are consistently the largest source of overcharges because they are easy to add and hard to verify. Carrier billing systems apply many of them automatically from address and dimension rules, so a wrong parameter repeats across every matching shipment. Fee drift is invisible invoice by invoice and only appears when charge codes are counted over time.
What is a freight audit?
A freight audit, also called a freight bill or freight invoice audit, is the line-by-line verification of each carrier invoice against the negotiated rate, the shipment that actually took place, and the underlying purchase order, in order to identify charges that are duplicated, miscalculated, unauthorized, or never earned.
It is worth separating from what accounts payable normally does. AP confirms that an invoice is arithmetically correct, references a valid purchase order, and comes from an approved vendor. A freight audit asks a different question: does every individual line on this invoice match what the contract says you owe, and does the shipment record support it?
The distinction matters because freight invoices are unusually error-prone. Industry studies commonly cite error rates in the range of 5 to 15 percent of carrier invoices, with overcharges representing a substantial share, and organizations that implement systematic auditing typically find they had been overpaying a meaningful percentage of total freight spend. At any material freight volume, that is not a rounding difference.
What is on a freight invoice
A carrier bill is not a single number. It is a base charge plus a variable tail, and the tail is where the difficulty lives.
- Base rate or linehaul, derived from lane, weight break, service level, and applicable discounts.
- Fuel surcharge, usually a percentage, sometimes capped by contract, and frequently the subject of disputes about whether it was applied before or after discounts.
- Accessorial charges, the long tail: liftgate, inside delivery, residential delivery, detention, demurrage, storage, redelivery, reweigh and reclassification, after-hours receiving, reconsignment, hazardous handling.
- Duties, taxes, and pass-through fees on international movements.
The base rate is comparatively easy to check, since a lane and a weight break map to a contracted rate. The accessorials are not.
The four-way match
A complete audit reconciles four sources rather than two.
- The contract or tariff, establishing what you agreed to pay for each service and under what conditions.
- The shipment record, covering the bill of lading, proof of delivery, weights, dimensions, addresses, timestamps, and service level.
- The invoice itself, line by line.
- The purchase order, confirming the movement was authorized and correctly costed.
Most manual audit processes compare the invoice against the contract and stop there. That catches rate misapplication and duplicate billing. It does not catch the largest category of error.
Why accessorials are the hard part
Here is the distinction that defines freight audit and separates it from other invoice verification work.
A base rate is a price. An accessorial is a claim about something that physically happened.
A liftgate fee asserts that the delivery site had no dock. A residential surcharge asserts the address was residential. A detention charge asserts the driver waited beyond the free time allowance. A reweigh charge asserts the freight was heavier or a different class than declared.
None of those can be validated against a rate card, because the rate card only tells you what the charge costs if it was earned. Establishing whether it was earned requires the shipment fact, and the shipment fact lives in the delivery receipt, the gate timestamps, the address record, or the reweigh certificate, not in the invoice.
The practical rule follows directly: match every accessorial to a shipment fact rather than to the invoice. If the shipment record does not support the charge, it is a phantom accessorial.
The reason these charges survive is behavioral as much as technical. They are easy for a carrier to add, hard for a customer to verify, individually small, and superficially plausible. Challenging one requires assembling evidence that costs more to gather than the charge is worth, which is precisely why they go unchallenged.
Systematic errors, not random ones
There is a second property of accessorials that makes them more consequential than their individual size suggests.
Many are applied automatically by carrier billing systems based on parameters: address classification, shipment dimensions, routing rules. That automation is not malicious and it is usually accurate. But when a parameter is set incorrectly on the carrier side, the charge does not misfire once. It applies to every shipment matching that profile, compounding across the entire program until somebody notices.
So a freight billing error is frequently not a one-off to be recovered. It is a rule quietly running against you, and recovering the individual charge without correcting the parameter leaves it running.
Fee drift and the right unit of analysis
This leads to the insight that changes how the audit should be structured.
Some overcharges are not wrong on any individual invoice. A detention charge may be correctly coded, correctly rated, and properly documented, and still be billed more often than the contract permits. That is fee drift, and it is invisible when you examine invoices one at a time, because each one looks defensible.
It becomes visible only when the unit of analysis shifts from the invoice to the charge code over time. Pull every occurrence of a given accessorial code across a quarter, count them, and compare that count against what the contract authorizes and against the same code at comparable sites. A code billing at twice the rate of an equivalent location is the signal.
The arithmetic is unforgiving at modest values. A single unauthorized charge of around a hundred currency units appearing on five invoices a month becomes several thousand a year from one billing issue, and it never trips a threshold that would attract attention.
Demurrage, detention, and forwarder invoices
Two categories deserve specific mention.
Time-based charges are the most disputed lines in international freight, and their error modes are well defined: an incorrect start date for free time, charges applied to cargo released on time but not collected because of a terminal delay, and containers charged for days the terminal was closed. Contesting any of these requires the free time calculation from the bill of lading, the terminal's gate-in and gate-out timestamps, and the carrier's published free time schedule for that port and equipment type. Without that evidence connected to the review, most such disputes are simply paid. Our guide to demurrage and detention covers those calculations in detail.
Forwarder invoices are harder again, because they bundle charges originating from multiple carriers and handlers into a single document, the forwarder's margin is not necessarily disclosed, and validating individual lines requires visibility into underlying carrier rates that the receiving team usually does not have.
There is also a downstream consequence worth knowing for importers: freight and surcharge figures feed the declared customs value, so an inflated freight line can quietly increase the duty paid as well as the amount paid to the carrier. That connects freight audit to customs clearance and to trade compliance more broadly, since the same numbers appear on both sides.
Where automation fits
The constraint here is evidence assembly rather than calculation. Comparing a billed rate against a contracted rate is arithmetic. Establishing whether a liftgate was required, whether a driver actually waited, or whether a terminal was open on a charged day means locating and reading the documents that record what happened.
Automation that can read unstructured documents and reason about their contents addresses that directly: interpreting the invoice whatever format it arrives in, retrieving the corresponding bill of lading, proof of delivery, gate records, and rate agreement, determining whether each accessorial is supported by the shipment facts, and assembling the evidence package a dispute requires.
It also makes the charge-code analysis practical. Counting occurrences of an accessorial code across a quarter and comparing against contractual authorization is trivial once the invoices are structured data, and effectively impossible when they are PDFs reviewed individually.
Because these findings are used to withhold payment or claim recovery from a carrier, each determination has to be traceable to the specific document that supports it. A dispute you cannot evidence is a dispute the carrier will win.
To be clear about scope, Kognitos is not a freight audit and payment provider. It does not hold carrier rate libraries, execute carrier payments, or replace the specialist firms and platforms that deliver this as a managed service. What it addresses is the document reading and evidence assembly underneath: turning invoices, bills of lading, delivery receipts, and rate agreements into a matched position with a record of how each conclusion was reached.
The same pattern appears wherever a charge has to be argued against a document rather than a rate, which is why it shows up again in deduction management and supplier statement reconciliation. To see how deterministic AI validates charges against shipment evidence with a full audit trail, book a demo or try the platform.
Getting started
Two exercises, neither requiring new software.
Run a charge code census. Take one quarter of invoices from your largest carrier, list every accessorial code that appears, and count occurrences by site or lane. Comparing similar locations against each other usually surfaces drift faster than comparing against the contract, because the contract rarely specifies expected frequency.
Take twenty accessorial charges and try to evidence them. For each, locate the shipment fact that would justify it. The proportion you cannot support is your phantom accessorial rate, and it is usually the number that justifies doing this properly.



