Analytics & Reporting
November 13, 2025

Contribution Margin vs. ROAS:<blue> Which Metric Should Drive Your Paid Media Decisions?</blue>

Jerry Smith
CEO
Table of contents

Scale Smarter with

Plug in your sources, clean your data, and watch performance marketing soar—flat fee, zero drama. Get started with a discovery call.

Most teams should plan and optimize to contribution margin, then track ROAS as a context metric. Contribution margin shows profit after all variable costs; ROAS only shows revenue per ad dollar and can hide losses. The big caveat: you need clean cost data and a simple way to calculate CM daily.

TL;DR: Contribution margin (CM) = net revenue minus all variable costs like COGS, shipping, fees, and ad spend. It’s the clearest way to know if scaling ads grows profit, not just revenue. CM should be your North Star; ROAS is a secondary signal to compare channel efficiency.

Key Facts

  • Definition: Contribution Margin = Net Revenue − All Variable Costs (COGS, shipping, fees, returns, marketing). One-line takeaway: CM shows profit available to cover OPEX and become net profit.
  • Three levels: CM1 = Revenue − COGS; CM2 adds delivery costs; CM3 adds marketing costs. One-line takeaway: CM3 is the closest view to cash profit per order.
  • Benchmarks: Many DTC brands target 35%+ CM when scaling paid ads. One-line takeaway: this leaves room to clear OPEX and still generate net profit.
  • Why not ROAS alone: ROAS ignores costs and can look great while you’re burning cash. One-line takeaway: profitable growth requires CM, not just top-line revenue.
  • Discounting risk: Raising discounts (for example from 5% to 40%) can double your break-even ROAS. One-line takeaway: CM surfaces when promo strategy erodes profit.

Definition (liftable): Contribution margin is the money left after all variable costs tied to a sale, including ad spend; it’s what’s available to cover operating expenses and become net profit.

{{video}}

“A lot of established agencies will operate on ROAS. I think ROAS is dead… It’s based on revenue, not margin. Onward’s approach is based on profitability.” — Ryan Donovan, CMO 500 LEVEL

The problem: ROAS can be a mirage

ROAS measures revenue per advertising dollar. It does not include product cost, shipping, payment fees, or returns. A 3.0 ROAS looks healthy until you layer in costs and discover you’re scaling losses. That’s why sophisticated operators evaluate profitability with CM instead of vanity efficiency alone.

A quick example many teams miss:

  • Two brands both show ROAS 4.0 on $100k revenue and $25k ad spend.
  • Once you add COGS and fulfillment/fees, Brand A retains $35k CM; Brand B keeps only $10k CM. Same ROAS, radically different profit.

The solution: Make Contribution Margin your operating system

When you calculate CM at the product or order level, you can scale the SKUs and channels that produce profit, not just revenue. CM forces you to treat a product with 20% profit differently from one at 80%, a blanket ROAS target won’t cut it.

How CM fits your P&L:

  • CM accumulates to cover OPEX (salaries, rent, software).
  • After OPEX is covered, the rest is net profit, the real scoreboard your CFO cares about.

“Single source of truth” dashboards help here. They pull ad platforms, CRM, and billing together so you can see cost and revenue in one place and make daily decisions on what to scale or pause.

How to use CM and ROAS together (framework + examples)

Use CM to decide; use ROAS to compare.

  • At the SKU/order level: Optimize to CM3 (includes marketing) for first-order profitability. Use ROAS as a directional efficiency metric for creative and audience tests.
  • At the channel/campaign level: Rank by CM dollars per day and CM%; keep ROAS as a tie-breaker when CM is similar.
  • During promo periods: Track CM because discounts raise break-even ROAS sharply; ROAS alone will overstate success.

A simple, 6-step procedure to operationalize CM

  1. Align the formula. Use CM3: Revenue − (COGS + shipping + payment/transaction + packaging + returns + marketing). Write it down and stick to it.
  2. Centralize data. Connect commerce, billing, ad platforms, and returns to one dashboard. Make it your daily “profit view.”
  3. Set guardrails. Target ≥35% CM for scalable paid acquisition; below that, treat as a test.
  4. Prioritize SKUs. Start with the top-selling products plus profit outliers; don’t assume best-sellers are most profitable.
  5. Budget to CM dollars. Allocate spend to campaigns with the most contribution profit per day, not just the highest ROAS.
  6. Audit discounting. Plot break-even ROAS vs. discount rate; you’ll often need to double ROAS when promo depth jumps from 20% to 40%.

What most teams miss: CM naturally penalizes returns, shipping, and fees. That’s the point, you want the metric to reflect reality, not channel vanity.

Cost, time, and benchmarks

Time to implement:
  • Data wiring: 1–3 weeks to unify platforms and costs into a basic CM dashboard.
  • First reliable CM reads: within the first 30–60 days of disciplined tracking and testing, then weekly iteration. Clients often see signal clarity early and scale spend accordingly.
Guardrails to use today:
  • CM% threshold: Aim ≥35% when scaling paid.
  • Category reality: Food & Bev 20–40%; Beauty/Supps 60–80%; Apparel 50–70%. Calibrate your targets to category.

Why it’s worth it: Contribution margin transforms paid media from “spend to hit ROAS” into “invest to print profit,” aligning marketing with P&L outcomes.

Risks & caveats (and how to avoid them)

1) Dirty or missing cost data. If your shipping, payment fees, and returns are estimates, CM will wobble. Start with 90-day averages, then refine with order-level data as you mature.

2) Over-segmented ad structures. Consolidate where you can; better conversion data allocation improves modeling and stability of your CM math.

3) Discounting blind spots. Promo depth quietly raises break-even ROAS and can kill CM. Model the curve before you launch the sale.

4) Misusing ROAS. Treat ROAS as a comparator, not a goal. A lower-ROAS campaign can beat a higher-ROAS one on contribution dollars.

Where this can fail: If you don’t centralize platform, billing, and cost data into one “profit” view you trust daily, you’ll revert to ROAS because it’s easy, not because it’s right.

Key takeaway: Let CM decide; let ROAS compare.

FAQs about CM vs ROAS

How do I calculate contribution margin quickly?
Use CM3: Revenue − (COGS + shipping + fulfillment + payment fees + returns + marketing). Start with 90-day averages if you lack order-level data, then refine.

How long before I can trust CM?
Most teams get a stable read in 30–60 days if they centralize data and enforce a single formula. Clients often recognize it’s “working” in the first 1–2 months.

Is ROAS useless then?
No. Keep ROAS for apples-to-apples creative and channel comparisons. But make funding and scaling decisions on CM.

What’s a good contribution margin target?
Category matters, but many brands target ≥35% CM when scaling paid. Calibrate by vertical: Apparel often runs 50–70%, Food & Bev 20–40%.

How do discounts affect my targets?
Deeper discounts push up break-even ROAS. At 20–40% promo depth, you may need roughly 2x the ROAS just to break even—CM will reveal that early.

Summary & next steps

Contribution margin should lead your planning and optimization; ROAS should support as a comparison metric. The risk is ignoring costs, especially discounts, shipping, and returns. Start with a clean CM3 formula and one “profit” dashboard.

Next steps you can run this week:

  1. Document your CM formula and thresholds.
  2. Centralize platform, billing, and cost data into one daily view.
  3. Re-rank campaigns by CM dollars/day and CM%; shift budget accordingly.

Stress-test your discount strategy vs. break-even ROAS before you launch.

-->