A Rate Confirmation
Commits More Than a Rate
A rate confirmation is usually read for one number and filed with the rest unread. The number is the linehaul rate. The unread parts are what decide the load's real price: detention after two free hours, a lumper reimbursed at cost with a receipt, no re-brokering, an appointment that carries a fee when it is missed.
Those clauses are conditions, not values. A condition does not fit the column someone fills in at dispatch, so it stays on the page. Weeks later the carrier invoice arrives with a detention charge, and the person answering it is holding an email attachment and a spreadsheet that never recorded what the attachment said.

Key Takeaways
- The number a rate confirmation is named for is the one nobody argues about.
- The same detained stop bills $150, $262.50 or $300, and the only difference is when the free clock started.
- Nobody in the chain keeps the free time, which is why the argument lands on whoever opens the invoice three weeks later.
A Rate Confirmation Is a Per-Load Contract, and the Rate Is Its Least Disputed Field
The rate is the field the document is named for, and the least contested one on the page. A rate confirmation is what a broker issues to a carrier once a rate has been agreed, and the carrier signs it before the truck is dispatched. It applies a master broker-carrier agreement to one load, which is why the signature matters more than the layout: the signature turns an email attachment into the terms of a specific move.
It is not the master agreement, the load tender, the bill of lading, the proof of delivery or the invoice. Each of those answers a different question, and only the rate confirmation is written before the outcome is known.
| Document | What it records | Where it usually lives |
|---|---|---|
| Load tender | The shipper's offer of freight and its requirements | Broker's inbox or TMS |
| Rate confirmation | The terms the carrier accepted for that load | Email thread |
| Bill of lading | What was picked up, its condition and the reference numbers | With the driver |
| Proof of delivery | That it arrived, and when the trailer was released | Back from the consignee |
| Carrier invoice | What the carrier says it is owed | Accounts payable queue |
Federal rules do not prescribe a rate confirmation form. They do prescribe what a broker's transaction record has to show. Under 49 CFR 371.3, that record must carry the consignor's name and address, the originating carrier's name, address and registration number, the bill of lading or freight bill number, the broker's compensation and who paid it, any non-brokerage service and its fee, and the freight charges the broker collected with the date the carrier was paid. It is kept for three years, and each party to the transaction has the right to review it.
Read that list next to a rate confirmation and the document stops looking like paperwork. Four of the six items are the same facts: who hauled, which load, what the broker earned, what the carrier was paid. The rate confirmation is where those facts first exist, in the only version both sides saw before the load moved.
The volume explains why the format problem matters. The Transportation Intermediaries Association puts the share of US truckload freight touched by a broker at 70%, which makes the rate confirmation one of the most repeated commercial documents in the supply chain and one of the least standardized.
There is no standard layout to rely on. Broker transportation management systems print their own versions, so one broker's total is labeled "All-In", another's is "Total Rate", and a third prints "Carrier Pay" with fuel on a separate line. The same field can sit in a right-hand column on one form and inside a paragraph on the next. This is the reason a template per broker decays: every new broker is a new layout, and the layout is not the thing that carries meaning.
The Conditions Decide the Money, and a Column Called Detention Captures None of Them

