Meta Ads · Attribution · Measurement

Meta Ads Attribution:
Why Your Numbers
Don't Add Up

Meta says 200 purchases. Google says 180. Your Shopify says 120. One of them is right. Here's how attribution works, why it breaks, and what to do about it.

✍️ Yap Jia Jie 📅 April 2026 ⏱ 9 min read 🏷 Meta Ads · Measurement
Topics Covered Attribution WindowsView-Through AttributioniOS 14 ImpactConversions APIBlended CACIncrementality
The Problem

Six Reasons Meta Attribution Is Broken

Every single one of these is inflating your reported ROAS right now — unless you've explicitly fixed them.

👁️
View-Through Attribution

Meta's default window includes 1-day view attribution — meaning if someone sees your ad but doesn't click, then buys within 24 hours through any other channel, Meta still claims the credit. This alone inflates reported conversions by 20–40% for most accounts.

Cross-Platform Double-Counting

A buyer clicks a Meta ad on Monday, then searches your brand on Google and converts Friday. Meta claims it (7-day click window). Google claims it (last-click). Your CRM records one sale. Both platforms report a conversion. Your combined platform ROAS looks great. Actual ROAS is half that.

📱
iOS 14.5 Signal Loss

Apple's App Tracking Transparency (ATT) removed Meta's ability to track iOS users across apps and websites. Roughly 60–70% of iOS users opted out. Meta now models these conversions using statistical inference rather than actual tracking — adding estimated conversions that may not have occurred.

🔄
Modelled Conversions

When Meta can't directly attribute a conversion (due to iOS limits, ad blockers, or cookie restrictions), it models what likely happened based on similar users. These modelled conversions are added to your reported results — blurring the line between observed and estimated.

🍪
Browser Restrictions & Ad Blockers

Safari's Intelligent Tracking Prevention (ITP) restricts first-party cookies to 7 days and blocks third-party cookies entirely. Combined with ad blockers affecting 30%+ of web traffic, your pixel is missing a significant portion of conversion events — leading to under-reporting that Meta compensates for with modelling.

🕒
Long Attribution Windows on Short Cycles

A 7-day click window makes sense for high-consideration purchases. For impulse buys or daily consumables, it massively over-attributes. A customer who clicked your ad last week and bought because they ran out of product wasn't persuaded by your ad — but Meta counts it.

The Reality

How Inflated Is Meta's Reported Data?

2x
Typical gap between Meta-reported purchases and actual Shopify/CRM sales for advertisers with default attribution settings and no CAPI implementation.
Over-reporting estimate
40%
Average conversion inflation from view-through attribution alone — removed by switching to 7-day click only window. Most accounts see an immediate ROAS "drop" that's actually a data correction.
View-through impact
60%
Of iOS users opted out of App Tracking Transparency after iOS 14.5. For accounts without Conversions API, this means the majority of iOS conversions are estimated rather than measured.
iOS signal loss
30%
Improvement in attributed conversion accuracy typically seen when Conversions API (CAPI) is implemented alongside pixel — recovering signal lost to browser restrictions and iOS privacy controls.
CAPI signal recovery
Attribution Windows

Which Attribution Window Should You Use?

The window you choose determines what Meta optimises toward — not just what it reports. Here's a clear guide.

Attribution WindowWhat It ClaimsInflation RiskBest For
7-day click + 1-day view (default)Clicks within 7 days + ad views within 24hVery HighAvoid — inflated baseline
7-day click onlyClicks within 7 days onlyModerateMost eCommerce businesses
1-day click onlyClicks that convert same dayLowImpulse purchases, flash sales
28-day clickClicks within 28 daysHighHigh-consideration products only
7-day click + 7-day viewClicks + views within 7 days eachVery HighAvoid entirely

The Attribution Fix Framework

There's no single solution that makes Meta attribution perfectly accurate — but there is a stack of fixes that collectively gives you a far more reliable read on performance. Apply them in order of impact.

🔧 Fix 1 — Switch to 7-Day Click Only

Go to Ads Manager → Columns → Attribution settings → Select 7-day click. Apply to all campaigns. Your ROAS will drop immediately — that's not your performance getting worse, it's your data getting more honest. This is the single fastest win.

📡 Fix 2 — Implement Conversions API

CAPI sends conversion events server-side, bypassing iOS limits and ad blockers. For Shopify, enable the native Meta CAPI integration. For custom stacks, use Meta's direct API or a partner like Elevar or Littledata. Aim for event match quality score of 8+ in Events Manager.

