Cross-Lever P&L Sensitivity: Why Price Is King Across Every FMCG Company

How contribution and volume move across a range of price changes

Updated 23 April 2026From the Integrated RGM module, lesson 1: Manufacturer P&L Simulator
What it is

The Price-Contribution Curve

A Price Sensitivity Sweep charts how contribution profit changes as the price moves across a range, typically -15 percent to +15 percent. It keeps every other input fixed. It answers the question that decides every list‑price decision: "At what price does contribution actually peak, and how wide is the zone where the contribution number stays close to that peak?"

The shape: an inverted U with a broad flat top

The curve is typically an inverted U shape:

  • At very low prices, volume is high but margin per unit is too thin to cover costs
  • At very high prices, margin per unit is excellent but volume has collapsed
  • The peak is the price point that earns the most contribution. The top of the curve is usually broad and flat, and that flat stretch is called the Zone of Indifference

Three factors shape the curve

  1. Elasticity. A steeper elasticity means shoppers react more strongly to price. It makes the curve narrower and the zone of best prices tighter.
  2. Contribution margin %. A higher starting margin makes the curve taller. It also moves the peak slightly to the left, because you already earn more on every unit a price rise is about to lose. So each lost unit costs you more, and the best rise is a smaller one.
  3. COGS level. Lower COGS makes the curve taller and moves the peak to the left. It works the same way as a higher margin, seen from the cost side. This chart uses a straight‑line response: each further percent of price costs the same number of units. On that basis, the best net price is (your net price + your full unit cost) / 2, plus your net price divided by twice your elasticity, using the elasticity without its minus sign (1.8 here, not -1.8). Full unit cost here means cost of goods plus outbound distribution for each unit. Today's price matters as much in that formula as cost does, which is why cutting cost lowers the best price too. On this base case, the best net price is $3.80 against today's $3.56. That is the +6.7 percent rise where the contribution curve peaks.

Why the peak lands near +7 percent for a product like this one

Take a mainstream FMCG product with elasticity of -1.8 and a contribution margin around 40 to 45 percent, which is the case this lesson works through rather than a claim about the industry. For this product, at 42.1 percent, contribution peaks at about +6.7 percent above today's price. The formula on the next tab gives +7.8 percent at a 40 percent margin and +5.3 percent at 45, so a few points of margin move the peak by a couple of points of price. From +3 to +7 percent, contribution stays within about 0.6 percent of the peak, which is why the top of the curve looks almost flat. Past the peak, each further point of price takes away more contribution than the one before, and the curve starts to fall away.

+3 to +7%
where contribution stays within about 0.6% of its +6.7% peak, for this worked case at elasticity -1.8 and a 42.1% contribution margin
Formula & calculation

Sweep Calculation

The math behind the sweep uses five iterative formulas and one closed‑form optimum. The iterative formulas run once for each price step, and together they draw the chart. The closed‑form optimum is a single equation that calculates the peak directly.

The iterative sweep formula (one row per price step)

New Price =Base Price x (1 + Δ)
The price input for each row of the sweep
Volume Response =Base Volume x (1 + Elasticity x Δ)
The volume output at the new price. This is a LINEAR response. Each further percent of price costs the same NUMBER of units, not the same percentage of them. Check it yourself: set the Price Change slider to +5, +10 and -10, and the Volume tile matches this formula to the unit

Where: Δ = the price change being tested in each row, as a decimal (+0.05 means a 5 percent increase), and Elasticity = the own‑price elasticity the model holds constant across the sweep.

New Net Sales =New Price x (1 - GTN Rate) x Volume Response
The revenue at the new price‑volume pair
New COGS =Unit COGS x Volume Response
The variable cost at the new volume
New Contribution =New Net Sales - New COGS - Outbound Distribution
This is the figure the sweep chart plots on its left‑hand axis. Marketing and sales are NOT in here: they sit in the fixed block below this line, on Brand Contribution

The closed‑form optimum, and it has to match the demand curve above it

Δbest =(C / P - 1 + 1 / |E|) / 2
The price change that maximizes contribution under the LINEAR demand response used above, where C = variable cost per unit, P = current net price per unit, E = elasticity

Work it on this SKU and it lands on the peak of the Price Sensitivity Analysis chart. Net price per unit is $3.5607 and margin per unit is $1.5007, so the variable cost carried per unit is $2.06 and C over P is 0.5785. At an elasticity of -1.8: Δ_best = (0.5785 - 1 + 0.5556) / 2 = +6.7 percent. The chart plots whole percent steps, so its highest point sits at +7 percent, the step nearest +6.7. The formula and the chart are the same statement.

A DIFFERENT FORMULA IS TAUGHT ALMOST EVERYWHERE AND IT DOES NOT BELONG ON THIS CHART. The version most pricing courses give is Δ_best = (|E| x C / (|E| - 1) - P) / P. It is the constant‑elasticity optimum: it assumes each further percent of price costs the same PERCENTAGE of volume. This sweep uses a linear response, where each further percent costs the same NUMBER of units. Put this SKU's figures through the constant‑elasticity version and it returns +30.2 percent: 1.8 x $2.06 / 0.8 gives an optimal price of $4.635 against the $3.5607 you charge today. That is 23.5 points above the peak the chart draws, and it would send you into the customer meeting arguing for a rise more than four times the size the brand's own model supports.