A rate confirmation's most expensive line is usually written as a sentence, and that sentence holds five separate facts that a single amount column throws away. The linehaul is easy to compare and rarely the source of the argument. The conditional charges, known in freight as accessorials, are where the argument lives.
Take one common clause: "Detention $75 per hour after 2 free hours, 15-minute increments, maximum $300 per stop, driver must notify dispatch before the third hour." That is a rate, a free-time allowance, a billing increment, a cap and a notice requirement. A sixth fact is usually not on the rate confirmation at all: when the clock starts. Some agreements start it at the appointment time, some at driver arrival, some at the later of the two, and the broker-carrier agreement often decides.
The arithmetic then produces different answers from the same document. A driver arrives at 06:30 for an 08:00 appointment and is released at 12:00. If free time starts at arrival, five and a half hours minus two leaves three and a half billable hours at $75, or $262.50. If it starts at the appointment, four hours minus two leaves two, or $150. Round the first result up to full hours and it becomes $300. Same load, same stop, three defensible numbers, and the invoice will carry whichever one the carrier's system calculated.
This is not a rare edge case. The American Transportation Research Institute found drivers detained on 39.3% of stops in 2023, with 9.9% of stops running past two hours. In the same research, 94.5% of fleets charged a detention fee, and fewer than half of the invoices carrying one were paid. The gap is not usually a dispute about whether the truck waited. It is a dispute about documentation: which free time applied, when the clock started and what evidence exists for the release time.
The vocabulary makes it worse. The same event is called detention, per diem, waiting time or an appointment fee depending on the broker. A lumper, the third-party crew that unloads at the dock, can be a pass-through at cost with a receipt or a flat handling charge. A TONU, truck ordered not used, depends on how late the cancellation arrived and whether the truck was already rolling. Two brokers quoting the same lane can both be right and still disagree, because they are pricing different definitions.
Two rate confirmations can both say "detention" and still describe different clocks, increments and caps. The number is the least portable part of the clause.
The Carrier Field Is a Payment Field, Not a Formatting Detail
A load number can survive a re-brokered load. The carrier on the rate confirmation cannot. When a load moves to a second carrier, whether the broker approved the change or not, the new rate confirmation may carry the same load number and a different operating authority. If the sheet is keyed on load number alone, the second row either overwrites the first or looks like a duplicate and gets deleted. Either way, the record of who actually hauled the freight disappears.
The federal record already treats identity as a required fact rather than metadata. Section 371.3 asks for the originating motor carrier's name, address and registration number, not the name of whoever answered the phone. The rate confirmation is where that name and number first appear, which makes it the first place the check can happen.
The check is not theoretical. FMCSA's guidance on broker and carrier fraud and identity theft describes entities using another carrier's USDOT number and people acting as brokers without registration. It recommends confirming phone numbers through SAFER, the agency's public carrier database, rather than calling the number supplied in the email, examining the documents themselves, and treating a rate that far exceeds the market as a reason to stop. A rate confirmation with a clean-looking logo and a borrowed operating authority passes visual inspection. The MC number is what ties the document to an actual carrier.
Payment adds a second identity. The invoice may arrive from a factoring company rather than the carrier, and a notice of assignment should name the carrier that signed the rate confirmation. When the invoice entity and the rate confirmation carrier differ and no assignment connects them, the row is an exception, not a payment.
Capture the carrier as three fields, not one free-text line: legal name, MC number and DOT number, the two identifiers that tie a carrier to its federal operating record. "XYZ Logistics LLC" and "XYZ Transport Inc" can share a brand, a dispatcher and a load board account while holding different operating authority. A single "Carrier" column makes them the same company.
Match on the pair of load number and carrier MC. The load number alone survives a re-broker, and that is exactly when paying the wrong party becomes possible.
The Rate Confirmation in the Folder Is Often Not the One That Describes the Load
A rate confirmation is a snapshot taken at booking, and loads change after booking. A receiver moves an appointment. A shipper adds a stop. A lumper gets approved by phone because the trailer is already at the dock. Equipment changes from a 53-foot van to a reefer. The document that describes the load after those changes is not the document that was signed.
The working rule is that every change which costs money needs a revised rate confirmation, a signed addendum, or written approval from someone with authority. A dispatcher saying "go ahead" on a call is not a document, and the person reconciling the invoice three weeks later has no way to know the call happened.
A dispute posted to r/FreightBrokers in May 2025 shows how this happens. The rate confirmation listed a Wednesday noon delivery and also instructed the driver to call the receiver to schedule. The receiver offered Friday. The broker was told and did not object or issue a revised rate confirmation. The load delivered, and a crane fee claim followed for the appointment the document still described. Whether the carrier or the broker prevails is a separate question. The dispute exists because the document and the operation diverged and nothing written recorded the change.
Revisions usually arrive as another PDF with the same load number and a new date, or a "Rev 1" suffix in the header. A sheet that keeps one row per load number will either lose the revision or let it replace the original. Keep a revision date as a column, and treat two documents with the same load number as a pair to reconcile rather than a duplicate to delete.
A verbal approval is not a term. If the change is not on a revised rate confirmation or an addendum, the only record of it at settlement is someone's recollection.
This is also a boundary worth stating plainly. Extraction can show that no written amendment exists. It cannot show whether someone approved one by phone.
The Day Breaks Between the Rate Confirmation and the Settlement Sheet

