29 September 2026 · Field notes · 5 min read · The MetalAlert team

Purchase price variance on metals: why “the market moved” isn't the whole story

Every procurement team that buys metal has seen an unfavorable purchase price variance get written off with the same reason code: the market moved. That's often true, and also often only half the explanation. Here's the part of the number that quietly hides a decision your team actually made.

What PPV actually measures

Purchase price variance is simple to calculate: (Actual Price − Standard Price) × Quantity Purchased. The standard price is whatever baseline you picked, a budget rate, a contract price, or last quarter's average. The actual price is usually the purchase-order price at receipt, though some teams use the invoice price instead. Either way, the output is one number, and one number can't tell you why it moved.

The drivers a reason code usually hides

Procurement teams typically tag PPV against a short list of reason codes: commodity movement, foreign exchange, freight, supplier or negotiation effects, specification or mix changes, and timing, an expedited or spot buy made outside the normal cycle. The stronger version of this practice splits those codes into controllable and uncontrollable buckets, so a buyer is judged on what they actually influenced rather than on the market's mood that quarter.

Timing usually lands in the uncontrollable pile by default, filed under “commodity movement” because the order was, after all, a purchase made during a period when the price happened to be higher. That's the assumption worth questioning.

Where timing hides inside “the market moved”

Two buyers can face the exact same market and post very different variance, because a market moving against you over a quarter and a specific order landing on a specific day inside that quarter are not the same fact. The market's direction over the period is genuinely outside anyone's control. Where inside that move your order happened to land is a separate question, and it's one your process had a hand in answering, whether anyone was steering or not.

This is exactly the failure mode behind the largest unfavorable variances: an unplanned expedite or spot buy made to cover a shortage at short notice. The cost usually traces back to a planning gap, not a purchasing mistake, and it gets logged as a market-movement variance because that's the code that's available, not because the market is what actually decided the price paid.

Making the timing slice visible

You don't need a new system to separate the two effects, just a different comparison. Take the market's average price over the same budget period you're measuring against, then compare that to the price on the specific day you actually bought. If the market rose 8% over the quarter but your order landed on a day it was up only 3%, most of your variance came from the market's general direction: bad luck, or a genuinely unavoidable position. If your order landed on a day it was up 11%, on the other hand, timing did real work in that number, for better or worse, and that's the part a better process could actually change.

This isn't an official accounting method, it's a gut-check. But it turns “the market moved against us” from an unfalsifiable excuse into a specific, checkable claim.

Where MetalAlert fits

MetalAlert doesn't make market risk go away, no tool does. What it gives you is a calibrated probability, per metal, per horizon, that the average price over the coming month or quarter runs at least 2%, 5%, or 10% above or below where it sits today. Set a rule against that number, or against how sharply it changes week over week, and the timing slice of your next PPV reflects a signal you followed or chose to override, not a coin flip you have to explain after the fact with a reason code that doesn't quite fit.

FAQ

What is purchase price variance?

The gap between what you budgeted or last paid for a material and what you actually paid, multiplied by the quantity purchased: (Actual Price minus Standard Price) times Quantity. A negative number is usually called favorable, a positive one unfavorable, though the labels vary by company.

Is purchase price variance the same as the market moving against you?

Only partly. The market's direction over a period is genuinely uncontrollable. But where within that move your specific order landed, the exact day or week you placed it, is a separate factor that often gets folded into the same number without being called out on its own.

How do procurement teams normally categorize PPV drivers?

Common reason codes include commodity movement, foreign exchange, freight, supplier or negotiation effects, specification or mix changes, and timing, such as an expedited spot buy. Stronger teams split these into controllable and uncontrollable categories so buyers are judged on what they actually influenced.

How can a team separate the timing effect from the pure market-movement effect?

A simple gut-check: compare your purchase-day price to the average price over the same budget period. If the market rose 8% over the quarter but you bought on a day it was up only 3%, most of your variance was timing, not the market's overall direction. That comparison isolates the part of the number an alert or a policy could actually have changed.

How does MetalAlert help with purchase price variance?

It doesn't remove market risk, no tool can. It gives you a calibrated probability, per metal and horizon, so the timing slice of your PPV reflects a signal you followed or chose to ignore, not a coin flip you can't explain after the fact.

Turn the timing slice into a number you can defend

The same idea, applied to when to place the order in the first place, is covered in order timing for metal buyers.

Book a walkthrough Join the waitlist
← All posts MetalAlert home