"Once you strip away revenue vanity, most healthy businesses I've seen land somewhere in the 10-30 percent net margin range after everything is accounted for. Anything consistently above that is either very efficient, very niche, or not fully counting costs yet."
— Source: r/smallbusiness (38 upvotes)
Most finance teams think of margin in one dimension: gross profit. Revenue minus product cost. That works for simple businesses. But for omnichannel brands, DTC + Amazon + wholesale + retail, it breaks down fast.
The same product can have radically different profitability on different channels because the cost structure changes. Payment processing is cheaper on DTC (2.9%) than Amazon referral fees (15%). Fulfillment differs between 3PL, FBA, and distributor pickup. A product can look great on the dashboard, profitable on one channel, and destroying margins on another: without you knowing it.
That's what contribution margin is for: showing you the real contribution each sale makes, by channel, at each stage of the value chain.
This guide is about CM1, CM2, and CM3: the three layers of margin profitability. Each answers a different question: what's left for fixed costs, how much did the customer channel contribute, and can we afford this product on this platform?
What is Contribution Margin?
The 40-word definition
Contribution margin is the revenue remaining after subtracting all variable costs. It shows how much each unit sold contributes toward covering fixed costs (rent, salaries, overhead) and generating profit. Formula: Revenue − Variable Costs = Contribution Margin
Unlike gross margin, which looks only at product cost, contribution margin includes every variable cost tied to the sale: fulfillment, payment processing, returns, packaging, channel fees, and marketing spend.
For omnichannel brands, this matters because the same product has different variable costs on different channels:
- DTC: Product cost + Inbound freight + Payment processing (2.9%) + Shipping + 3PL fees + Ads
- Amazon: Product cost + Inbound freight + Referral fee (15%) + FBA fees + Amazon ads + Removal fees
- Wholesale: Product cost + Inbound freight + Distributor margin (30-40%) + Per-unit placement fee
A $50 product might be very profitable on DTC, break-even on Amazon, and lose money on wholesale: unless you adjust your wholesale price. Contribution margin is how you see that.
The Contribution Margin Formula
Simple formula
Contribution Margin = Revenue − Variable CostsContribution Margin % = (Contribution Margin ÷ Revenue) × 100
Variable costs are anything that changes with unit volume. Fixed costs (rent, salaries, software subscriptions) are NOT included in contribution margin because they stay the same whether you sell 100 units or 1,000.
What counts as a variable cost?
| Cost | Variable? | Why |
|---|---|---|
| Product COGS | Yes | Changes per unit sold |
| Inbound freight | Yes | Changes with order size |
| Fulfillment (pick/pack/ship) | Yes | Scales with orders |
| Payment processing (2.9% + $0.30) | Yes | Changes per transaction |
| Return shipping | Yes | Only occurs if item is returned |
| Ads (direct marketing) | Yes (when allocated per unit) | Changes with volume targeted |
| Rent | No | Fixed regardless of sales |
| Salaries | No | Fixed (mostly) |
| Software subscriptions | No | Fixed monthly cost |
Some costs are "semi-variable": they stay fixed up to a point, then jump. Example: 3PL storage at $1/unit up to 10K units, then $0.80/unit above that. For precision, allocate the true variable portion.
CM1, CM2, CM3: The Three Layers of Profitability
Consumer brands use three tiers of contribution margin, each answering a specific question:
CM1: Gross Contribution Margin (Product Level)
Formula: Revenue − True COGS
True COGS includes product cost, inbound freight, duties, tariffs, packaging, and labeling. It's the margin left after manufacturing and logistics to the warehouse.
Example: A supplement retails for $59.95 AUD. After manufacturing ($26), inbound freight ($1.50), duties ($0.75), and packaging ($0.50):
CM1 = $59.95 − $28.75 = $31.20 (52%)
This is what's available before fulfillment, ads, or any other variable cost.
CM2: Operating Contribution Margin (Channel & Fulfillment)
Formula: CM1 − Fulfillment − Payment Processing − Platform/Channel Fees
It's the margin left after the customer receives the order and pays. This is where channels diverge dramatically.
| Cost Layer | DTC (Shopify) | Amazon FBA | Wholesale |
|---|---|---|---|
| CM1 (from above) | $31.20 | $31.20 | $31.20 |
| Fulfillment | −$5.50 (3PL) | −$7.50 (FBA) | −$0 (distributor picks) |
| Payment processing | −$1.75 (2.9%) | −$0 (in referral) | −$0 (net 30) |
| Platform/referral fee | −$0 (Shopify plan) | −$8.99 (15%) | −$9.37 (30%) |
| CM2 | $16.00 (26.7%) | $14.71 (24.5%) | $13.46 (22.5%) |
Same product. Three different margins. This is why you can't use one profitability model for all channels.
CM3: Contribution Margin (After Marketing & Promotions)
Formula: CM2 − Marketing Spend (allocated per unit) − Discounts − Return Reserve
It's the margin left after acquisition and returns. This is your true "profit available for fixed costs and profit."
Example continuation (DTC channel):
CM2 = $16.00
Ad spend to acquire customer: −$15 (CAC)
Return reserve (12% return rate × $27 return cost): −$3.24
CM3 = −$2.24 (unprofitable on first purchase!)
But with a 40% repeat rate and 2.5 LTV: $16 × 2.5 = $40 CM3 lifetime, which easily covers overhead.
CM3 is what you hand off to the finance team to pay fixed costs. If CM3 goes negative, you're subsidizing customers. If it goes positive, you're funding growth and profit.
Contribution Margin by Channel: The Full Picture
Here's where it gets actionable. The same product, sold on three channels, with realistic cost assumptions:
Product specification
- Retail price: $50
- Manufacturing: $12
- Inbound freight (allocated): $1
- Packaging: $0.50
- True COGS: $13.50 (CM1: $36.50, 73%)
Channel-by-channel margins
| Metric | DTC (Shopify) | Amazon FBA | Wholesale/Retail |
|---|---|---|---|
| Revenue per unit | $50.00 | $50.00 (avg sale price) | $25.00 (wholesale cost) |
| CM1 (COGS) | −$13.50 | −$13.50 | −$13.50 |
| CM1 % | 73% | 73% | 46% |
| Fulfillment | −$6.00 (3PL) | −$6.50 (FBA) | −$0.00 |
| Payment processing | −$1.50 (3%) | −$0.00 (in fee) | −$0.00 |
| Platform/referral fee | −$0.00 | −$7.50 (15% referral) | −$0.00 |
| CM2 | $29.00 (58%) | $22.50 (45%) | $11.50 (46%) |
| Marketing CAC (allocated) | −$12.00 | −$10.00 | −$1.00 (co-op) |
| Return reserve | −$2.50 | −$2.50 | −$0.50 |
| CM3 | $14.50 (29%) | $10.00 (20%) | $10.00 (40%) |
| Profitable on first purchase? | Yes ($14.50) | Maybe ($10) | Yes ($10) |
The takeaway: DTC is the most profitable per order ($14.50), but wholesale is the most efficient allocation of marketing. Amazon falls in the middle on CM3 but has the best LTV potential because the buy is repeated more often.
A finance team using one blended margin number would miss this completely. CM1, CM2, CM3 by channel is how you see the real story.
Worked Examples: Contribution Margin Calculations
Example 1: Beauty brand (DTC focus)
Illustrative example:
- Product: Serum, $72 retail
- COGS (including duties from Vietnam): $18
- Fulfillment (3PL): $7
- Payment processing: $2.16 (3%)
- Marketing CAC: $20
- Return rate: 8%, return cost $40
- Return reserve per unit: $3.20
| Layer | Calculation | Amount | % |
|---|---|---|---|
| CM1 | $72 − $18 | $54 | 75% |
| CM2 | $54 − $7 − $2.16 | $44.84 | 62% |
| CM3 | $44.84 − $20 − $3.20 | $21.64 | 30% |
At $21.64 CM3 per order, this product generates $216.40 of contribution margin per 10 orders sold. That's what pays salaries, rent, and profit.
Example 2: Apparel brand (omnichannel)
Illustrative example:
T-shirt at three price points, three channels:
| Channel | Price | COGS | Fees | CM1 | CM2 | CM3 (w/$8 CAC) |
|---|---|---|---|---|---|---|
| DTC | $35 | $8 | $3.50 | $27 (77%) | $23.50 (67%) | $15.50 (44%) |
| Amazon | $35 | $8 | $10.50 | $27 (77%) | $16.50 (47%) | $8.50 (24%) |
| Wholesale | $18 | $8 | $0 | $10 (56%) | $10 (56%) | $10 (56%) |
The DTC channel looks best in pure margin ($15.50) but requires highest CAC to acquire. Wholesale has lower raw margin but is profitable without customer acquisition cost. An omnichannel strategy balances both.
Why Contribution Margin Matters for Omnichannel Brands
Most finance teams track gross margin (revenue − COGS) and call it a day. For simple, single-channel businesses, that works. For omnichannel brands, it's blindfold accounting.
The problems with gross margin alone
- Hides channel profitability: A product can have 65% gross margin but only 20% on Amazon after referral and FBA fees.
- Ignores fulfillment variation: 3PL, FBA, and wholesale pickup have wildly different costs.
- Misses platform fees: Amazon referral (15%), Shopify apps, payment processing: they all matter.
- Breaks with SKU proliferation: At 100+ SKUs and 4+ channels, blended gross margin is noise.
What contribution margin enables
- Channel mix decisions: Should we expand Amazon or DTC? CM3 tells you which is truly profitable.
- Pricing strategy: Knowing CM2 by channel, you can price appropriately for each.
- Marketing budget allocation: Put more ad budget behind channels with higher CM3.
- Product decisions: Which SKU should we discontinue? The one with lowest CM3, not lowest gross margin.
- Scenario planning: "If Amazon fees rise 2%, what happens to profitability?" CM2/CM3 answers instantly.
This is exactly what FP&A for consumer brands does at scale: reconcile CM1/CM2/CM3 by channel, by SKU, by month. When a new channel launches or fees shift, the model updates instantly, and you see the margin impact across the whole portfolio. See how Niblin models channel-mix profitability and how it powers monthly close and board reporting.
From Guessing to Knowing Your Margins
Contribution margin is the difference between thinking you're profitable and knowing it. Most brands make channel and pricing decisions on blended gross margins that hide the real story.
Once you split profitability by CM1/CM2/CM3, by channel, the decisions become obvious. You stop funding unprofitable channels, you price appropriately for each platform, and you allocate marketing spend to the channels that actually generate contribution after all costs.
The obstacle: calculating this manually across 50 SKUs, 4 channels, and 24 months is a spreadsheet problem. Most brands give up. The ones that don't build FP&A models that reconcile orders to the books and auto-calculate contribution by channel.
Stop guessing which channels are truly profitable.
Niblin's FP&A platform reconciles CM1/CM2/CM3 across DTC, Amazon, wholesale, and quick commerce by SKU and month. Live in weeks. See contribution margin by channel without the rebuild when a retailer launches or a fee changes.
Model Contribution Margin by Channel
Key Takeaways
- Contribution margin = Revenue − Variable Costs. It shows what's left after direct costs to pay fixed costs and profit.
- CM1 (Gross CM) = Revenue − COGS. Includes product cost, freight, duties, packaging.
- CM2 (Operating CM) = CM1 − Fulfillment − Payment Processing − Platform Fees. Shows channel profitability.
- CM3 (Contribution CM) = CM2 − Marketing − Discounts − Returns. What's truly available for fixed costs.
- Same product, different channels: DTC may be 30% CM3, Amazon 20%, wholesale 40%: because fee structures differ.
- Gross margin (65%) hides channel variation. CM3 (20-30%) shows the real profitability.
- Contribution margin by SKU and channel powers pricing, channel mix, and marketing budget allocation decisions.
Frequently Asked Questions
What is contribution margin?
Contribution margin is revenue minus variable costs. It shows how much each sale contributes to covering fixed costs (rent, salaries) and generating profit. Variable costs include COGS, fulfillment, payment processing, and marketing: anything that changes with unit volume.
What is the difference between contribution margin and gross margin?
Gross margin is revenue minus COGS only. Contribution margin includes all variable costs: COGS, fulfillment, payment processing, platform fees, and marketing. For omnichannel brands, contribution margin is more accurate because it shows profitability after all customer-facing costs.
What counts as a variable cost?
Any cost that changes with unit volume: COGS, inbound freight, fulfillment (pick/pack/ship), payment processing, platform fees (Amazon referral, Shopify apps), direct marketing, return shipping, and discounts. Fixed costs (rent, salaries, core software) don't count.
Why do margins differ by channel?
Different channels have different cost structures. DTC has payment processing (2-3%), Amazon has referral fees (8-15%) plus FBA, wholesale has distributor margins (30-40%). A $50 product might be 30% CM3 on DTC and 15% on Amazon because the fees differ.
How do I calculate contribution margin for my brand?
Gather monthly data by channel: revenue, COGS, fulfillment costs, payment processing fees, platform fees, marketing spend, and return reserve. Calculate CM1 (Revenue − COGS), CM2 (CM1 − Fulfillment − Fees), CM3 (CM2 − Marketing − Returns). Track by SKU and channel for actionable insights.
What is a good contribution margin?
Healthy CM3 (contribution margin available for fixed costs) is 15-30% depending on industry. Below 15% is risky if overhead is high. Above 30% suggests either strong unit economics or high marketing efficiency. Compare within your channel, not across channels, since cost structures differ.
By