$125M+ in invoices audited — See how CostCrunch catches overcharges
Buyer's Guides

Your Quote Said One Thing. Your Invoice Says Another. (2026)

You did the work. You sent the material list to three supply houses, you normalized the quotes until the same fitting lined up on the same row, and you awarded the buy to the vendor who came in 6% under the others.

Nine weeks later, nobody knows whether you actually paid that price.

This is the most under-examined gap in construction purchasing. Enormous effort goes into getting the price right at the front of the transaction, and almost none goes into verifying that the price at the back of the transaction is the same number. The quote is a negotiation artifact. The invoice is where the money leaves. They are compared far less often than anyone would guess.

We build CostCrunch, which audits material invoices, so we see this from a particular angle — treat the last section accordingly. But the mechanisms below are not our opinion. They are the ordinary operating behavior of supply-house billing systems.

Why this gap exists at all

Look at where the two documents live.

The quote lives with whoever ran the buy — a purchasing agent, a PM, sometimes the owner. It arrives as an email attachment, gets used for a decision, and then goes into a folder or nowhere at all.

The invoice lives with accounts payable, weeks later, in a stack of forty others. The person approving it was not in the negotiation, does not have the quote, and is being measured on getting payables out before the discount window closes.

Nobody designed this gap. It is just the natural result of the quote and the invoice being handled by different people with different objectives, at different times, in different systems.

And the tooling does not close it. Every product in the bid leveling and quote comparison category is built to end at the award decision. Procore, BuildingConnected, SmartBid, Beck Technology's DESTINI Bid Day, and the 2026 crop of AI leveling tools all stop when the subcontract or the PO is signed. That is a reasonable scope for a leveling tool. It just means that if leveling is the only thing you bought, nothing in your stack ever looks at the invoice.

The eight ways the price drifts

None of these are fraud. Most are not even mistakes. They are what happens when a quote and an invoice are produced by different processes.

1. The unit price simply changed

The most common one, and the least visible. A quote is a snapshot of a price file. Supply houses update price files continuously — monthly is typical, weekly happens in volatile categories — and when your order is entered, it prices off the current file rather than the one your quote came from. On a 300-line order, twelve lines moving 3% is invisible in a total.

2. Freight that was included got added

Quote said delivered. Invoice has a freight line. This happens when the quote was written by a salesperson applying a courtesy and the invoice was generated by a system applying a rule. It also happens when the order shipped in three partial deliveries and each one triggered its own freight charge, because the free-delivery threshold applied to the order and not to each drop.

3. Minimum-order and small-order fees

The quote assumed one delivery of the whole list. Reality was the whole list minus four backordered items, which came later as a $340 order that fell under the free-delivery minimum. The unit prices are all correct. The buy still cost more than the quote said.

4. Substitutions

You were quoted one manufacturer's fitting; a comparable fitting from another manufacturer was shipped because the first was out. Sometimes that is cheaper. Frequently it is not, and the substitution was made at the counter or in the warehouse by somebody with no visibility into what you were quoted. The line description on the invoice will not match your quote closely enough for anyone to notice on a fast read.

5. Unit-of-measure mismatch

Quoted per each, invoiced per box of 25. Or quoted per hundred feet, invoiced per foot. The unit price on the invoice looks wildly wrong or suspiciously cheap, gets mentally corrected by whoever is scanning it, and the extended amount is never checked. UOM errors are the single largest-magnitude category of invoice error, because when they go wrong they go wrong by a factor, not a percentage.

6. The quote expired and nobody noticed

Most material quotes carry a validity window, often 30 days, frequently shorter in volatile categories. If your buy happened in week six, the vendor requoted from the current file — legitimately — and unless somebody compared, the only record of the original number is in an inbox.

7. Escalation and index clauses

Increasingly common on steel, copper, and anything with a volatile input. The quote references an index or an escalation formula rather than a fixed price, which means the invoice is supposed to be different from the quote. That is fine. What is not fine is that almost nobody recalculates the formula to check that the invoice reflects the index correctly, because doing so requires the contract terms, the index value on the right date, and about twenty minutes per line.

