Revenue is behind. The useful question is which of three things did it, and mix is the one nobody reports.
Revenue came in £47k behind plan. The meeting will now spend half an hour on whether that is bad.
It is the wrong half hour. £47k behind can be three completely different businesses:
Each has a different cause, a different owner and a different fix. The headline number cannot tell them apart, and a commentary that says "revenue was behind due to market conditions" has not tried.
Take one revenue stream. You need four numbers: budget volume, budget price, actual volume, actual price.
Price and volume are standard. Mix is the one that does not appear in most variance reports, and it is frequently the largest of the three.
Mix is what happens when you sell the right total amount of the wrong things.
A business with four revenue streams can hit its total volume exactly and still miss revenue badly, because the volume landed in the cheaper streams. Nothing went wrong with price. Nothing went wrong with volume. The shape changed.
This matters because mix is the effect managers can see least and influence most. A sales team told "revenue is behind, sell more" will sell more of whatever is easiest to sell, which is usually the cheapest thing, which makes the mix effect worse while making the volume effect look better. The headline barely moves and everyone is working hard.
In practice the pattern looks like this: total volume 3% ahead, revenue 1% behind, because a high-value stream underperformed and a low-value one over-delivered. Reported as a single number, that business looks like it is narrowly missing. Decomposed, it is a business whose product strategy is drifting.
The three effects must add back to the total variance exactly. Build the calculation so it produces a residual column, and that column has to read zero.
This is not a formality. Price × volume decompositions are easy to get subtly wrong — using actual volume where budget volume belongs, or applying the price effect to the wrong base — and the error is invisible in the output because every number still looks plausible. A residual that does not tie is the only thing that catches it.
A decomposition nobody has proved is a decomposition that will be wrong in the month it matters.
Costs decompose too, and the vocabulary is different for no good reason:
An overspend on contractors is a completely different conversation depending on whether you used more days than planned or paid more per day. The first is a demand problem, the second is a procurement problem, and the combined number sends you to the wrong person.
Only decompose costs with a genuine volume driver. For a fixed cost — rent, a licence, a subscription — the variance is the variance, and inventing a volume for it produces two meaningless numbers where one meaningful one existed.
When the decomposition is built, read the total row from the right.
The mix column is the one to look at first, because it is the effect nobody is managing. Then rate, then volume. Most businesses are managing the two effects they can see and none of the one they cannot.
The [Variance Analysis Pack](/products/variance-analysis-pack.html) does price, volume and mix on revenue and usage and rate on cost, with a residual column that proves the decomposition ties, and a bridge from budget profit to actual profit. Worked example included. £24.