A purchase order tolerance threshold is the variance you agree in advance to accept without investigation. There is no standard number, but published practice clusters tightly: invoices that land within 2% to 3% of the PO commonly pass automatically, or full matching applies only above a dollar cutoff such as $5,000. Set both, use whichever is more permissive on small dollars and whichever is stricter on large ones, and carve out a short list of exceptions that get chased at any amount.
So should you chase a $4 variance? On a single line, on a one-off vendor, no. The staff time costs more than the money. On the same SKU from the same supplier for the fourth month running, absolutely yes, because $4 a line at volume is not a variance, it is a price change nobody told you about. That distinction, one-off versus pattern, is what a good tolerance policy encodes and what a naive one destroys.
The rest is mechanics: how tolerances are actually set, the two-dimensional rule that fixes the percentage-only problem, what should never be tolerated regardless of amount, and how to run this in a project office that does not have a dedicated AP team. It assumes you already have the underlying control in place; if not, start with three-way match for contractors.
What a tolerance is actually protecting
Tolerances exist because matching is expensive and most variance is noise. Rounding on a unit price extended over 340 feet of pipe. A weight-based item that shipped at a slightly different weight. A partial delivery that closes the following week.
Three-way matching cross-checks the invoice, the purchase order, and the delivery receipt, and tolerance rules can be set by value threshold, by discrepancy percentage, or by vendor quality rating. That third option is the one most contractors have never considered and it is quietly the most useful: a supplier with a clean twelve-month record earns a looser tolerance than one whose invoices need a correction every other month.
The published named failure modes matching is meant to catch are quantity mismatch, price over tolerance, missing receiving documentation, wrong vendor, and misaligned line-item descriptions. Notice that only one of those five is a dollar variance. A tolerance policy that only looks at dollars is blind to four of the five things it was built to find.
Why a percentage alone breaks in both directions
Set a flat 3% and you get two failures at the same time.
On a $28 box of connectors, 3% is 84 cents. Nothing in your office should ever spend time on 84 cents, and yet a percentage-only rule flags it and routes it to a human. Multiply by a few hundred lines a month and your AP process is now a machine for generating trivial exceptions, which is how people learn to approve exceptions without reading them.
On a $60,000 switchgear release, 3% is $1,800. Nobody sane waves through $1,800 because it happens to be under a percentage. It is a real number, on a long-lead item, and it is exactly the kind of price move that should have arrived as a documented escalation instead of an invoice surprise.
So the rule needs both dimensions. Chase it if it exceeds the percentage and exceeds the dollar floor. Chase it regardless of percentage once it exceeds the dollar ceiling. Everything in the middle passes.
An illustrative threshold set
The numbers below are illustrative, not published standards. They are the shape of a policy, and you should size them to your own volume and to what an hour of your PM’s or bookkeeper’s time is actually worth.
| Band | Rule | Rationale |
|---|---|---|
| Under $25 total line variance | Pass, whatever the percentage | Below any sane cost of investigation on a single occurrence |
| $25 to the dollar ceiling | Chase only if variance exceeds 2% to 3% | The published auto-pass band, applied to real dollars |
| Above the dollar ceiling (illustratively $1,000) | Chase every time, any percentage | Big absolute dollars deserve a human regardless |
| Quantity variance | Chase every time, any amount | Not a pricing question, a delivery question |
| Repeat variance, same SKU, same direction, three times | Chase, any amount | This is price movement, not noise |
| New supplier, first 90 days | Tighten one band | You have no history to earn a loose tolerance |
The published institutional examples are useful for calibrating the dollar dimension. One university publishes two-way match for goods POs at or below $2,499.99 and three-way match at or above $2,500 and for all service POs. That is a different control than a price tolerance, but the logic transfers: the amount of documentary rigor scales with the size of the commitment, and someone wrote the number down.
Two-way matching, incidentally, is the honest fallback when shipping receipts are unavailable, which is most counter runs and a fair number of small deliveries. If you do not have a packing slip, do not pretend you ran a three-way match. Run a real two-way match and tighten the tolerance to compensate for the missing document.
The exceptions that get chased at any dollar amount
This is the part of the policy that earns its keep, and it is short enough to fit on one page taped inside a PO binder.
Quantity variance. Billed for 12, delivered 10. This is not a price question and it should never fall under a price tolerance. It is also the one check that needs no software and no history: a packing slip and an invoice, side by side.
Wrong vendor or wrong PO number. A correctly priced invoice against the wrong PO is a control failure that will double-count a commitment even though the dollars look fine.
A line on the invoice that is not on the PO at all. Freight, fuel surcharge, small-order fees, core charges, environmental fees. These are legitimately not on the PO most of the time, which is exactly why they need to be looked at rather than tolerated. The reasoning for each is in freight, delivery and fuel surcharges and in core charges and environmental fees.
Unit of measure mismatch. Priced per each against a PO written per hundred is not a small variance, it is a two-order-of-magnitude error that sometimes lands inside a percentage band by coincidence when the quantities are small.
Any variance against a written quote. If a quote number is referenced, the tolerance is zero. You have a document that says what the price is. That is the highest-confidence, fastest-to-resolve category in the whole system and it is covered in quote versus invoice mismatch.
Any suspected duplicate. Amount is irrelevant. See how to spot a duplicate supply-house invoice.
Substitutions. A different part number than the PO named, at any price. A substitution is an unpriced change and it also breaks whatever pricing agreement was attached to the original catalog number, which is the same mechanism behind contract price versus counter price.
The pattern rule, which is where the real money is
A single-transaction tolerance is a reasonable control and a terrible detector. It is designed to ignore small variances, and small variances repeated is precisely how prices move without anyone announcing it.
Say a fitting was on the PO at $3.86 and invoices at $3.90. Four cents. Every threshold in your policy correctly waves it through. Next month it is $3.98, then $4.06. Every individual variance passes. Twelve months later you are paying 14% more on a line item you never had a conversation about, and your estimating database still holds $3.86.
The fix is not a tighter tolerance. A tighter tolerance would flood you with noise and change nothing, because each variance would still be individually defensible. The fix is a second, slower check running on a different axis: same SKU, same supplier, unit price over time. That is a monthly report, not a per-invoice control, and it is the whole argument for tracking material price creep separately from AP.
This matters more when the market is moving. AGC reported the producer price index for inputs to new nonresidential construction up 8.4% year over year in May 2026 while contractors’ bid prices rose only 3.5%. In a spread like that, the difference between catching drift in month two and catching it in month ten is the difference between a repriced buyout and a job that goes over on material with nobody able to say when it started.
Splitting the variance so the fix matches the cause
Once you decide to chase something, the first question is which kind of variance it is, because the two kinds go to two different people.
Materials price variance is (actual price minus standard price) times actual quantity, with named causes including rush delivery charges, commodity price swings, and supplier pricing power. That one is a purchasing conversation.
Materials quantity variance is (actual quantity used minus standard quantity expected) times standard price. That one is a field conversation, and no amount of calling the supplier will fix it.
Running both numbers takes a minute and it stops the most common wasted call in a project office: the PM who rings the rep about a $600 overage that turns out to be 40 extra feet of pipe at exactly the right price.
What to do when a variance fails tolerance
The standard response to a mismatch is to withhold payment and request either a corrected invoice or a credit note for undelivered or defective items. Two operational notes on top of that.
Withhold the disputed line, not the invoice. Paying the undisputed portion on time protects your terms and your standing with the supplier, and it removes the argument that you are using a $40 discrepancy to sit on $12,000. This is the single most relationship-preserving habit in AP.
Then track the promised credit to completion. A credit that is verbally agreed and never posts is invisible money: no document, no alert, nothing that will ever surface on its own. Published credit memo practice makes the timeline explicit, with one policy escalating balances uncollected past 45 days to vendor contact and past 90 days to collections. Your version can be simpler, but it needs a date and an owner.
Running this in a project office without an AP team
Four decisions, made once, and then the policy runs itself.
Write the thresholds down and tell your suppliers. A tolerance nobody has written is not a policy, it is whoever is opening the mail that day. Telling your suppliers is not a courtesy, it is efficiency: a rep who knows you check every quote-referenced line to the penny stops sending invoices that vary from quotes.
Give the tolerance to the person who opens the invoice. The whole value of a threshold is that it lets a non-specialist clear 90% of invoices without escalating. If everything still routes to the PM, you have written a document, not built a control.
Use POs on more than the big buys. POs are what let you see committed cost and remaining committed cost at job, cost code, or cost class level, and without them a job can look more profitable than it is right up until the invoices land. A tolerance policy is meaningless on spend that never had a PO in the first place, which in most shops is the counter runs.
Review the thresholds twice a year. If nothing failed tolerance all quarter, your bands are too loose or your POs are being written after the fact. If a third of invoices fail, they are too tight and people have started rubber-stamping.
The short version
- Set two dimensions: a percentage (published practice runs 2% to 3%) and a dollar floor and ceiling. Chase only what breaks both on the low end, and everything above the ceiling.
- A $4 variance once is noise. The same $4 variance three months running is a price change, and no per-invoice tolerance will ever catch it.
- Keep a zero-tolerance list: quantity, wrong vendor or PO, lines absent from the PO, unit-of-measure errors, anything against a written quote, suspected duplicates, and substitutions.
- Consider supplier history as a tolerance input. A clean record earns a looser band; a new supplier does not.
- Split price variance from quantity variance before you make a call, so the issue goes to the right person.
- Withhold the disputed line, pay the rest on time, and track the promised credit with a date and an owner.
- Write the thresholds down, hand them to whoever opens the invoice, and revisit them twice a year.
Sources
- 3-Way Match, Tipalti
- 3-Way Invoice Matching, Stampli
- 3-Way Matching, BILL
- Two-way and three-way match thresholds, University of Georgia Business and Finance
- Credit memo policy, Miami University Accounts Payable
- Materials price variance, AccountingTools
- Direct materials variances, Penn State ACCTG 211
- Job Costs and Purchase Orders, Foundation Software
- Prices for Construction Materials Climb at Highest Rate Since Pandemic, AGC of America