8. Tax applied on the wrong basis

Freight taxed where it shouldn't be, material taxed at the wrong jurisdiction's rate for the delivery address, or a resale exemption not applied. Small per invoice, entirely systematic, and it compounds all year.

Why three-way matching doesn't catch it

The standard answer to invoice discipline is three-way matching: the invoice agrees with the purchase order and the receiving record. Every procurement platform does some version of it, and it is genuinely valuable — it catches quantity errors, phantom deliveries, and duplicate billing.

It cannot catch this, for a structural reason worth stating precisely.

Three-way matching verifies internal consistency. It does not verify price. If the PO was issued at $18.40 and the invoice says $18.40 and the receiving record confirms the quantity, the match is clean and the transaction is approved. Whether $18.40 was the number you were quoted, or a good price, or 11% over market, is outside what three-way matching examines. Every document agrees. You still overpaid.

There is a second, narrower problem: the PO is often generated from the quote by someone retyping it, so an error introduced at that step is baked into the PO and then confirmed by the match. The system agrees with itself.

And a third: three-way matching only works on spend that had a PO. Counter pickups, will-calls, and emergency runs typically don't, and for most contractors that tail is a meaningful share of material spend and the least controlled part of it.

Why AP doesn't catch it either

Not for lack of care. Because of arithmetic.

A single supply-house invoice can run past forty line items. A contractor doing $500K a year in material is looking at thousands of lines annually, arriving across dozens of invoices a month, each requiring a comparison against a quote that AP does not have to a purchase history that lives somewhere else.

Nobody reads the 47th line item. The rational strategy under time pressure is to check the total against the expected total, confirm the vendor and the job, and approve. That strategy catches large errors and systematically misses small recurring ones — which is exactly the shape this problem has.

Across $125M+ in audited invoices, contractors on our platform are overpaying an average of 4-8% on materials. On $500K of annual material spend, that is $20,000 to $40,000 a year. It does not arrive as one $30,000 error anybody would notice. It arrives as a few dollars a line, thousands of times.

Closing the loop

Four things, in order of how much they help relative to effort.

1. Keep the quote as a reference document, not a decision input. The single highest-leverage change is filing the awarded quote somewhere the person approving the invoice can find it, attached to the job or the PO. Most of this problem is a document-availability problem before it is an analysis problem.

2. Compare at the line, not the total. Totals hide everything described above. If you only ever check invoice totals against quote totals, unit-price drift, substitutions, and UOM errors all pass cleanly, and freight is the only thing you catch.

3. Benchmark against something outside your own paperwork. Comparing the invoice to the quote tells you whether the vendor honored the quote. It does not tell you whether the quote was any good. Those are separate questions and both matter — a vendor can honor a quote precisely and the quote can still have been well over market.

4. Watch the trend, not the transaction. Price creep is invisible at the invoice level and obvious at the twelve-month level. The same fitting at $18.40, then $18.95, then $19.60 across three quarters is three unremarkable invoices and one significant problem.

What this means when you shortlist tools

Ask one question of every product in this space, whichever half of the category it comes from: after the award, does anything look at the invoice?

For most leveling and quoting tools the honest answer is no, and that is a defensible scope. It just means you need something else for the second act, because otherwise you have automated the negotiation and left the leak untouched.

Of the tools we surveyed, only a few reach past award at all: Field Materials with three-way matching and AP automation, SubBase with line-item invoice reconciliation, Kojo with invoice scanning against its own POs, and Trueleveler with PO and invoice reconciliation. All of them verify the invoice against your own documents, which closes the drift gap but not the market gap.

Where CostCrunch fits

We build this, so weigh it accordingly.

Quote comparison reads supplier quotes in whatever format they arrived and matches line items across them. Invoice auditing then checks every line of the eventual invoice against your own purchase history and local market rates, and flags overcharges, duplicate charges, quantity errors, and price creep before you approve. You forward invoices to an email address; nothing in the field changes.

The reason those two functions sit in one product is the argument this whole post makes: the negotiation and the billing are the same transaction, and separating the tools that watch them is how the savings leak.

