Method · 6 min read
Price, volume and mix analysis: how to explain a revenue gap
Revenue moved by 15,007 and someone will ask why. Price, volume and mix analysis answers that question with numbers that add up, not with a story.
What the bridge answers
Between a baseline period and a current period, revenue rarely moves for a single reason. Prices went up somewhere, volumes fell somewhere else, the sales mix drifted toward cheaper items, two products launched and one was delisted. Each of those is a different decision, owned by a different person, and a single percentage hides all of them.
A price, volume and mix bridge (a PVM bridge, or revenue bridge) walks from the old revenue to the new one, one explanation at a time. It is usually drawn as a waterfall: two full bars for the two periods, and floating bars in between, one per effect.
What makes it trustworthy is not the chart. It is the arithmetic: the effects must add up to the observed change, exactly. If they do not, the bridge is wrong and should say so.
The five effects
Price effect
What changed because you sold at different prices. For each product sold in both periods, the price change multiplied by the units sold today. Valuing it at current volumes is a convention: the total is the same either way, but the split between price and volume is not, which is why the choice belongs on the screen and not inside a formula.
Volume effect
What changed because you sold more or fewer units overall, valued at the baseline average price. It answers the growth question without borrowing anything from price.
Mix effect
What changed because the composition of your sales shifted, even at constant prices. Selling the same number of units at the same prices, but more of the cheap product, lowers revenue. Without a mix effect, that loss is blamed on price or on volume, and the wrong team is asked to fix it.
New products
Revenue from products with no sales in the baseline period. A product with no baseline has no price change and no volume change, so it belongs in its own bar rather than distorting the other two.
Discontinued
Revenue lost from products you stopped selling. It is the symmetric case, and it is the effect most spreadsheet templates get wrong.
A worked example
The figure below is the sample data set built into the tool: twenty products, two categories, one launch and one delisting, over two half-years.
Revenue bridge · 2025-H1 → 2025-H2
Read it left to right. Start on the baseline bar, add or subtract each floating bar, and land on the current bar. Five short stories instead of one unexplained number: that is why the waterfall became the standard way to bring a revenue variance to a committee.
A smaller example makes the separation concrete. Sell 100 units at 10.00 and 50 units at 20.00 in the baseline. Then raise the second price to 21.00 and sell 60 of it. The price effect is 60 × 1.00 = 60. Everything else that moved came from volume and from mix, not from price. That separation, not the totals, is what the bridge is for.
Splitting the effects further
Two of the five effects split into finer parts when your file supports it, and each split adds up exactly to the effect it refines, so the bridge still reconciles.
- Mix divides into a category mix (volume shifting between whole categories) and a within-category mix (shifting between products inside a category), as soon as you map a category column. Map a brand, a channel, a price tier or a promotion flag instead, and you can read the same split along that dimension.
- Price divides into a gross price effect and a discount effect once you provide gross revenue alongside net, which isolates how much of the move came from list prices and how much from discounting.
That is why a bridge built from a rich file can show nine bars instead of five, and still reconcile to the same total.
Why spreadsheets stop reconciling
Most teams maintain a spreadsheet template, and it works until it does not. The usual four failures:
- New and discontinued products folded into price or volume, which makes both wrong.
- No mix effect at all, so composition losses are blamed on the pricing team.
- A silent convention on volumes, changed by whoever last edited the sheet.
- No reconciliation test, so nobody notices any of the above.
Purpose-built tools fix the arithmetic, but sending SKU-level sales data to a third-party server is exactly what most company policies forbid, and rightly so.
Build yours
Your file, your browser, sixty seconds
Drop a CSV or Excel export with a period, a product, a quantity and a revenue column. You get the waterfall, a drill-down from total to group to product, top movers, and Excel and image exports. The whole analysis runs on your machine: nothing is uploaded, and you can check that yourself in the Network panel.
Calculate PVM bridgeQuestions
Which columns are strictly required?
Four: a period label, a product identifier, a quantity and a net revenue amount. Everything else is optional and unlocks something: a unit cost adds the margin bridge, gross revenue adds the discount effect, a category splits the mix.
What happens to rows that cannot be used?
They are counted, explained and left out of every effect, never silently corrected. If they carry revenue, the bridge stops claiming to reconcile and shows the missing amount instead.
Are returns a problem?
Negative quantities are kept as they are and reported. Only the rare case where net returns exceed sales over a whole period falls outside the decomposition, and the products concerned are named rather than hidden.
Does the period have to be a date?
No. Periods are labels, shown exactly as they appear in your file: 2026-05, FY25, Q3-B. Nothing is reformatted and no date is guessed.