The Margin Stack30 DAYS FREE + Free Analytics Session $500

The Math / CM1, CM2, CM3

The Math · Margin

The contribution margin income statement, from revenue to CM3

A standard income statement sorts costs by department. A contribution margin income statement sorts them by behaviour: everything that moves with an order comes off first, in three rungs, and fixed costs wait at the bottom. For an ecommerce store, that turns the P&L into a decision tool.

The short answer

Start from net revenue, take off landed COGS to reach CM1, take off fulfilment, shipping and payment fees to reach CM2, then take off variable marketing to reach CM3. Fixed costs come off last, so each rung answers one decision: sourcing, operations, acquisition.

5.0 on Google · 100+ businesses · $153M revenue influenced

The formula

CM1 = Net revenue − Landed COGS · CM2 = CM1 − Fulfilment, shipping & payment fees · CM3 = CM2 − Variable marketing

  • Net revenue
  • Landed COGS
  • Fulfilment, shipping & payment fees
  • Variable marketing
The formula

Three subtractions, in a fixed order.

Every rung subtracts one family of variable costs. The order matters: each line is the pool the next cost has to be paid from.

TermWhat it means
Net revenueGross sales less discounts, refunds and returns.
Landed COGSSupplier cost plus freight-in plus duty. See landed COGS for what belongs in it.
Fulfilment, shipping & payment feesPick-pack, packaging, outbound postage, free-shipping subsidies and the processor's cut on each order.
Variable marketingAd spend, affiliate commission and promo cost that scale with orders. Salaried marketers and fixed retainers sit below CM3 with fixed costs.

Rung boundaries are not standardised across tools, and some teams fold fulfilment into CM1. The convention above is the one taught on The Math. State yours at the top of the statement and most arguments about the number disappear.

Worked example 1

One A$120 frame set, stepped down.

The lens retailer from The Math, per order. The numbers are exactly as published there.

Worked example / demonstrative numbers
RevenueA$120.00
Landed COGS (cost + freight-in + duty)−A$50.40
CM1 (58.0%)A$69.60
Pick/pack + outbound shipping−A$11.00
Payment + transaction fees (~3.8% of revenue)−A$4.60
CM2 (45.0%)A$54.00
Variable marketing (allocated ad cost)−A$26.40
CM3 (23.0%)A$27.60

Read it rung by rung. At 58% the product carries its cost comfortably. Operations take 13 points, which is normal: for most DTC brands CM2 sits 10 to 15 points below CM1 (per the framework cited on The Math). Acquisition then takes 22 points, and the order contributes A$27.60 towards rent and salaries.

CM2 is also the line that sets your ad ceiling. Break-even ROAS here is 1 ÷ 0.45, about 2.22x. The ROAS formula page works that through.

Worked example 2

A month of the same store, as a full statement.

Scaling the step-down from one order to a period, and adding the fixed-cost line underneath. Same 58% CM1, heavier marketing month.

Worked example / demonstrative numbers
Gross salesA$250,000
Discounts−A$20,000
Refunds and returns−A$10,000
Net revenueA$220,000
Landed COGS−A$92,400
CM1 (58.0%)A$127,600
Fulfilment and outbound shipping−A$19,800
Payment and transaction fees−A$8,360
CM2 (45.2%)A$99,440
Variable marketing−A$61,600
CM3 (17.2%)A$37,840
Fixed costs (rent, salaries, software)−A$26,500
Operating profit (5.2%)A$11,340

Same CM1 as the single order, but CM3 lands at 17.2% instead of 23% because marketing took 28% of revenue. A traditional statement would bury those six extra points of marketing in "operating expenses". Here it is one line, and it points at one owner.

The CM3 line is also what your break-even analysis divides into fixed costs, and what the contribution margin ratio expresses as a percentage.

Format compared

Traditional versus contribution format.

Both statements reach the same bottom line. They group the costs differently on the way down.

Traditional income statementContribution margin income statement
Costs grouped byFunction: cost of sales, then operating expensesBehaviour: variable first, fixed last
Shipping and payment feesUsually buried in operating expensesAbove the line, at CM2
Ad spendOne marketing line, mixed with retainers and toolsVariable spend at CM3, fixed marketing below it
Headline subtotalGross profitCM1, CM2 and CM3
Question it answersDid we make money this period?Does the next order make money, and which cost decides it?

Build one from your own books with the Shopify P&L template, which keeps a visible contribution line before fixed costs.

How Blufire automates it

The same statement, rebuilt every week from the orders.

Section S2, Unit Economics, runs this step-down on every order, customer and SKU, and reconciles it against your ledger. The CM waterfall walks gross list revenue through product discounts, refunds and COGS to CM1, then fulfilment, payment fees and the free-shipping give to CM2, then ad spend to CM3.

The note under the waterfall says which lines are live and which read zero until a carrier or 3PL feed is connected. A missing cost is shown as missing, never quietly filled with a number that flatters the margin.

  • CM waterfall & bridgeTraces any period's margin move line by line, from gross revenue down to CM3.
  • Profitability CubePivots contribution margin by product, channel or cohort to see where it is made and where it leaks.
  • Ranked Leak QueueOrders every margin leak by the dollars recoverable.
  • Recovery TrackerHolds each fix accountable, so a leak you found gets checked again.
See section S2, Unit Economics→
S2 Unit Economics · CM waterfall
Blufire CM waterfall stepping gross revenue down through discounts, refunds and COGS to CM1, then fees and shipping to CM2 and ad spend to CM3

Real product screen, shown on sample data.

Common mistakes

Where contribution statements go wrong.

  • Putting shipping in overheads.Carriers bill monthly, but the cost scales per parcel. Leave it below the line and CM2 is missing its biggest input.
  • Splitting marketing on who paid it, not how it behaves.Performance spend is variable and belongs at CM3. An agency retainer is fixed and belongs below it, even though both sit in the marketing budget.
  • Allocating fixed costs per order.Spreading rent across orders changes the per-order figure every time volume moves, and hides whether the next sale pays. Keep fixed costs as one line under CM3.
  • Reading only the store total.A healthy blended CM3 can carry SKUs that lose money on every sale. Run the statement per product and per channel too, which is where margin leaks hide.
Proof
“They're experts in their field and genuinely seem to care about us winning… they achieve all the results we could hope for where it matters.”
WMWill MacphersonGoogle review
Google review
RainCoA$5k to A$170ka month in eight months, with the finish carrying 85% of revenue de-riskedRead the case study →

5.0 on Google · 100+ businesses · $153M revenue influenced

FAQ

Questions operators ask.

It is an income statement that separates variable costs from fixed costs instead of grouping them by department. Revenue minus variable costs gives contribution margin; fixed costs come off afterwards to reach operating profit. In ecommerce the variable section is usually split into CM1, CM2 and CM3 so each cost family is visible.
CM1 is net revenue minus landed COGS: can the product carry its cost. CM2 also removes fulfilment, shipping and payment fees: can the operation deliver it. CM3 also removes variable marketing: does the order still contribute after the cost of winning it. Each rung is a different decision and a different owner.
Pull net revenue after discounts and refunds, then subtract landed COGS for the units sold, then pick-pack, postage and payment fees, then ad spend and affiliate cost that scale with orders. Subtotal after each step. Put rent, salaries, software and fixed retainers in one block at the bottom.
There is no single target, because category, order value and marketing mix all move it. For spread, Finaloop's dataset of hundreds of 7 to 8 figure US brands put median contribution margin near 25%, with quartiles from 3% to 56%, as cited on The Math. What matters is that CM3 covers your fixed costs.

Ready to see what you are actually keeping?

Free for 30 days. Free to install.