So the practitioner rule is about matching, rather than about which formula is better. Both are correct for the demand curve they assume. Before you use either on your own numbers, find out which response your forecast is built on. Put the familiar formula on a linear model and you walk into the room arguing for a price your own data does not support.

Δ_best = (C / P - 1 + 1 / |E|) / 2
the contribution‑maximizing price change under a linear demand response, which is what this sweep uses; a constant‑elasticity (log‑log) model needs the other formula
Worked example

Where the curve peaks, a worked example

An illustrative scenario in biscuits, walking the CrunchField mainstream 300g SKU: list price $4.29, 17 percent GTN (net price $3.56), COGS $1.72, outbound distribution $0.34, elasticity -1.8. Margin per unit at the base = $3.56 - $1.72 - $0.34 = $1.50. (Every figure in this walk is what the Sandbox shows on the same settings: net price $3.5607, Margin Safety 42.1 percent, contribution $3.0M.)

The sweep table (six points across the -10 percent to +10 percent range)

Price changeNew net priceVolume % of baseMargin per unitContribution ($K)
-5%$3.38109%$1.32$2,883
0% (base)$3.56100%$1.50$3,001
+3%$3.6794.6%$1.61$3,041
+5%$3.7491%$1.68$3,055
+7%$3.8187.4%$1.75$3,059
+10%$3.9282%$1.86$3,045

Reading the table: where the peak sits

The contribution number climbs steadily from the base, peaks at +7 percent ($3,059K), and only then begins to ease back. Across the +3 percent to +7 percent band the curve runs almost flat: the +3 percent point sits about $17K (0.6 percent) below the peak and the +5 percent point about $4K below it. Beyond +7 percent, volume loss starts to bite faster than margin per unit improves, so at +10 percent contribution has eased back to $3,045K. That is still $4K above the +3 percent figure ($3,041K) and only $14K below the +7 percent peak. So the curve has flattened out and is only just starting to turn down, rather than dropping sharply.

The Zone of Indifference is wide

The contribution numbers at +3, +5, and +7 percent are $3,041K, $3,055K, and $3,059K. Picking the "right" number inside this band is statistical noise; choosing the band itself is what matters. This band is the Zone of Indifference. It is the price range where maximizing contribution cannot tell you which exact price to pick.

+3% to +7% band
the Zone of Indifference; contribution stays within about 0.6% of the +7% peak across the band, making the choice between specific points effectively noise

The decision rule

When the sweep shows a broad flat top, do not debate +5 percent versus +6 percent in committee. Commit to the band and pick the list price whose likely shelf price sits well against round numbers, price thresholds and competitors' prices. The shelf price itself is the retailer's decision. When the sweep shows a sharp peak, the choice matters more and deserves closer analysis.

Practitioner insight

Using Sensitivity Analysis

Run the sweep across the whole range before you pick a number, and recommend a band of prices rather than a single price. Four working rules turn the sweep from a chart into a decision.

Set the size of the price increase from where the contribution curve peaks

  1. Run the sweep for the specific SKU. Different SKUs have different optimal price‑increase magnitudes.
  2. Compare your proposed increase to the peak. Above the peak: you are pushing past the price that earns the most contribution. Below the peak: you are leaving money on the table.
  3. Look at the flat‑top width. If the top of the curve is broad and flat, the exact number you pick matters less than it seems. If the curve rises to a sharp peak, the choice matters more.
  4. Cross‑check the volume line. Even if contribution peaks at +7 percent, a 12.6 percent volume drop at that level may trigger production or retailer pushback.

Stress test the elasticity assumption

Run the sweep under three elasticity scenarios: optimistic, expected and pessimistic. Each one is a different assumption about how strongly shoppers react to price. If contribution is positive across all three at the planned price increase, the decision holds up. If it turns negative under the pessimistic case, build a contingency plan before committing.

Build a portfolio sweep, not a single‑SKU sweep

Run sweeps for every product in the portfolio. Products whose curve peaks further to the right have a higher best price, and they should get larger increases. Products where it peaks left or is already declining should get smaller increases or none at all. That is how you build a portfolio pricing strategy that treats each product differently. Each SKU gets the increase its own curve supports, so moving the whole range by the same percentage leaves money on the table.

Always show the volume line alongside the contribution line

The volume line is not optional. Contribution may peak at a price where the volume drop is unacceptable for operations. Showing both lines together stops the analytics team from recommending a move that adds contribution but that the supply or commercial team cannot deliver.

3 elasticity scenarios
the smallest stress test to run before you sign off on a list‑price decision. With one scenario you are guessing, and with three you can decide
Related concepts

Continue exploring

Use it

Put this concept to work

See Price Sensitivity Analysis in action

RGM Academy lets you pull the levers yourself in an interactive simulator, with a senior AI RGM strategist coaching every decision you make.

Unlock the full Manufacturer P&L Simulator lesson

Or see what a team rollout includes