ROAS is a ratio. Revenue divided by ad spend. It tells you how much revenue each marketing dollar generated.

It does not tell you how much profit it generated. It does not account for the cost of delivering the product or service. It does not account for platform fees, refunds, compliance overhead, or any of the other cost layers that sit between revenue and actual margin. A campaign with a 4.0 ROAS can be unprofitable. A campaign with a 2.0 ROAS can be the best performer in your account — depending entirely on what the gross margin is.

Net marketing contribution is the metric that fixes this. It is not a new concept — it has been used in direct response and catalog marketing for decades. But it is underused in paid digital acquisition because the data required to calculate it properly lives in systems that ad platforms do not connect to. This post covers the NMC formula, how it differs from ROAS, how to calculate it across your campaigns, and how CDAI automates it.

The NMC Formula

Net Marketing Contribution — Core Formula
NMC = Revenue − Cost of Goods Sold − Marketing Spend
NMC% = (NMC ÷ Revenue) × 100
Breakeven ROAS = 1 ÷ Gross Margin %

NMC in dollars tells you how much profit a campaign generated after paying for what was sold and what was spent to sell it. NMC% expresses that as a share of revenue — useful for comparing campaigns with different revenue volumes. Breakeven ROAS tells you the minimum ROAS required to avoid a negative NMC at your current gross margin.

That last formula is the one most operators have never run. If your gross margin is 40 percent, your breakeven ROAS is 2.5. Every campaign below 2.5 ROAS is producing negative NMC — losing money — regardless of what the dashboard shows. Every campaign above 2.5 ROAS is profitable on NMC. ROAS alone, without this anchor, tells you almost nothing about profitability.

3.33×
Breakeven ROAS at
30% gross margin
2.5×
Breakeven ROAS at
40% gross margin
2.0×
Breakeven ROAS at
50% gross margin

Why ROAS Consistently Overstates Campaign Profitability

ROAS overstates profitability for four structural reasons that have nothing to do with how well a campaign performs.

It ignores cost of goods sold. Revenue minus nothing is not profit. ROAS divides revenue by ad spend — the cost of what was sold is not in the denominator, not in the numerator, not anywhere in the calculation. A campaign selling $500 products that cost $450 to deliver has a thin margin that a 3.0 ROAS conceals entirely.

It only counts ad spend, not total marketing cost. Ad spend is one of seven cost layers in a paid acquisition operation. Platform fees, agency markups, tracking tool costs, compliance overhead — none of these appear in ROAS because ROAS only uses the media spend the platform itself billed. Total marketing cost is consistently higher than what the platform reports as spend.

It does not subtract refunds. Revenue that is subsequently refunded or charged back is still counted in the ROAS numerator. A campaign with a 15 percent refund rate has a revenue figure that is 15 percent higher than the revenue the business actually kept. The ROAS calculation inflates profitability by the full refund rate. NMC subtracts refunds because they reduce actual revenue retained.

It attributes revenue at the conversion event, not at cash collection. In service businesses with delayed payment, financing arrangements, or installment structures, revenue recognized at conversion may never fully materialize. ROAS counts it all. NMC calculates against revenue actually collected.

"A 4.0 ROAS at 20% gross margin is a campaign that loses money on every conversion. The dashboard shows green."

NMC vs. ROAS: Side-by-Side on the Same Campaign

Here is what the same campaign looks like evaluated by ROAS versus NMC. This is an illustrative example using realistic numbers — run it against your own campaigns.

A lead-gen campaign for a home services company. $20,000 in ad spend. 40 jobs closed at $1,500 average ticket. $60,000 in reported revenue. Reported ROAS: 3.0.

Same Campaign — ROAS View vs. NMC View
Ad spend (platform reported)$20,000
Reported revenue (40 jobs × $1,500)$60,000
Reported ROAS3.0 — looks fine
Gross margin (labor + materials at 55% COGS)$33,000 cost
Gross profit$27,000
Platform fees (2.9% of spend)−$580
Financing fees on financed jobs (3 jobs)−$540
Job cancellations post-booking (2 jobs)−$3,000
Total marketing spend incl. fees−$21,120
Net Marketing Contribution$2,340
NMC% of revenue3.9%
Breakeven ROAS at 45% gross margin2.22 needed — campaign is above

The campaign is profitable — but barely. A 3.0 ROAS with 45 percent gross margin produces 3.9 percent NMC after platform fees, financing fees, and cancellations are applied. That is not a campaign to scale aggressively. It is a campaign to hold while the underlying cost structure is examined. The ROAS view said 3.0 and implied healthy performance. The NMC view says 3.9 percent margin and implies a campaign operating near its floor.

How NMC Changes Campaign Decisions

CampaignROASGross MarginNMC%ROAS DecisionNMC Decision
Campaign A4.2×28%−4.1%ScaleCut
Campaign B2.8×52%+33.4%Hold / cutScale
Campaign C3.5×40%+11.4%ScaleHold
Campaign D1.9×60%+26.3%CutScale

Campaign A: 4.2 ROAS, looks like the top performer. At 28 percent gross margin, breakeven ROAS is 3.57. Campaign A is below its breakeven on NMC — losing money on every conversion. ROAS says scale. NMC says cut.

