How to check 3PL invoice rates against your rate card
Why checking billed rates matters#
A wrong rate repeats on every unit and every invoice until someone checks it. On illustrative numbers, an additional-unit fee billed at $0.48 instead of $0.40 on 1,200 units costs $96 a month, or $1,152 over a year at the same volume.
Rates can drift through ordinary process gaps rather than intent. One warehouse-software vendor, writing for 3PLs in September 2026, describes a handling rate negotiated in March while "the rate card in the system still says January"1. The problem isn't limited to logistics: a city government audit released in December 2018 found invoices approved for payment at prices above the negotiated contract price2.
What rate verification checks, and what it leaves to other checks#
Rate verification checks whether each line's rate was right. Whether the quantity was right and whether the fee was allowed at all need their own checks.
| Question | Example of a failure | Where it's covered |
|---|---|---|
| Was the rate right? | Units billed at a pre-renegotiation rate | This article |
| Was the quantity right? | More picks billed than units shipped | Activity verification: did the billed activity actually happen?; Verifying storage counts against inventory snapshots; Verifying minimum-billing calculations |
| Was the fee allowed? | A project nobody approved | Checking manual and one-off line items |
In the invoices we review, common disputes come from scope rather than price: extra picks, inserts or kitting charged twice, and returns sorted into a higher-priced category. A line can pass the rate check and still be wrong, so treat rate checks as one step of How to audit a 3PL invoice, step by step.
What you need before you start#
You need the documents that set your rates, plus an invoice detailed enough to show quantities:
- Every signed version of the rate card (also called a rate sheet or fee schedule) and every amendment, each with its effective date and the warehouses it covers. Keep prior versions for checking older invoices and for disputes3.
- The fee definitions in the contract or statement of work (SOW); see Which document wins when they conflict (order of precedence).
- Any written rate-change notices.
- The invoice and its supporting detail, with quantity, unit and rate per line (The supporting detail files you should always request).
Among the brands whose invoices we review, not all have a copy of their current rate card, and rate changes sometimes reach them by email or not at all. If you don't have yours, ask the 3PL for it in writing.
How to check each billed rate, step by step#
You can check rates line by line in a spreadsheet, in seven steps.
-
Build a rate table from your card. List one row per fee, with its unit, its rate, the date it took effect and, if you use more than one of the 3PL's warehouses, the warehouse it covers, since rates can differ by site. Add volume thresholds if your card has tiers.
-
Match each invoice line to a card line. Invoice fee names can differ from the card's, so record each match once and reuse it. See Why 3PL invoices are hard to read: formats, codes and fee naming.
-
Work out the billed rate for every line that shows a quantity:
Billed rate = line amount ÷ billed quantity
A line combining two card rates (order fees with picks, or old and new rates) matches neither; ask for the split.
-
Use the card version in effect. The date that sets a rate can differ from the invoice date, as one freight-audit guide notes4. For orders, receipts and returns, a new rate usually applies to work done on or after its effective date; for storage, to the storage period or count date that starts after it; for monthly fees, from the next month. If your contract doesn't say which date applies, ask the 3PL and get the answer in writing.
-
Confirm the unit of measure and fee structure. A rate can match the card and still be applied to the wrong unit5, such as per unit instead of per order, or under the wrong pick structure.
-
Size the difference:
Dollar impact = (billed rate − contracted rate) × billed quantity
Allow for rounding first; small rounding differences can still start disputes6. When a card rate has more than two decimals or the quantity is fractional (cubic feet, a daily-average pallet count), the amount is rounded to the cent. Multiply the card rate by the billed quantity and round to the cent; if that equals the billed amount, the rate matches. For example, 1,234.567 cubic feet at an illustrative $0.45 is $555.56, a billed rate of $0.450004. If the gap is no bigger than rounding each day or unit could produce, ask how the 3PL rounds (per line, per day or per unit) before you call it a rate error.
-
Log what you can't check. List dollar-only lines, fees that aren't on the card and rates with no effective date. Ask the 3PL in writing for the missing quantity, unit or definition.
Fee by fee: where rate checks get tricky#
Each fee category has its own units and structures; check which ones your card uses.
| Fee | Structures to expect | What to check |
|---|---|---|
| Pick and pack (DTC) | Order fee including the first unit, plus additional units; or a lower order fee plus a pick on every unit | First structure: additional units = units shipped − orders, if picks count per unit (some cards count lines or SKUs). Second: picks = units shipped. B2B orders often carry their own order fee and case or pallet picks |
| Storage | Pallet position, bin or shelf (sometimes by size), cubic foot, square foot or location; pallets and bins can share a card | Some cards set separate rates or surcharges for tall, aged, quarantine or overflow stock, and an over-height pallet can bill as two positions. A charge in the month goods arrive can be a contracted initial-storage fee, not a duplicate |
| Receiving | Pallet, carton, unit, hour or container; a card can use two or more | Which unit each receipt was billed in |
| Packaging | Per box or mailer, flat per order or unit, rebilled at cost, or included in the order fee | Check at-cost rebills against the supplier's cost and any written markup |
| Shipping (postage) | Carrier cost, cost plus markup, the 3PL's own rate card, or your own carrier account | Only the 3PL's own card is a zone × weight × service lookup. See Verifying shipping markup against your contract, DIM weight audits: catching wrong boxes and wrong dims and Fuel surcharges on a 3PL invoice: checking the percentage, what it applies to and your contracted discount |
| Returns | Per return plus additional units, per unit, or a monthly total; some price by return type | The category each return was billed in |
| Hourly labor and projects | Hourly (rates can differ by role or for overtime), per unit, or lump sum | Rate, minimum increment, any per-job minimum and written approval |
| Account and technology | Flat monthly; sometimes per order instead or as well | Flat fees: the same each month unless the contract allows a change |
Among Implentio customers' 3PL contracts where picks can be classified, the two pick structures are about equally common (roughly 40–50% each).
Structure errors can hide behind matching rates. On a card whose $1.75 order fee includes the first unit, billing 3,200 picks at $0.40 instead of 1,200 additional units charges the first pick twice: 2,000 × $0.40 = $800 (Per-order fees, first-pick vs. additional-pick, and per-unit pricing).
If the 3PL bills shipping on its own card and the invoice shows a zone, weight break or service your copy doesn't, ask for the complete rate table for that service before you check those shipments. Some 3PLs show full tables in their customer portal.
Rate changes, versions and tiers#
Volume tiers can apply in two ways: the whole period's volume billed at the tier reached, or only units above each threshold at the lower rate8. Ask which your contract uses, what volume counts and over what period it's measured; see Tier and volume-discount verification and Charging list price instead of negotiated tiers.
Treat each rate change as a new version of the card, with its own effective date7, even when it arrives as a notice or email. Check each line against the version in effect on the date your contract uses (step 4), since one billing period can span two versions. For which date starts a new rate, billing periods that straddle a change and later invoices that re-bill earlier months, see Outdated rates after a contract change.
Worked example: checking one month's rates (illustrative)#
On illustrative rates (not benchmarks), one month's check finds a confirmed $96 variance, an $80 difference to explain and one line that can't be checked yet. The rates are those in How 3PL pricing works: an overview of the rate card, in a month with 1.5 project hours.
| Line | Billed qty | Billed amount | Billed rate | Card rate | Result |
|---|---|---|---|---|---|
| Order fee (includes first unit) | 2,000 | $3,500.00 | $1.75 | $1.75 | Matches |
| Additional units | 1,200 | $576.00 | $0.48 | $0.40 | $96 over |
| Pallet storage | 40 | $880.00 | $22.00 | $20.00 | $80 to explain |
| Bin storage | 100 | $300.00 | $3.00 | $3.00 | Matches |
| Receiving | none shown | $96.00 | n/a | $12.00 per pallet | Can't check |
| Returns | 60 | $210.00 | $3.50 | $3.50 | Matches |
| Special projects | 1.5 hours | $67.50 | $45.00 | $45.00 | Rate matches |
- Additional units: $576 ÷ 1,200 = $0.48. Dollar impact = ($0.48 − $0.40) × 1,200 = $96. In this illustration, the 3PL's billing system still carried the rate from before a renegotiation.
- Pallet storage: $880 ÷ 40 = $22.00, so $80 needs explaining. That could be four pallets over the height cap billed as two positions each (44 × $20 = $880), a tall, aged-stock or overflow rate folded into the line, or a rate that changed. Ask for the pallet or position list before you call it an overcharge.
- Receiving: $96 with no quantity. Eight pallets at $12 would match; check your own inbound records and ask for the count.
- Special projects: $67.50 ÷ 1.5 = $45, matching the card; confirm the work was approved and which billing increment applies.
Next, ask the 3PL for the pallet list and the receiving count, and raise the $96 in writing inside your dispute window (How to dispute a 3PL invoice: process and etiquette).
What a checkable invoice looks like#
A checkable invoice shows quantity, unit and rate on every line, as the US federal rule for a proper government invoice requires (FAR 32.905, effective March 13, 2026)9. Other markers:
- Fee names that match the card, or a mapping from the 3PL.
- An updated card, with an effective date, before any change.
- A shipment-level file when shipping is billed on the 3PL's own card.
- Time to get missing detail: a 30-day dispute window is common and 14 days is short.
In about a quarter of Implentio customers' 3PL contracts with storage fees, at least one storage line shows only a dollar amount.
Common mistakes and red flags#
These mistakes let wrong rates through, or turn correct ones into disputes:
- Checking totals instead of rates. Split or merged charges can pass a total-to-total check4.
- Comparing with the latest card instead of the version in effect for the line's date7.
- Assuming a matching rate means a correct line. Quantity and scope need their own checks.
- Treating every variance as an overcharge. Transcription errors can run "in both directions"1; log undercharges with the same evidence. See Not every variance is an overcharge: undercharges, manual items and special projects.
- Accepting a rate change by email without an updated card and effective date.
- Paying dollar-only lines without asking for the quantity.
- Flagging fraction-of-a-cent differences before running the rounding test.
For the wider error catalog, see The 25 most common 3PL billing errors and how to spot each.
Questions to ask your 3PL#
- Can every invoice line show the quantity, unit and rate?
- When prices change mid-period, which date sets the rate: the activity date, the billing period or the invoice date?
- Will you send an updated rate card with an effective date before any change takes effect?
- Which rate card applies at each warehouse I use?
- How are volume tiers measured, over what period, and does the tier rate apply to all units or only those above the threshold?
- Does the order fee include the first pick?
- For shipping on your rates, which zone and weight chart applies to each service?
- How do you round line amounts and hourly work?
Checklist: rate verification#
Run this on each invoice you check, using the rate verification template (Appendix: templates):
For the full audit, use the step-by-step invoice audit checklist (Appendix: checklists).
FAQ#
I negotiated lower rates, but my invoice didn't change. What should I do?
Find the signed card or amendment that shows the new rates and their effective date. Send it to the 3PL with the lines billed at the old rate and the dollar impact of each, and ask for a credit. See Outdated rates after a contract change.
Is every rate difference an overcharge?
No. A difference can be rounding, a quantity or unit question that looks like a rate difference, approved work outside the card, or an undercharge. Log each one with its direction and evidence before you raise it.
What if a fee on my invoice isn't on my rate card at all?
Ask for its definition and contract basis in writing before you pay. Check whether your contract prices unlisted services at the 3PL's standard rates; one 3PL's audit guide names a default schedule as one cause of mismatches5. See Fees you should never accept without definition.
How often should I check rates?
Check the first invoice covering work after any rate change line by line. For a regular cadence and sampling, see How often to audit: every invoice, sampling or quarterly?
Sources#
9 sources cited
- Datex, "How Cold Storage Billing Works, and Where 3PLs Lose Revenue" (Sep 9, 2026; modified Sep 14, 2026). https://datexcorp.com/blog/how-cold-storage-billing-works-and-where-3pls-lose-revenue/
- City of Orlando, Office of Audit, "Procurement Contract Audit Phase II (Annual Contracts)," Report No. 19-05 (released Dec 5, 2018). https://www.orlando.gov/files/sharedassets/public/departments/exo/audits-and-reviews/fy-2019-reports/19-05-annual-contracts-phase-ii-audit.pdf
- Racklify, "When to Create or Update a Rate Card: Timing & Triggers" (Nov 19, 2025; updated Sep 22, 2026). https://racklify.com/encyclopedia/when-to-create-or-update-a-rate-card-timing-triggers/
- Beacon, "How to Check Freight Invoice Overcharges" (Sep 10, 2026; ocean freight). https://beacon.com/resources/how-to-check-freight-invoice-overcharges
- 3PL Center, "How to Audit Your 3PL Invoice" (May 27, 2026). https://3plcenter.com/how-to-audit-your-3pl-invoice/
- Cleverence (Ashley Taylor), "Avoiding Billing Discrepancies: Tips for Accurate 3PL Invoicing" (Dec 11, 2025). https://cleverence.com/articles/3pl-business/avoiding-billing-discrepancies-tips-for-accurate-3pl-invoicing-4827
- Invoice Data Extraction (David Harding), "3PL Invoice Reconciliation: A Buyer's Guide to Billing Audits" (Mar 10, 2026; updated Mar 23, 2026). https://invoicedataextraction.com/blog/3pl-invoice-reconciliation-guide
- Stripe, "Set up tiered pricing" (documentation, undated; accessed Oct 8, 2026). https://docs.stripe.com/subscriptions/pricing-models/tiered-pricing
- Acquisition.gov, "FAR 32.905 Payment documentation and process" (FAC 2026-01, effective Mar 13, 2026). https://www.acquisition.gov/far/32.905