💰 Fix 3 — Calculate Blended CAC

Don't trust platform attribution. Calculate: Total Meta Spend ÷ Total New Customers (from CRM, not Ads Manager). Compare this to your Meta-reported CAC. The ratio between the two numbers is your personal over-reporting multiplier — use it to calibrate all future reporting.

🧪 Fix 4 — Run a Ghost Ad Test

The gold standard of incrementality. Pause Meta ads for a subset of your audience (holdout group) for 14 days. Compare conversion rates between exposed and holdout groups. The difference is your true incremental lift — the actual revenue driven exclusively by Meta ads.

Practical Guide

How to Reconcile Meta vs. Reality in 4 Steps

01

Pull Real Revenue

Export new customer orders from Shopify or your CRM for the same date range as your Meta campaign. This is your ground truth — not Ads Manager.

02

Change Your Window

Switch all columns to 7-day click only. Screenshot or export both the old and new ROAS numbers. The delta shows how much view-through was inflating your results.

03

Build Your Multiplier

Divide Meta-reported purchases by your actual CRM purchases for the same period. If Meta says 200 and CRM says 100, your multiplier is 2x. Apply this going forward when reviewing reported ROAS.

04

Set a True North KPI

Define a primary KPI that Meta can't distort — Blended ROAS (Total revenue ÷ Total ad spend) or nCAC (new customers cost). Report to leadership on this metric, not platform ROAS.

What About Media Mix Modelling?

Media Mix Modelling (MMM) is the most robust attribution approach available — it uses statistical regression across all marketing channels to estimate the contribution of each to revenue, independent of platform-reported data. It completely bypasses the Meta-vs-Google attribution war because it models from outcomes backward, not from ad clicks forward.

MMM is traditionally expensive (custom statistical modelling, data science expertise required). But tools like Meridian (Google's open-source MMM), Northbeam, and Triple Whale have made it accessible for mid-size eCommerce brands spending $50k+/month.

Recommended stack for most brands: 7-day click window + CAPI implementation + Blended CAC dashboard in Looker Studio + quarterly ghost ad test. This gives you 80% of the accuracy of MMM without the complexity — and it's buildable in a single sprint.

The Most Important Mindset Shift

Stop benchmarking against your own Meta-reported ROAS as though it's real. Your historical Meta ROAS is an internally consistent number, not an accurate revenue attribution number. It can tell you which campaigns perform better or worse relative to each other. It cannot tell you the actual revenue Meta generated. Use it for relative comparison. Use Blended CAC for absolute truth.

Free — no commitment

Not Sure If Your Attribution Is Broken?

I'll audit your Meta pixel setup, attribution windows, and CAPI implementation — and tell you exactly how much your current reporting is inflating or deflating real performance.

jiajie9898@gmail.com · +61 290 984 494 · GA4 + Meta Ads specialist
FAQ

Meta Ads Attribution — Frequently Asked Questions

Why does Meta report more conversions than my CRM or Shopify? +

Meta uses a multi-touch attribution window (default: 7-day click + 1-day view). It claims a conversion anytime someone clicked or viewed your ad within that window — even if they converted through another channel like Google Search. Both platforms claim the same conversion, inflating reported numbers on each.

What is the best attribution window for Meta Ads? +

For most businesses, 7-day click only (removing the 1-day view component) gives a more accurate read on paid conversions. View-through attribution inflates numbers significantly as it captures organic or direct converters who happened to see your ad.

How do I reconcile Meta Ads data with my actual sales? +

Use a blended CAC approach: take your total Meta spend divided by total new customers acquired in the same period. This bypasses platform attribution entirely and gives you a real CAC figure that matches your CRM data.

Did iOS 14 permanently break Meta attribution? +

iOS 14.5 significantly reduced signal fidelity for Meta Ads targeting and attribution. Meta's Conversions API (CAPI) partially recovers this signal by sending server-side events. Advertisers with CAPI correctly implemented see meaningfully better data quality than pixel-only setups.

What is Conversions API and should I use it? +

Meta Conversions API (CAPI) is a server-side event tracking method that sends conversion data directly from your server to Meta — bypassing browser-based restrictions like ad blockers and iOS privacy updates. Any advertiser spending $1,000+/month should have CAPI set up alongside their pixel.

Scroll to Top