The rate confirmation is the only document in the load packet that states the agreement, and it is the one most likely to have no structured home. The bill of lading travels with the freight. The proof of delivery comes back signed. The invoice goes to accounts payable. The rate confirmation stays in an email thread.
Four roles touch it. The broker's rep negotiates the rate, issues the confirmation and files it. The carrier's dispatcher signs it back, assigns a driver and dispatches. The carrier's billing clerk builds an invoice from the same document weeks later. The broker's AP clerk pays that invoice against whatever record the brokerage kept. Each handoff keeps the part that role needs. Dispatch keeps the address and the appointment. Billing keeps the rate and the load number. AP keeps the carrier and the total. Nobody keeps the free time.
Brokers describe the result plainly. In a February 2026 thread on how brokerages handle invoice reconciliation, the original poster listed the current process as email threads, Excel margin checks, manual accessorial approvals, checking POD status across systems, and making sure factoring did not "mess up numbers." The summary was two words: "Feels fragile."
Fragile is the right word for a process built on partial copies. The rate confirmation is complete at the moment it is sent and becomes less complete with every transcription. By the time the invoice arrives, the only person holding the full set of terms is the one who never received them in a usable form.
The fix is not a better TMS. It is a structured record built at intake, while the document is still current and the person who negotiated it is still reachable. That record does not have to be a system of record. It has to be a sheet with the right columns.
The Columns That Make the Conditions Queryable

