MER vs ROAS: Why Meta's ROAS Lies and How to Measure Real Profit From Facebook Ads
Meta's ROAS is an attribution model, not your revenue. MER (marketing efficiency ratio) divides real revenue by total ad spend. How to calculate both, what a good MER is, and how to pull it from Stripe or Shopify automatically.
Updated November 2, 2026
ROAS in Ads Manager is Meta's estimate of the revenue its ads caused, built from attribution windows and modelled conversions; MER is your actual revenue divided by your actual ad spend, with nothing modelled. When the two disagree, and they always do, MER is the one that matches your bank account. This guide explains why Meta's number drifts, how to calculate MER and the break-even version of it, what a good MER is, and how to get it computed for you from Stripe or Shopify.
Why Meta's ROAS is not your ROAS
Ads Manager ROAS is purchase conversion value divided by amount spent, where "purchase conversion value" is whatever the pixel, Conversions API and Meta's models attributed to the ad. Five things push it away from reality.
Attribution windows. By default Meta claims a purchase if the buyer clicked an ad in the last 7 days or viewed one in the last day. A customer who saw your ad, searched your brand, clicked a Google result and bought is counted by Meta, and possibly by Google too.
Modelled conversions. Since iOS privacy changes, part of the number is Meta's statistical estimate of conversions it could not observe. The estimate is calibrated to Meta's interests as much as yours.
Refunds and cancellations do not come back out. A $200 purchase that is refunded next week is still $200 of conversion value in the report.
Existing customers. Retargeting ads shown to people who were going to buy anyway get full credit. Meta's ROAS cannot tell a new customer from a repeat one unless you set that up.
Delayed reporting. The ROAS you see today for last week will change for up to 28 days as late conversions land. The number you made a decision on is not the number that ends up in the report.
None of this is fraud. It is a model built by the party that benefits when the model is generous. You should not run a business on it.
What MER is
MER, marketing efficiency ratio, also called blended ROAS:
MER = total revenue ÷ total ad spend, for the same period, across all channels.
If your shop took $12,000 last month and you spent $3,000 on Meta and $1,000 on Google, MER is 12,000 ÷ 4,000 = 3.0. There is nothing to attribute because nothing is attributed. Organic, email and word-of-mouth revenue are in the numerator, which is the point: you want to know whether the money you spent on ads grew the business, not whether Meta's model thinks it did.
MER is a blunt instrument and that is why it works. It cannot be gamed by a longer attribution window. It drops when ads stop working even if Meta's ROAS stays flat, because customers Meta would have claimed anyway stop showing up in the real total.
Break-even MER and profit
A MER of 3.0 sounds fine until you include costs. Work it out:
- Gross margin after product costs and fees. Revenue minus cost of goods, payment fees, shipping, packaging, returns. Say 55%.
- Break-even ROAS = 1 ÷ margin. At 55% margin, 1 ÷ 0.55 = 1.82. Any ad spend that returns less than 1.82× its cost in revenue loses money.
- Profit after ads = revenue − refunds − product costs − ad spend. The number that matters.
With the shop above at 55% margin: revenue $12,000, product costs and fees $5,400, ad spend $4,000, profit after ads $2,600. If Meta's ROAS says 5.2 on the $3,000 of Meta spend ($15,600 attributed value on a $12,000 real month), you can see the problem immediately. The break-even ROAS calculator does step 2 with your own margin.
What is a good MER?
It depends entirely on margin and on how much of your revenue comes from channels that are not ads. Rough reference points for e-commerce in 2026:
| MER | What it usually means |
|---|---|
| Under 2 | Losing money on ads for most physical products. Fine for a subscription business with strong retention. |
| 2 to 3 | Typical for brands that depend on paid acquisition. Profit is thin; a bad month hurts. |
| 3 to 5 | Healthy. Ads are working and organic or repeat revenue is contributing. |
| Over 5 | Either ads are very efficient, or you are underspending and leaving growth on the table. Check which. |
Watch the trend more than the level. A MER falling from 4.1 to 3.2 over six weeks while Meta's ROAS holds at 5 is the clearest signal you can get that Meta is claiming revenue it did not create.
Where MER falls short
MER tells you whether ads as a whole paid off. It does not tell you which campaign paid off, and it moves with things that are not ads (a newsletter, a press mention, a competitor's stock-out). Three ways to get closer without trusting Meta's attribution:
- UTM-matched true ROAS. Tag every ad's URL with
utm_campaignset to the campaign name or ID. Then revenue in Stripe or Shopify with that UTM can be joined to that campaign's spend. It undercounts (view-through, cross-device, people who strip parameters), so always show the coverage: "72% of revenue has a utm_campaign". - New-customer MER. Revenue from first-time buyers divided by ad spend. Harder, but it is the number for acquisition campaigns.
- Holdout tests. Pause Meta in one region for two weeks and compare. The only method that measures incrementality. Expensive, and most small advertisers never do it, which is why MER is the practical substitute.
Calculating MER by hand, weekly
- Export last week's revenue from Stripe, Shopify or your bank. Subtract refunds.
- Export spend from every ad platform for the same dates.
- Divide.
- Put the result next to Meta's reported ROAS in a spreadsheet, week by week.
It takes 20 minutes a week and most people stop after a month. That is the honest reason this metric is under-used, and the reason to automate it.
Getting MER computed for you
AdChat's Agent plan ($35 a month) connects Stripe or Shopify, or takes a CSV upload, and joins revenue to Meta spend by date. It reports MER and profit after refunds, product costs and ad spend next to Meta's attributed ROAS, in the hosted chat, in Claude and ChatGPT through the get_true_profit tool, in the Monday weekly report, and in the briefing the agent reads before every answer. When UTMs are present it adds per-campaign true ROAS with the coverage percentage stated. The agent's monitoring judges "zero-result spend" and "CPA spike" against these numbers when a revenue source exists, so the alerts you get are about money, not attribution.
Honest comparison: Triple Whale, Northbeam and Hyros do this with more depth (cohorts, multi-touch models, post-purchase surveys) from roughly $149 to $379 a month and up. If you spend $20,000 or more a month, look at them; our Triple Whale alternative page is a fair starting point. If you spend $500 to $10,000 a month, the MER and profit numbers plus the approval loop are what AdChat is built for. Prices checked November 2026.
Part of our series on AI agents for Facebook ads.
FAQ
What is the difference between MER and ROAS?
ROAS is per-channel and attributed: revenue a platform claims it caused, divided by spend on that platform. MER is blended and unattributed: all revenue divided by all ad spend. ROAS tells you what Meta thinks it did; MER tells you what happened.
Is MER the same as blended ROAS?
Yes. Same formula, two names.
Why is my Facebook ROAS higher than my actual revenue suggests?
Attribution windows claim purchases that other channels or organic traffic would have produced, modelled conversions fill gaps with estimates, refunds are never subtracted, and repeat customers are counted as if the ad won them. Each one pushes ROAS up.
What is a good MER for Facebook ads?
For a product with a 50 to 60% margin, 3 or above is healthy, 2 to 3 is thin, and under 2 loses money. Your break-even is 1 ÷ margin, so a 40% margin business needs 2.5 just to stand still.
Should I optimise Meta campaigns on ROAS or MER?
Use Meta's ROAS to compare campaigns against each other, because the bias is roughly equal across them. Use MER to decide whether to spend more or less in total, and to notice when Meta's number drifts from reality.
Can AdChat calculate MER from Shopify?
Yes. Connect Shopify or Stripe, or upload a CSV of orders. The agent computes MER, break-even and profit after ads, and shows them alongside Meta's reported ROAS in chat, in Claude and ChatGPT, and in the weekly report.
See your real number. Start a free 7-day trial, no credit card, connect Facebook and Stripe or Shopify, and ask "what was my MER last month?" Or run the break-even calculator first.
Try it on your own ad account
Connect your Meta ads to Claude, ChatGPT or our built-in chat in about a minute.
Questions? Email me at [email protected]
More in AI agent
Part of AI agent for Facebook ads.
Best AI Agents for Facebook Ads in 2026, Sorted by How Much Control They Take
Nine AI agents and media-buyer tools for Meta ads compared by control level, with verified prices, whether they ask before changing anything, undo, memory and real profit tracking.
How to Run Facebook Ads From Claude Without Blowing Your Budget
A safety-first guide to letting Claude manage your Meta ads: which connector to use, the scope to grant, the seven mistakes that cost money, and a setup where every change is a draft with undo.
Facebook Ads Budget Guardrails: The Rules Every Beginner Should Set
How to stop Facebook ads from overspending: the account spending limit, campaign caps, Ads Manager automated rules, and agent spend rules that gate every change. Which to set first and what each one misses.