Meta says 4x. What did the bank say?
How we get from the number in Ads Manager to the number that pays the bills: clean data in, the right column, blended store numbers, and tests that show what the ads caused.
Written by Pedram Ghozat, founder of MediaBoostr, and PedramAI · Updated
Why nobody trusts the ROAS number
Meta shows one number, Shopify shows another, the bank shows a third. Most brands pick the one they like and scale on it.
None of these needs a paid tool to fix. They need a setup you can trust and a short list of numbers you read the same way every week.
Each number has one job
Meta’s revenue and Shopify’s revenue will never match, and chasing the difference is a waste of weeks. Meta counts the sales it can link to an ad. Shopify counts every order. One can over-claim and under-claim at the same time.
So we give each tool one job. Shopify, or the bank, is the truth for money. Meta is for comparing ads and ad sets with each other. Cold campaigns exist to bring new buyers, so they are judged on what a new customer costs, from store data.
Three store numbers, read daily and acted on weekly, tell you more than any attribution dashboard. The formulas fit on a sticky note.
Example numbers from one made-up month. The worked example below shows where they come from.
Six steps from Meta’s number to the bank’s
What we set up and check for every account, from the first event to the first test of what the ads caused.
Get clean data in
The Meta pixel in the browser and the Conversions API on the server, sending the same purchase with the same event ID so Meta counts it once. On Shopify, the Facebook & Instagram app does this at its highest data-sharing setting.
Know what Meta counts as its sale
Meta gives credit inside windows after a click or a view. Meta now counts only link clicks as clicks; likes, saves and video views moved to a separate engage-through window. Numbers from before and after that change don’t compare.
Stop expecting a match
Meta over-claims when it credits views, existing customers or sales another channel drove. It under-claims when tracking drops, people switch devices or buy in a store. Both happen in the same account.
Read blended numbers every day
Total ad spend next to three store numbers: MER, new-customer cost and new-customer MER. MER alone can look healthy while the cold program behind it stalls, because it includes repeat buyers and email.
Get a second opinion on credit
Meta offers an incremental attribution setting that tries to count only the sales the ad caused. It is a model, a prediction. Retargeting and catalog campaigns usually shrink the most when you look through it.
Test what the ads caused
Hide the ads from a random group and compare their buying with the group that could see them. Meta’s Conversion Lift does this inside the platform. A geo holdout pauses ads in a few matched regions and compares store sales there.
What you can afford to pay for a new customer comes from margin, not from the ad account. That side is on ecommerce profitability.
The best-looking number is the least useful
A made-up month: $50,000 Meta spend, the only paid channel, 1,000 first-time customers spending $120,000 at a 60% gross margin.
The 4.0 is what gets screenshotted. The 2.4 against the 1.67 says whether cold ads pay, and $50 per new customer on a $72 first-order profit says they pay back on order one.
The decision rule: scale while new-customer MER stays above break-even and new-customer cost stays under target. Everything else is context.
Brands that can’t say what their ads earn
If the agency report, Ads Manager and the bank all tell different stories, measurement is usually the first fix.
Questions
Do I need the Conversions API if the pixel works?
Yes. Browsers, ad blockers and privacy settings drop a share of pixel events. The Conversions API sends the same events from the server, so Meta sees more purchases and matches more buyers. Run both, with a shared event ID so each purchase counts once.
Why doesn’t Meta revenue match Shopify?
They count different things. Meta counts sales it can link to an ad inside its windows, including some views. Shopify counts every order. Use Shopify for money and Meta for comparing ads.
What is MER?
MER, or marketing efficiency ratio, is total store revenue divided by total ad spend. Some call it blended ROAS. It includes repeat buyers and email, so we read it next to new-customer cost and new-customer MER.
Which attribution setting should I use?
For cold campaigns we decide on the 7-day click column. The default columns, with view-through and engage-through, are useful context but give credit to people who might have bought anyway.
What is a holdout test?
A test where a random group, or a set of regions, does not see your ads. The difference in buying between that group and everyone else is what the ads caused. Meta’s Conversion Lift runs one inside the platform for accounts with enough spend and conversions.
Do I need a paid attribution tool?
Not to start. The pixel, the Conversions API, Shopify and a weekly sheet cover most brands under a few million a year. A paid tool can help once you run several paid channels at scale.