A rate confirmation sheet needs four groups of columns, and the groups most teams skip are the last two. Identity and movement columns are the ones dispatch already keeps. The printed money and the conditions are the ones that disappear.
| Group | Columns | What the group settles |
|---|---|---|
| Identity | Load or reference number, broker MC, carrier legal name, carrier MC, carrier DOT, revision date | Which load this is, and which party is entitled to be paid for it |
| Movement | Origin city, state and ZIP, destination, pickup window, delivery window, equipment, commodity, weight | Whether the invoice bills the lane and service that were agreed |
| Printed money | Linehaul, fuel surcharge, fuel basis, total on the document, payment terms | Whether the page's own arithmetic holds |
| Conditions | Detention rate, free hours, clock trigger, increment, cap, TONU, lumper terms, no-rebroker clause, amendment on file | Whether a charge that arrived later was authorized at all |
Filling those columns by hand is the step that fails, because it depends on someone reading a layout they have not seen before and deciding where the value sits. Custom Column Extraction reverses that: you type the column names you want, and the tool locates each value by what it means rather than by its position on the page. The column names you enter become the headers of the output, so a new broker's rate confirmation needs no template and no mapping exercise. The layout stops being a setup task.
Two computed columns handle the arithmetic the page expects a human to do. A charge total can be defined as linehaul plus fuel plus each accessorial, and a variance column can compare that sum against the printed total and return the difference when they disagree. Computed columns are defined in the column name or in a rule and run during extraction, so the sheet arrives with the check already applied instead of a clean total that hides a bad sum.
Review Mode with Bbox is the part that matters on rate confirmations more than on invoices. Hovering a cell highlights the region on the original page that the value came from, and clicking a region jumps back to the cell. The number that decides a dispute is often in small type at the bottom of the page, next to a fuel table or a handwritten revision, and a plausible value in the wrong row is harder to catch than a blank.
Volume is handled by batching: a week of rate confirmations goes in as one upload and comes out as one row per load, whichever broker sent each one. Rate confirmations pasted into the body of an email, with no attachment, can be read from the body text; the account inbox can be set to read attachments, body, or both.
The sequence that works is short:
- Collect a week of rate confirmations in one batch, or forward them to the account inbox as they arrive.
- Enter the column names from the table above, including the conditions group that most sheets skip.
- Add the two computed columns so the charge total and the variance appear with the rows.
- Review the flagged cells against the original pages, then export one sheet with one row per load.
Files are processed securely and not stored.
One Row per Load Turns Settlement Into Four Comparisons
With one row per load, a carrier invoice is checked in four places, and each check is a formula rather than a search. The first is linehaul on the invoice against linehaul on the rate confirmation. The second is fuel against the basis the rate confirmation states, whether that is a percentage of linehaul, cents per mile, or a flat amount. The third is each accessorial against authorization, free time and trigger. The fourth is the invoice entity against the carrier that signed.
None of those checks require the tool to make a judgment. The sheet puts the clause next to the charge and leaves the decision with the AP clerk, who can now short-pay a detention line with the free time visible in the same row, or hold a lumper until a receipt arrives. The difference between a defensible short-pay and a guess is whether the terms were recorded before the invoice existed.
This is the same comparison problem that makes freight invoice reconciliation expensive at volume, viewed from the other end. The invoice side explains why line-level verification collapses under a month-end clock. The rate confirmation side is what makes line-level verification possible at all. On the freight side of the packet, the bill of lading records what actually moved, which is why turning bills of lading into spreadsheet rows belongs in the same working file as the rate confirmations they belong to. The complete guide to shipping and freight document extraction covers the rest of the set, from tenders to proofs of delivery.
The value of a structured rate confirmation is not that it saves typing. It is that the terms survive long enough to be used.
What Rate Confirmation Extraction Does Not Do
Extraction produces a record of what the document says. It does not produce a TMS, a market rate, or a payment decision. The boundaries matter more here than on a simple receipt, because the people reading the output are about to move money.
- No TMS integration. Output is XLSX, CSV or JSON, and there is a REST API for teams that want to build their own connection. There is no native connector that posts a load into McLeod, Turvo, Aljex or MercuryGate.
- No rate benchmarking. It reads the linehaul printed on the page. It cannot tell you whether that lane should have cost more or less, because that requires market data the document does not contain.
- No compliance ruling. It can show that a detention charge has no free-time basis on the rate confirmation. Whether to short-pay, hold or waive is a commercial decision, and it stays with a person.
- No cross-document matching. Rate confirmation against invoice is a formula you write in the sheet. The tool does not compare two documents and declare a match on its own.
- Accuracy depends on the scan. Dense handwriting, faint faxes and phone photos are where a review pass earns its keep. A higher processing tier exists for documents that need it, and it is not a substitute for checking the field that decides the payment.
That boundary is the same one that separates document extraction from transportation management software. A TMS runs the load; an extraction tool reads the paper the load generates. If you are still weighing the category, the comparison of logistics document extraction tools covers where each option stops, and the freight broker's cost case for BOL extraction explains why the gap sits outside the TMS rather than inside it.
FAQ
Is there a standard rate confirmation format?
No. There is no federal form for a rate confirmation, and 49 CFR 371.3 governs the broker's transaction record rather than the layout of the document. Each broker's TMS prints its own version, and the same field can be called "Total Rate", "All-In" or "Carrier Pay" on three different forms. That is why a per-broker template is a maintenance job rather than a setup.
Can extraction read a scanned or photographed rate confirmation?
Yes, including faxes and phone photos, as long as the text is legible. Handwritten rate changes and annotations are the fields most likely to need a review pass, which is what the source-highlighting view is for. A clean PDF from a broker's TMS reads more reliably than a fourth-generation fax, and the harder documents are the reason a review step exists.
Which fields should I extract first?
Start with load number, carrier legal name, carrier MC and DOT, linehaul, fuel and the printed total. Then add the two fields most teams leave out: the detention rate and the free-time allowance. Those two decide more settlement arguments than any other pair on the page, and they are the ones that never make it into a dispatch sheet.
Can extraction compare the rate confirmation with the carrier invoice automatically?
Not across documents. You can extract both into one sheet, one row per load, and compare linehaul, fuel, accessorials and carrier entity with formulas. That is a workbook step, not an automatic match, and it keeps a person in the position of deciding what to pay. The matching logic stays in your workbook, not inside the extraction.
Do I need a TMS to use extraction?
No. The sheet is useful on its own, and it is often most useful at brokerages that already have a TMS, because the TMS holds the load record while the rate confirmation's conditions sit outside it. Extraction fills the gap between the document and the system rather than replacing the system.
What happens when a load is re-brokered?
Keep both rows. The load number may stay the same while the carrier and the rate change, so match on the pair of load number and carrier MC rather than the load number alone. Two rate confirmations with the same load number and different carriers are an exception to review before payment, not a duplicate to delete.
The Document Is the Only Record of What Was Agreed
A rate confirmation is the only document in the load packet that records what both sides agreed before anything moved. Keeping it as an email attachment is a decision, and it is the decision that hands the argument to whoever has the least context three weeks later. The alternative is unglamorous: put the terms in columns while the document is still current, and let the invoice arrive against a record instead of a memory.