Campaign D: 1.9 ROAS, looks like a candidate for shutdown. At 60 percent gross margin, breakeven ROAS is 1.67. Campaign D is above its breakeven and generating 26.3 percent NMC. ROAS says cut. NMC says scale.

This is the budget misallocation that ROAS-only reporting produces at scale. Money moves toward campaigns that look profitable and away from campaigns that are profitable. The decisions are wrong in both directions because the metric is missing half the inputs.

NMC in Service Verticals: Where It Matters Most

NMC is most important in service verticals where gross margin varies by job type, client tier, or service line — and where that variation is invisible on marketing dashboards. In personal injury law, a signed case generating $40,000 in gross revenue at 33 percent contingency has very different NMC than a case generating $8,000. In senior living, a private-pay move-in has fundamentally different NMC than a Medicaid move-in. In home services, a full replacement job has different margin than a repair.

Blending these together into a single ROAS figure obscures which campaigns are producing the high-margin work and which are filling the pipeline with low-margin work that looks productive on a revenue basis. The true CAC framework addresses this at the acquisition cost level. NMC addresses it at the margin level. Together they tell you whether a campaign is acquiring customers at a cost that makes sense — and whether those customers are generating margin worth acquiring at that cost.

For a full breakdown of how to calculate margin at the campaign level including all seven cost layers, see the contribution margin calculation guide. For vertical-specific NMC benchmarks, see the 2026 Marketing Margin Distortion Index.

How CDAI Calculates NMC at the Campaign Level

CDAI calculates net marketing contribution at the campaign level by connecting ad platform data, COGS from your billing or CRM system, and all seven cost layers — including platform fees, refunds, compliance overhead, and variable acquisition costs. The output is an NMC figure and NMC% per campaign, updated nightly.

Every campaign directive — Scale, Hold, Cut, Pause, or Flag — is issued based on reconciled NMC against your defined NMC floor, not on ROAS. A campaign above your NMC floor with positive trajectory gets a Scale directive. A campaign below floor gets Cut or Pause. A campaign with anomalous NMC movement gets Flag for review. The directive is retested 30 days later and scored for accuracy.

This is why ROAS can look good while campaigns lose money — and why every paid acquisition operation running on ROAS alone is making budget decisions with half the required information.

The free 30-Day Distortion Audit reconciles your last 90 days of campaign data to NMC — including COGS, all seven cost layers, and refund/chargeback impact — and returns the NMC figure for every active campaign. No cost, no commitment.

Frequently Asked Questions
What is net marketing contribution?
Net marketing contribution (NMC) is the profit remaining after subtracting cost of goods sold and all marketing-related variable costs from revenue. The formula is: NMC = Revenue − COGS − Marketing Spend. Unlike ROAS, which only measures revenue relative to ad spend, NMC shows whether a campaign is actually profitable after the cost of delivering the product or service is accounted for. A campaign with a 4.0 ROAS can have negative NMC if gross margins are thin. NMC is expressed as a dollar figure; NMC% expresses it as a percentage of revenue.
How is net marketing contribution different from ROAS?
ROAS (Return on Ad Spend) equals revenue divided by ad spend. It measures how much revenue each marketing dollar generated — not how much profit. A campaign generating $4 in revenue per $1 in ad spend has a 4.0 ROAS regardless of whether the product costs $3.50 to deliver. NMC subtracts both the cost of delivering the product and the marketing spend from revenue — showing what actually remains. ROAS is a ratio. NMC is a profit figure. Campaigns that look profitable on ROAS can be deeply unprofitable on NMC.
What is a good net marketing contribution percentage?
A healthy NMC% varies significantly by vertical, gross margin structure, and business model. For high-margin services (legal, SaaS, financial services), NMC% targets typically run 40–60% of revenue after marketing. For physical goods with lower gross margins, 15–30% NMC% is more typical. The more important benchmark is whether NMC is positive — a negative NMC means the campaign is destroying value even when ROAS looks acceptable.
Can ROAS look good while net marketing contribution is negative?
Yes — this is the most common way operators scale losing campaigns. If gross margin is 30% and ROAS is 3.0, the revenue exactly covers COGS and ad spend with zero NMC. Any ROAS below (1 ÷ gross margin %) produces negative NMC. For a 30% gross margin business, the breakeven ROAS is 3.33. A campaign at 3.0 ROAS is losing money on every conversion while the marketing dashboard shows green.
How does CDAI use net marketing contribution to issue campaign directives?
CDAI calculates net marketing contribution at the campaign level by reconciling all seven cost layers — including platform fees, refunds, compliance overhead, and variable acquisition costs — against gross margin per conversion type. Campaigns with positive NMC above the target floor receive Scale or Hold directives. Campaigns with negative NMC receive Cut or Pause directives regardless of ROAS. This prevents the most common scaling error in paid acquisition: increasing budget on campaigns that look profitable in the platform but are actually destroying margin.

See the NMC on Every Campaign You're Running

The 30-Day Distortion Audit reconciles your last 90 days of campaign data to net marketing contribution — COGS, all seven cost layers, refunds included. You get the NMC figure for every active campaign. No cost, no commitment.

Request the Free Audit