A national material price index and your local pricing are measuring two different things, and that is the whole problem. The national index measures what producers charge, averaged across the country, for a broad basket of goods. Your invoice is the output of a specific negotiated rate, at a specific branch, on a specific account, on a specific day. A national series can tell you the market moved 8% in a year. It cannot tell you whether your branch passed you 4% or 19%, because it never looked at your branch.
That is not a knock on the public data. The producer price indexes published by BLS are the best free construction cost data anyone has, and you should be reading them. But they answer the question “what happened to the market,” and the question you actually have at 9pm with a stack of invoices is “what happened to me.” Only your own invoice history answers that one.
Ahead: what a national index actually measures, the layers that sit between it and your unit price, why two shops on the same street pay differently for the same part, where the national number genuinely earns its keep, and how to check your own pricing against it without a spreadsheet degree.
What a national material price index actually measures
The series everyone quotes for construction is the BLS producer price index for inputs to new nonresidential construction, goods. It ran 166.9 in January 2026 and 177.5 in April 2026 (preliminary), which is about 6.4% in three months. There is a matching series for inputs to residential construction, which read 344.247 in June 2026 (preliminary) against 203.4 in 2016.
Three things about those numbers matter before you use them for anything.
They are index levels, not prices. 177.5 does not mean anything on its own. Each series is anchored to a base period (the nonresidential goods series is based to June 2010, the residential one to June 1986), so the only meaningful operation is comparing two dates in the same series. Comparing 177.5 to 344.247 is comparing a thermometer in Fahrenheit to one in Celsius.
They are broad baskets. “Inputs to nonresidential construction” includes diesel fuel, asphalt, and lumber alongside the copper and steel you care about. When AGC reported that the input index rose 1.8% in May 2026 and 8.4% year over year, a large share of that move was diesel, up 105.9% year over year. If you run four vans and buy copper, that basket is not your basket.
Recent months are preliminary. BLS marks recent readings with a (P) and revises them. A number you pull today can move next month.
Narrower series are better for a trade. Copper and brass mill shapes went from 645.990 in January 2025 to 803.275 in June 2026 (preliminary), roughly 24% over that stretch. Steel mill products went from 315.369 in January 2026 to 361.439 in June 2026 (preliminary), about 15% in five months. Plumbing fixture fittings and trim sat flat at 453.198 from March through June 2026 (preliminary). Even inside the same trade, different families moved in different directions in the same window, which is the first hint that a single national average is a poor proxy for your invoice.
The four layers between the index and your invoice
A producer price index measures a price at the top of the chain. Your invoice is at the bottom. Here is what sits in between, and whether a national series can see any of it.
| Layer | What sets the price | Can a national index see it? |
|---|---|---|
| Manufacturer output price | Mill costs, tariffs, demand | Yes, this is exactly what PPI measures |
| Distributor into-stock cost | Standard price less a negotiated special pricing agreement | No, SPA terms are private per distributor |
| Your category discount | Your contract multiplier off list, by product category | No, it is a private agreement on your account |
| The transaction itself | Which branch, which account, which quote, which UOM | No, and this layer moves week to week |
Layer two is the one contractors underrate. Manufacturers set either a standard price or a negotiated into-stock price per distributor, and the distributor then files a reimbursement claim with supporting documentation to collect the difference. One analysis of distribution pricing estimates that 25% to 50% or more of a distributor’s revenue carries vendor cost supports, typically a 10% to 20% reduction against standard into-stock pricing, with variation of 25% or more across similar opportunities. A national index is blind to every dollar of that.
Layer three is your own agreement, and it is not one number. A distributor ERP built for the electrical trade holds category-specific percentage discounts off list: one rate on lighting, another on wire and cable, another on breakers and panels. So a national move in copper hits your wire line hard and your device line barely at all, in proportions that depend entirely on the agreement sitting on your account. The arithmetic of those rates is worked through in column pricing at an electrical distributor.
Layer four is the one that produces the surprises. Your price is a lookup joining your account, the SKU, and the branch, and breaking any one of them drops you to a default. That mechanism is the subject of contract price versus counter price, and it means a national index and your invoice can disagree for reasons that have nothing to do with the market at all.
Why two shops on the same street pay different prices
This is the part the public data cannot represent, and contractors have been saying it out loud for years. On the Mike Holt forums, one electrical contractor put the spread plainly: “Electrical supply houses have different prices for just about everyone. I have seen them charge everything from 15% of list all the way up to list price for the same item to different customers.” The same poster adds a detail that should end any argument about national averages: “I have had projects where two different P.O.s with the same part on it got charged two different prices.”
Same part, same buyer, same week, two prices. No national index has the resolution to describe that, because the variation is not in the market. It is in the paperwork.
There is a second reason the spread is wide, and it is one many shops never act on. Another contractor in that corpus notes: “One of the things that many contractors don’t realize is they need to establish accounts with the supply houses and have them set up SPA prices with the manufactures. This will give you much better pricing. The SPA prices are less that the suppliers cost for many items.” Whether you are on SPA pricing on a given part number is invisible to you and invisible to any index. It is worth asking about directly, and the framing for that conversation is in how to negotiate with your supply house.
None of this means the counter is working against you. Distributors classify accounts into pricing buckets rather than pricing every customer individually, and price from published sheets with columns showing several gross profit percentages, plus blanket pricing and customer classification. Branch managers carry real autonomy because they know their local market. The system produces variation as a matter of design, not as a matter of intent. It just means the average of everyone’s price is not evidence about yours.
Where the national index genuinely earns its keep
Three jobs, and it is very good at all three.
Escalation clauses need an outside index, not your invoices. An escalation clause adjusts a contract price against an agreed objective market index, in both directions. ConsensusDocs 200.1 is marketed as the only standard material price escalation clause, and it works by naming the specific impacted materials and tying them to that index. Commentary on the clause names BLS monthly publications as an objectively verifiable index source, typically paired with a trigger threshold and a cap. Your own purchase history is the wrong instrument here, because the counterparty cannot audit it and will not agree to it. Adjustment is either index-based or cost-based on documented actual cost, and the index route is the one owners sign.
Explaining a cost increase to someone who did not have your year. AGC publishes the input index alongside what contractors actually charge, and the gap is the most useful single fact in construction economics right now: in May 2026, input prices rose 8.4% year over year while contractors’ bid prices rose only 3.5%. April 2026 showed the same shape, 6.6% against 3.6%. That gap is your margin, and it is published by a third party with your industry’s name on it.
Sanity-checking a supplier’s explanation. If your rep tells you copper moved, the copper series will show you whether it moved and by how much. That is a fair check, and it works in both directions: sometimes the answer is yes, it moved more than they charged you.
What the index cannot do is settle a line item. “The national index for plumbing fixture fittings was flat from March through June” is a true statement that tells you nothing about whether your branch was right to bill a fitting at three prices in four months.
How to check your local pricing against the national number
You need two things: your own unit price history, and one or two relevant series. Not the broad basket, the narrow one for your trade.
- Pick five to fifteen SKUs you buy every month. Same part number, same unit of measure, same branch. These are your bellwethers.
- Pull your own unit price for each on two dates, twelve months apart, or January and today. Compute the percentage change per SKU.
- Pick the matching BLS series and compute the same percentage change across the same two months. Copper fittings route through copper and brass mill shapes, and wire through copper wire and cable, 530.917 in January 2026 against 571.299 in June (preliminary). PVC routes through plastics pipe, which read 171.280 in January 2026 and 182.609 in June 2026 (preliminary), with plastics pipe fittings and unions at 334.420 and 354.724 alongside it. Neither one splits PVC from CPVC from PEX, but both beat the industry index for the purpose. HVAC equipment routes through unitary air-conditioners, except air source heat pumps, 280.520 in January 2026 against 297.025 in May (preliminary), or heat pumps, 146.923 in January against 141.564 in June (preliminary). Use the one that matches what you install, because those two moved in opposite directions this year, and note that WPU114802 publishes about a month behind the rest, so May is its newest reading while everything else already shows June. Ductwork routes through sheet metal air-conditioning ducts and stove pipe, 300.831 in January 2026 against 304.143 in June (preliminary), which is much closer to what you buy than the broad sheet metal products series.
- Compare the two percentages, not the two levels. The levels are on different scales and mean nothing side by side.
- Sort your SKUs by the gap. A part that beat the index is fine. A part that ran well ahead of the index over the same window is a question for your rep, with a date and a number attached.
- Check the boring explanations first before you raise it: unit of measure changed (each versus bag of 100), branch changed, the job quote covering that part expired, or the part number was substituted. Those explain more gaps than pricing decisions do.
The gap itself is the deliverable. You are not trying to prove the index is right. You are trying to find the four or five SKUs where your price and the market visibly parted company, because that is a short, specific, checkable list you can take to a rep, and it is the same list that turns material price creep from a feeling into a document.
If you want the full method rather than the spot check, including how to weight the basket by your own spend, that is in how to build your own material price index from your invoices.
The short version
- A national material price index measures producer prices across a broad basket. Your local pricing is set four layers downstream, and the index cannot see any of those layers.
- Compare percentage changes between two dates in the same series. Never compare index levels across series, because the base periods differ.
- Use narrow series matched to your trade, not the headline construction basket, which carries a lot of diesel.
- Published national data is the right instrument for escalation clauses, for explaining cost pressure to an owner, and for sanity-checking a supplier’s story.
- It is the wrong instrument for settling a line item. Only your own unit price history does that.
- Recent BLS readings are preliminary and get revised. Re-pull before you put a number in a letter.
Sources
- Inputs to new nonresidential construction, goods (WPUIP2312001), BLS
- Inputs to residential construction, goods (WPUIP2311001), BLS
- Copper and brass mill shapes (WPU102502), BLS
- Steel mill products (WPU1017), BLS
- Plumbing fixture fittings and trim (WPU1054), BLS
- Copper wire and cable (WPU10260314), BLS
- Plastics pipe (WPU07210603), BLS
- Plastics pipe fittings and unions (WPU07210604), BLS
- Unitary air-conditioners, except air source heat pumps (WPU114802), BLS
- Heat pumps (WPU11480734), BLS
- Sheet metal air-conditioning ducts and stove pipe (WPU10730120), BLS
- Prices for Construction Materials Climb at Highest Rate Since Pandemic, AGC of America
- Surging Materials and Energy Costs Drive Construction Input Prices Sharply Higher in April, AGC of America
- ConsensusDocs 200.1 Time and Price Impacted Materials
- De-Escalating the Impact of Price Escalation, ConsensusDocs
- Escalation Clause, Procore
- SPA Pricing and SPA Rebate Execution Best Practices, Vendavo
- Special Price Agreements and Rebates Are Costing You, SPARXiQ
- ERP for Electrical Distributors: Catalog Complexity and Contractor Pricing, Bizowie
- Pricing Strategy Starts With Experience, Electrical Trends
- Ethics of sharing competing supply house prices with each other, Mike Holt forums
- Are you guys actually getting better pricing with your distributor vs retail, Mike Holt forums