Deriving Meta Ads Target ROAS From CM% For Prospecting Campaigns

Metricuno
June 19, 2026
6 min read
Deriving Meta Ads Target ROAS From CM% For Prospecting Campaigns — Turn your contribution margin into a Meta prospecting target ROAS floor. Adjust for 7-day-click inflation, new-customer economics, and CAPI under-reporting.
Quick answer

A step-by-step walkthrough for converting first-order contribution margin into a defensible Meta prospecting ROAS floor — with the adjustments for 7DC attribution inflation and cold-audience payback.

Quick answer

Start with 1 ÷ first-order CM% as your break-even ROAS, then multiply by ~1.25–1.40 to absorb Meta's 7-day-click attribution inflation and CAPI under-reporting. Example: 35% first-order CM → 2.86 break-even → ~3.6–4.0 reported ROAS floor in Ads Manager for prospecting campaigns. Use new-customer revenue only, never blended.

Definition
Paid acquisition

Meta prospecting target ROAS from CM%

The minimum ROAS a Meta prospecting campaign must report in Ads Manager to break even on first-order contribution margin after attribution and reporting adjustments.

Meta prospecting target ROAS is the floor you set in Ads Manager so that cold-audience spend at least covers variable costs on the first order. It starts from the contribution margin output of a target ROAS calculator (1 ÷ CM%) but has to be inflated to account for Meta's 7-day-click + 1-day-view default window, which over-reports conversions versus the true incremental sale, and deflated by the share of conversions iOS14 and CAPI gaps lose. The result is a reported ROAS number you can paste into a campaign objective without subsidising losses from blended LTV assumptions.

Also known as
Meta prospecting break-even ROAS
cold-audience ROAS floor
first-order ROAS minimum

Most teams running Meta prospecting use a ROAS floor that was set once, eyeballed, and never reconciled to actual margin. That works until CPMs rise — and then the campaign quietly burns cash.

This page walks the derivation end-to-end: take your CM%, find the break-even ROAS, then apply two Meta-specific corrections so the number you paste into Ads Manager actually means what you think it means.

Step 1: Start from first-order CM%, not blended

The CM% you feed into the floor must be the margin on the first order alone — product cost, payment fees, shipping, pick-and-pack — with zero LTV credit baked in. A blended CM% that already assumes a second purchase will set your floor too low and let prospecting eat into retention profit.

For a beauty SKU with 60% gross margin, 4% payment fees, 8% shipping subsidy, and 3% pick-and-pack, first-order CM lands around 45%. For an apparel store with returns at 22%, the same gross margin can collapse to a 28–32% first-order CM. Use the real number for your category.

Don't mix LTV in here

If you fund Meta prospecting against blended LTV-adjusted CM, you're committing future retention revenue to today's cold audience. That decision is legitimate — but it belongs in a payback-window policy, not in the campaign floor. See the sibling page on running prospecting below break-even when retention can subsidise it.

Step 2: Convert CM% into break-even ROAS

Break-even ROAS is simply 1 ÷ CM%. A 35% first-order CM gives a break-even ROAS of 2.86 — meaning every €1 of ad spend has to return €2.86 in new-customer revenue just to cover variable costs and the ad itself.

This is the number a target ROAS calculator outputs. It is not yet your Ads Manager floor — it's the true economic break-even assuming perfectly measured revenue.

The gap between this true break-even and what Ads Manager will display comes from two opposing forces: 7-day-click attribution inflates the reported number, and iOS14 / signal loss deflates it. The net for most Shopify stores is still net inflation — Ads Manager reports higher ROAS than ground truth.

Step 3: Adjust for Meta's 7-day-click reporting

Benchmark

Typical Meta prospecting ROAS floor by first-order CM% (apparel/beauty Shopify stores, EU)

First-order CM%Break-even ROAS (1÷CM)7DC inflation factorReported ROAS floor
20%5.001.30×6.5
25%4.001.30×5.2
30%3.331.30×4.3
35%2.861.30×3.7
40%2.501.30×3.3
50%2.001.25×2.5
60%1.671.25×2.1

The 1.25–1.40× inflation factor is the practical range we see when reconciling Meta-reported ROAS to post-purchase survey data and Shopify-attributed first-order revenue. Stores with strong CAPI coverage sit at the low end; stores still relying on browser pixel only sit higher because the reported denominator is noisier.

