variance-bridge-analyzer
Installation
SKILL.md
Variance Bridge Analyzer
When to use
Use whenever actuals diverge from plan and someone needs to know why, not just by how much — replacing a variance report that states "revenue missed by $400K" with no explanation of whether that came from selling less, selling for less, or a mix of both.
What it does
Decomposes revenue variance into volume effect (the impact of selling more or fewer units than planned, at planned price) and price effect (the impact of realizing a different price than planned, at actual volume) per product via a bundled calculator, with the two effects reconciling exactly to the total variance — no unexplained residual.
Method
- Gather plan and actual volume and price by product — the bridge only works at this level of granularity; a single blended company-wide number can't be decomposed into volume and price effects meaningfully.
- Run the bundled calculator (
scripts/variance_bridge.py), which computes volume effect as the change in units times planned price, and price effect as the change in price times actual units — a standard, consistent sequencing convention that ensures the two effects sum exactly to the total variance. - Check that the bridge reconciles. Volume effect plus price effect should equal the total variance exactly, for every product and in total — if it doesn't, an input is wrong; the whole value of a bridge is that it ties out.
- Read the ratio between volume and price effect to characterize the story: if one effect is more than 1.5x the other, it's primarily a volume story or primarily a price story; if they're closer in size, both levers need investigating.
- Investigate the actual driver behind whichever effect dominates — a volume story might trace to a specific lost account, a channel underperforming, or a competitive loss; a price story might trace to discounting, a mix shift toward lower-priced products, or list price execution failing.
- Report the bridge, not just the conclusion. Showing the product-level table lets a skeptical reader verify the story themselves rather than trusting a one-line summary.
- Carry the finding into the next forecast cycle — if this month's miss was a volume problem in one specific product, next month's forecast should reflect that reality, not just extrapolate the prior plan forward.