Contribution margin
What one extra sale leaves behind after the costs that only exist because you made that sale.
01 What it is
Why anyone looks at this number
What one extra sale leaves behind after the costs that only exist because you made that sale.
It is the right number for pricing, discounting and volume decisions. Gross margin includes some fixed cost, so using it to judge one more order gives the wrong answer.
02 The formula
How it is worked out
Contribution margin = (net_revenue − variable_cost) ÷ net_revenue grain : product × channel unit : percentage or currency per unit source : Product costing plus a variable/fixed flag on cost elements
The variable/fixed split is a modelling decision, not a system field. Write it down and version it, or two teams will quote two contribution margins for the same product.
03 Worked example
The same number, with real inputs
| Price per unit | €12.50 |
| Variable cost per unit | €8.00 |
| Calculation | (12.50 − 8.00) ÷ 12.50 |
| Result | 36% (€4.50 per unit) |
A 10% discount costs €1.25 of the €4.50 — 28% of the contribution. You would need to sell 39% more units just to stand still.
04 What moves it
Four things that actually change this number
Net price
Straight through — a discount is a pound-for-pound cut in contribution.
Variable cost per unit
Materials, piece-rate labour, packaging, outbound freight.
Mix
Which products and channels the volume came through.
Minimum order size
Small orders carry fixed handling cost that behaves like variable cost.
05 Where the number lives
The system, the record and the fields
| System of record | Key record | Fields you need |
|---|---|---|
| Product costing plus a variable/fixed flag on cost elements | Material, Routing and Cost element | material_cost, direct_labour, variable_overhead, outbound_freight |
The variable/fixed split is a modelling decision, not a system field. Write it down and version it, or two teams will quote two contribution margins for the same product.
06 How it goes wrong
Three ways this metric misleads people
Using gross margin for a discount decision
Gross margin carries fixed production cost, so it understates what a discount really costs.
Fix: Use contribution for any incremental decision; use gross margin for reporting.Forgetting the cost to serve
Delivery, returns and support differ hugely by customer and never appear in unit cost.
Fix: Add a cost-to-serve layer before calling a customer profitable.Treating labour as variable
If you cannot send people home when volume drops, that labour is fixed this quarter.
Fix: Classify by whether the cost actually disappears, not by which line of the P&L it sits on.08 Questions
Frequently asked
When should I use contribution margin instead of gross margin?
Any time the question is "should we do one more of these?" — pricing, discounts, promotions, accepting an extra order, dropping a product line.
How do I decide what counts as variable?
Ask whether the cost disappears if the sale does not happen, within the period you are deciding for. Over a long enough horizon almost everything is variable, which is why the horizon has to be stated.
One definition, everywhere it is used
SCIKIQ stores this metric once and serves it to every dashboard, board pack and agent that asks.