Step 4: Exclude existing customers from the campaign

A prospecting ROAS floor only makes sense if the revenue in the numerator comes from net-new customers. Upload your Shopify customer list to a Custom Audience and exclude it at the ad-set level — otherwise repeat buyers will inflate ROAS and you'll think you're scaling profitably when you're really just retargeting your own list.

If your store's repeat rate is 30%+, this single exclusion can drop reported prospecting ROAS by 20–40%. That drop isn't a loss — it's the truth you couldn't see before.

Step 5: Loosen the floor if payback allows

If your finance team accepts a 90-day payback window instead of a first-order payback, you can run prospecting below the first-order break-even and recover the gap through second-order revenue. The looser floor is typically 0.7–0.8× of the strict first-order floor — but only if you have reliable cohort repeat data to back it up.

Apply this loosening only to scaling campaigns with stable creative. Creative-testing campaigns should keep the strict first-order floor so you don't confuse a bad creative with a tolerable payback bet.

Edge cases that change the floor

TikTok prospecting needs a higher ROAS floor than Meta at the same CM% because TikTok's 7-day-click default also includes a longer view-through window and the cross-device match rate is weaker. Expect to set TikTok ~15–25% above your Meta floor for the same CM tier.

If you bid with Cost Cap instead of ROAS goals, translate the floor into a target CPA: CPA cap = (AOV × CM%) ÷ inflation factor. For a €70 AOV at 35% CM and 1.3× inflation, that's a €18.85 reported CPA cap for prospecting — the equivalent ceiling expressed as cost-per-acquisition.

Frequently asked

Frequently asked questions

Compute 1 ÷ first-order CM% to get break-even, then multiply by 1.25–1.40 to account for 7-day-click attribution inflation. For a 35% CM store that's roughly a 3.6–4.0 reported ROAS floor in Ads Manager.

Blended CM bakes in future retention revenue that hasn't happened yet. If your prospecting campaign underperforms, you've committed retention profit to subsidise the loss before you knew there was a loss. Keep the floor honest with first-order numbers and treat LTV subsidy as a separate, deliberate decision.

Signal loss deflates reported ROAS — Meta sees fewer conversions than actually happened. With good CAPI coverage the under-reporting is 5–15%; without it, 20–35%. This partially offsets 7DC inflation, but for most stores the net is still net inflation, so the floor stays above break-even.

For prospecting, view-through conversions are heavily inflated and often non-incremental. Set your floor against 7-day-click only where possible, or apply a steeper inflation factor (1.5×+) if you must use the default 7DC + 1DV window.

Reconcile monthly: divide Shopify-attributed Meta revenue (UTM-tagged orders from new customers) by Meta Ads Manager-reported revenue for prospecting campaigns. The inverse of that ratio is your real inflation factor. Most Shopify stores land between 1.2× and 1.5×.

No. Creative-testing campaigns need a separate, looser floor because you're paying for learning, not scaling. Hold scaling campaigns to the first-order break-even floor and let testing campaigns run 15–25% below it for a defined budget.

TikTok needs a higher floor — typically 15–25% above Meta for the same CM tier — because its attribution window includes more view-through credit and cross-device matching is weaker. A 35% CM store with a 3.7 Meta floor should aim for ~4.3–4.6 on TikTok.

Yes, if your finance team accepts a 90-day or longer payback window and you have cohort data showing reliable second-order revenue. The looser floor is typically 0.7–0.8× of the strict first-order floor. Document the policy so it's a deliberate subsidy, not drift.

Cost Cap = (AOV × first-order CM%) ÷ inflation factor. For €70 AOV at 35% CM with a 1.3× inflation factor, the cap is about €18.85 reported CPA. This is the per-acquisition equivalent of the ROAS floor.

Yes, always. Upload your Shopify customer list as a Custom Audience and exclude it at the ad-set level. Without this exclusion, repeat buyers inflate reported prospecting ROAS by 20–40% and you can't tell new-customer economics from retention.

Track CAC, channels, and funnel conversion in one place

Metricuno connects ad spend, funnel events, and revenue so you can see CAC by channel, cohort, and campaign — without stitching together five tools.