What we do not do: requisitions, purchase orders, receiving, or inventory. If material ordering is genuinely chaotic, a procurement platform will help you more than we will — several of our own comparison posts recommend one outright. And we do not do subcontractor bid leveling at all.

Frequently asked questions

Why is my invoice higher than the quote?

The most common causes are a unit price that moved because the vendor repriced from a newer price file, freight added on an invoice where the quote said delivered, minimum-order or small-order fees on partial and backordered shipments, a substituted item at a different price, a unit-of-measure mismatch between the quote and the invoice, or a quote that expired before the order was placed. Escalation or index clauses on volatile materials like steel and copper also produce legitimate differences that still need checking against the formula.

Doesn't three-way matching catch invoice price errors?

Only partly. Three-way matching confirms that the invoice agrees with the purchase order and the receiving record, which catches quantity errors, phantom deliveries, and duplicate billing. It does not evaluate whether the price on the purchase order was correct or competitive, so an invoice can match its PO perfectly while the price is well above what you were quoted or well above market. It also only covers spend that had a purchase order, which excludes counter pickups and emergency runs.

How much does price drift between quote and invoice actually cost?

Across $125M+ in invoices audited through CostCrunch, contractors overpay an average of 4-8% on materials, driven by price creep, duplicate charges, quantity errors, and inconsistent supplier pricing on identical items. At $500K in annual material purchases that is roughly $20,000 to $40,000 a year. It rarely appears as a single large error; it accumulates a few dollars per line across thousands of lines.

How long is a material quote valid?

It varies by vendor and category, but 30 days is typical and volatile categories are often shorter. The practical risk is that a buy placed after the window expires gets repriced from the vendor's current price file, legitimately, and unless someone compares the invoice to the original quote there is no record of the difference. Always check the validity terms on the quote itself, and re-confirm pricing on any order placed late.

What is the difference between checking an invoice against a purchase order and against market rates?

Checking against a purchase order verifies that the vendor billed what you agreed to — it confirms the transaction is internally consistent. Checking against market rates verifies that what you agreed to was a competitive price in the first place. These catch different problems. A vendor can honor a quote exactly while that quote was 11% above market, in which case every document matches and the money is still gone.

Do bid leveling tools check invoices?

Almost none do. Bid leveling is designed to end at the award decision, and the leveled comparison is a decision artifact rather than an ongoing control. Products in that category, including Procore Bid Management, BuildingConnected, SmartBid, and Beck Technology's DESTINI Bid Day, do not examine what gets billed afterward. Verifying the invoice belongs to invoice auditing or accounts payable, which means most firms need a second tool for it.

Which invoice errors are largest — percentage or unit-of-measure?

Unit-of-measure mismatches produce the largest single errors, because when a unit basis is wrong the amount is wrong by a factor rather than a percentage — quoted per each and invoiced per box of 25, or quoted per hundred feet and invoiced per foot. Percentage-level unit-price drift is far more common but individually small, which is why it survives review: it looks plausible on every line and only becomes material in aggregate.

How do I catch price creep on materials I buy repeatedly?

Compare the same item across time rather than the same invoice against its quote. Price creep is invisible at the transaction level and obvious over twelve months: the same fitting at $18.40, then $18.95, then $19.60 across three quarters reads as three unremarkable invoices and one significant trend. That requires normalized item identity across supplier naming, since the same product often appears under different descriptions on different invoices from the same vendor.


The uncomfortable summary is that most contractors negotiate carefully and verify casually. The negotiation gets a meeting, three quotes, and a spreadsheet. The verification gets a glance at a total before a payables run.

If you only fix one thing from this list, make the awarded quote visible to whoever approves the invoice. Everything else is a refinement on that.

Try CostCrunch free on your own invoices and see how far your billed prices sit from the ones you agreed to.

Last verified: August 19, 2026. Competitor details are sourced from public product documentation and third-party review sites and change frequently — if something here is out of date, tell us and we'll correct it.

Published on November 11, 2025 by Alex Preston · Updated August 19, 2026
Back to Blog

Stay Updated

Subscribe to our newsletter to get the latest insights and tips delivered directly to your inbox.