Skip to content
Skip to content

Learn

How do you calculate a copper price escalation clause using the PPI?

Divide the current value of BLS series WPU102502 (Copper and Brass Mill Shapes) by its value at contract signing, then apply that ratio to the copper part of the price. Over the 12 months to September 2026 the ratio was 1.300. A usable clause also names an averaging window, a rule for revised values and missing months, and a cap.

Latest · WPU102502
835.342
Sep 2026Revisable
Year on year
+30.0%
from 642.679
5 years
+39.1%
from Sep 2021
Record
High
highest since 2016

The mechanism

A copper escalation clause ties the copper-related part of a contract price to a published index instead of fixing it at signing. The benchmark is the BLS producer price index for Copper and Brass Mill Shapes, series WPU102502.

Copper is a component cost in electrical, HVAC, and wiring-heavy contracts. Its price follows the world copper market, which can move well outside normal contract contingency in a single term. Indexing the copper part moves that risk onto the published series.

Copper and Brass Mill Shapes against the copper price, both set to 100 in the first month they share
Sep 2026WPU102502 221Copper price 256
10015020025020182020202220242026

Sources: WPU102502 (Copper and Brass Mill Shapes); IMF Primary Commodity Prices via FRED, PCOPPUSDM.

Since 2016, this index has followed the copper price in the same month and moved about two thirds as far as it over a year.

Over the 12 months to Sep 2026, the copper price rose 44.8% and this index rose 30.0%.

Same month
Lag behind the copper price. Monthly changes line up best in the same month.
−12.7% to +64.8%
Range of 12-month changes since 2016.
27%
Share of months that moved more than 3%. The median month moved 1.80%.

The calculation, step by step

  1. Base index value. The index value at the base period, usually the month of contract signing or bid submission.
  2. Current index value. The index value at the adjustment date, usually the month of delivery or invoicing.
  3. Ratio. Current value divided by base value.
  4. Adjustment. The ratio applied to the copper-affected portion of the contract price, not necessarily the whole contract.

Take a contract signed in September 2025 with $200,000 of copper mill shapes scope, invoiced in September 2026.

Base index, Sep 2025642.679
Current index, Sep 2026 (revisable)835.342
Ratio, 835.342 ÷ 642.6791.2998
Amount at signing$200,000
Adjustment added to that amount+$59,956

Live figures from the stored series, updated when the provider publishes. Sep 2026 can still be revised, so a clause should say whether the invoice uses the first published value or is trued up later.

Where clauses go wrong

  • No series code. "The copper index" is not a series. BLS publishes several copper series, including mill shapes (WPU102502), wire and cable (WPU10260314) and the Copper and Copper Products special index (WPUSI019011). They do not move together. Name the exact code so there is nothing to argue about later.

Over the 12 months to Sep 2026, these series moved differently. On the same $200,000, the gap between the highest and lowest is $26,940.

SeriesWhat it covers12 monthsOn $200,000
WPU102502Copper and Brass Mill Shapes+30.0%+$59,956
WPU10260314Copper Wire and Cable+30.8%+$61,647
WPUSI019011Copper and Copper Products+43.4%+$86,896
  • No averaging window. A single month's index value is more volatile than a 3-month rolling average. Clauses should state which is used.
  • No cap or floor. Without a cap, an index spike passes through in full, which can make the clause commercially unworkable in a large swing.
No rule for revised valuesBLS can revise each value for 4 months after it is first published. Right now that covers Jun 2026 to Sep 2026. Say whether the first published value is final for invoicing, or whether invoices are trued up once BLS revises it.

Run this on your own numbers

Price history

Sep 2026 · latest835.342+39.1%since Sep 2021
50060070080090020222023202420252026835.3
Move along the line to read any month

Track your contract

Pick the signing month and amount to see today's adjusted price.

Saved in this browser only. Come back after the next print to see what changed.

Related reading

When should a contract use a fixed price instead of an escalation clause?

A fixed-price contract sets one price for the term and puts all cost-index risk on whichever side accepted that price. An escalation clause instead shifts a defined slice of that risk to the buyer as costs actually move, in exchange for a starting price with no built-in risk premium. Short-term, low-volatility contracts usually do not need escalation. Long-term or volatile-input contracts usually do.

Read more →

See this calculated automatically

Escalake tracks the index, applies the formula, and gives both sides a number they can confirm, no spreadsheet required.