THINXSTER
Blog/Meta Ads
Meta Ads9 min readAugust 7, 2026

How to Find ROAS on Meta Ads (And Why the Number You're Looking At Is Wrong)

Meta shows you a ROAS column. For lead-gen businesses it's usually fiction. Where to find it, how to read it, and how to build the ROAS that reflects revenue.

RK
Ryan Korsz
Founder & CEO, Thinxster

TL;DR

Meta shows you a ROAS column. For lead-gen businesses it's usually fiction. Where to find it, how to read it, and how to build the ROAS that reflects revenue.

→ See how this applies to your business (free 30-min call)

Finding the ROAS column in Meta Ads Manager takes about 40 seconds. Working out whether that number means anything for your business takes longer, and for most local service companies the honest answer is that it doesn't — and here's what to build instead.

Let's do both.

The 40-Second Answer

1.

Open Ads Manager and set your date range in the top right.

2.

Click the Columns dropdown above the table (it usually reads "Performance").

3.

Choose Customize Columns.

4.

Search for ROAS. You'll see options including Purchase ROAS (return on ad spend) and, if you run catalog ads, Website Purchase ROAS.

5.

Tick it, click Apply, and save the column set so you're not rebuilding it every week.

Faster route: choose the preset Columns → Purchase view, which includes purchase ROAS by default.

The number you're now looking at is calculated as total conversion value attributed to your ads ÷ amount spent. A 4.2 means Meta believes it generated $4.20 in tracked value for every $1.00 you spent.

Three words in that sentence are doing enormous work: *believes*, *attributed*, and *tracked*.

Why That Number Is Fiction for Most Local Businesses

Meta's ROAS column requires a purchase event carrying a monetary value, fired by your pixel or Conversions API. That works cleanly for e-commerce. For a business that generates leads and closes them on the phone or in a driveway, it breaks in four places.

1. There is no purchase event. Your conversion is a form fill or a call. It has no dollar value attached, so Meta either shows a blank ROAS or you've assigned a static made-up value to a lead — which means your "ROAS" is really "lead count times a number you invented."

2. The revenue happens off-site, days later. The roof gets sold at the kitchen table on Thursday. Meta's pixel is not in the kitchen.

3. Attribution windows distort everything. The default is 7-day click, 1-day view. A remodeling lead that closes in 40 days is invisible. A view-through "conversion" from someone who never clicked gets full credit. Neither reflects reality.

4. Privacy changes shrink observed conversions. Meta models the gap. Modeling is a statistical estimate, not a receipt.

The result is a number that can be wrong in either direction by a wide margin. I've audited accounts showing 6.1× in Ads Manager that were running at 1.8× on booked revenue, and accounts showing 1.2× that were genuinely profitable once phone conversions were tracked.

A ROAS you can't trace to a bank deposit is a confidence number, not a business number.

The Three ROAS Figures Worth Tracking

Stop asking one number to do everything. Track three, and know what each is for.

1. Platform ROAS (Meta's column). Directionally useful for comparing ad sets and creatives *against each other* inside the same account. The same measurement bias applies to all of them, so relative comparison stays fair even when the absolute value isn't. Use it for optimization decisions, never for budget-versus-revenue decisions.

2. Blended ROAS. Total revenue in the period ÷ total ad spend in the period, across every channel. Crude, unattributable, and completely honest. It tells you whether the marketing operation as a whole is working. Every business should know this monthly.

3. True ROAS — booked revenue by source. Closed revenue traced back to the campaign that produced the lead. This is the one worth building, and the one that changes how you spend.

Most businesses track only the first and then wonder why their bank account disagrees with their dashboard.

How to Build True ROAS

A week of work that permanently improves the quality of your decisions.

1.

Capture source data at lead creation. Every form, call, and chat should record platform, campaign, ad set, and ad. Use UTM parameters plus Meta's dynamic parameters, and make sure your CRM stores them on the contact record — not just in analytics.

2.

Assign stage-based value in your pipeline. Lead → qualified → appointment → quoted → won, with the actual contract value entered at won. Now revenue lives in the same record as source.

3.

Send conversions back to Meta via the Conversions API. Fire server-side events for qualified lead, appointment booked, and closed won, with real values on the last one. This does two things: it makes your reporting accurate, and it lets Meta's algorithm optimize toward customers instead of form fills. The second effect is often worth more than the reporting.

4.

Extend your attribution window to match your sales cycle. If your average lead closes in 25 days, a 7-day window is measuring a fraction of your results.

5.

Reconcile monthly. Pull closed revenue by source from your CRM, divide by spend by source from Ads Manager, and compare against what Meta reported. The gap between those two numbers is your measurement debt, and it will surprise you the first time.

$102M+
tracked client revenue — the reconciliation habit is how it gets tracked

The Diagnostic Most People Skip

Before you spend a month improving measurement, run this: pull your last 100 Meta leads and check the median time from lead creation to first contact attempt.

If it's over 30 minutes, your ROAS problem is not a reporting problem. Contact rates on inbound leads fall sharply within the first few minutes and collapse after half an hour. You can measure a broken funnel perfectly and still be broke.

The pattern I see constantly is a business obsessing over attribution modeling while leads sit unanswered for four hours. Fix the response layer first, then measure. A 2.1× ROAS with instant response beats a perfectly attributed 2.1× with slow response, because the first one is about to become 4×.

90s
how fast AI callers reach every inbound Meta lead, day or night

Reading the Number Once You Have It

Interpretation rules that save people from bad decisions:

  • Compare ROAS to your break-even, not to someone's benchmark. At 45% gross margin you break even around 2.2×, so 3× is healthy. At 80% margin, 1.6× is fine. Industry averages are useless without your margin.
  • Don't kill an ad set on one bad week. Below roughly 50 conversions per ad set per week, week-to-week swings are noise.
  • Watch ROAS at the creative level, not just campaign level. In most accounts one or two creatives carry the entire result, and campaign-level reporting hides that.
  • Falling ROAS with rising frequency is creative fatigue, not a broken audience. Frequency above about 3.0 in a small local audience is the usual culprit.
  • Rising CPMs with flat ROAS is fine. You're paying more for the same outcome. That's the market, not your account.
  • The Manual Calculation You Can Do This Afternoon

    You don't need the full build to get a usable true-ROAS number today. Do this by hand for last quarter:

    1.

    Pull Meta spend for a specific three-month window. Call it $18,000.

    2.

    Pull every closed job from that window in your CRM or accounting system.

    3.

    Tag each closed job with its original source. If you don't have source on the record, ask your office manager to go through them — for a few hundred jobs this is an afternoon, not a project.

    4.

    Sum the revenue on Meta-sourced jobs. Say $71,000.

    5.

    Divide. $71,000 ÷ $18,000 = 3.9× true ROAS.

    Now compare that to what Ads Manager reported for the same window. The difference is your measurement gap, and finding it is usually the moment a business owner starts caring about attribution.

    Two refinements once you've done it once: use a lag window that matches your sales cycle (spend from January measured against revenue closing through February if your average lead takes 30 days), and split by campaign rather than by platform once you have enough volume to make the sample meaningful.

    This manual pass is worth doing before you build anything automated, because it tells you how big the problem is and therefore how much automation it justifies.

    What Good Looks Like

    A working setup for a local service business: every Meta lead lands in a CRM with its campaign attached, gets contacted within 90 seconds, gets qualified against real criteria, and moves through pipeline stages where closed value is recorded. Server-side events flow back to Meta so the algorithm learns which people actually became customers. At month end, one report shows spend, leads, qualified leads, booked jobs, and closed revenue — by campaign.

    That's what we build. AI caller agents handle instant response and qualification, GoHighLevel pipelines hold the source-to-revenue thread, and reconciliation happens monthly against real closed jobs.

    62%
    average lead qualification rate across client accounts

    The difference in decision quality is enormous. You stop asking "is this ad set working" and start knowing which campaigns produce customers who actually pay.

    If your Meta ROAS column and your bank account tell different stories, [book a free strategy call](/book). We'll trace your spend to booked revenue and show you the real number.

    Free Weekly Briefing

    One AI Marketing Tactic.
    Every Tuesday. Free.

    What's actually working across our client accounts right now — ROAS moves, follow-up sequences, creative angles. The stuff that isn't in any blog post yet.

    No spam. Unsubscribe anytime. 1,200+ business owners already in.

    Ready to Deploy

    SEE THIS IN
    YOUR BUSINESS.

    30 minutes. We scope the exact systems that apply to your situation and give you a plan.

    ★★★★★ Trusted by 47+ local service businesses

    BOOK A STRATEGY CALL →