Teach ·2 min read

Attribution: why every platform over-reports, and what to do about it

Add up what your ad platforms claim and you'll frequently find they've collectively driven more revenue than your business actually made.

Nobody's lying. They're each answering a different question, and none of them is the question you're asking.

Why the numbers don't add up

Every platform claims the same conversion. Someone sees a Meta ad, searches your brand, clicks a Google ad, and buys. Meta claims it. Google claims it. It's one sale.

Platforms only see their own data. Meta cannot know a Google click happened. It attributes based on what it observed.

View-through attribution. Meta counts conversions from people who saw but didn't click an ad, within a window. Sometimes that influence is real. Sometimes the person was buying anyway.

Default windows are generous. A 7-day click window means anything within a week gets credited, regardless of what else happened in between.

The question that actually matters

Not "which platform gets the credit" but "if I turned this off, what would happen to total revenue?"

That's incrementality, and it's a genuinely different question. A campaign can be highly attributed and barely incremental — brand search being the classic example, where you're paying for people who were already coming.

Three ways to get closer to the truth

1. Reconcile at account level, monthly.

Total ad spend against total revenue from your own system. Not per campaign. This is blunt, and it's the single most useful number most businesses aren't looking at.

Track blended CAC: total marketing spend ÷ total new customers. It ignores attribution entirely, which is its strength.

2. Run geo holdouts.

Turn a channel off in one region for two to four weeks while keeping it on elsewhere. Compare revenue trends. This is the closest most businesses can practically get to a real incrementality test.

Requires enough volume per region to read a signal, so it's not available to everyone.

3. Watch what happens when you change spend.

Increase a channel's budget 40% and watch total revenue, not attributed revenue. If attributed revenue rises 40% and total revenue rises 4%, you've learned something important.

Practical rules I use

Never sum platform-reported revenue. It's double-counted by definition.

Use platform numbers for within-platform decisions. Meta's data is reliable for comparing two Meta ad sets. It's unreliable for comparing Meta against Google.

Use blended metrics for budget allocation. Cross-channel decisions need a cross-channel number.

Isolate brand. Separate brand campaigns so you can see non-brand performance honestly, and question whether brand spend is incremental at all.

Discount view-through by default. Treat click-based conversions as the baseline and view-through as a bonus you're sceptical of.

What to tell stakeholders

The temptation is to report the flattering number. Resist it.

The honest framing: "Platform-reported figures total R900,000. Actual revenue was R620,000. The gap is overlap and over-attribution, which is normal. Here's blended CAC and here's the trend."

That framing survives scrutiny. The flattering one collapses the first time someone opens the accounting system.

The thing to accept

You will never have perfect attribution. Privacy changes have made it structurally worse and that direction isn't reversing.

The businesses that handle this well stopped trying to attribute every sale and started watching whether total revenue moves when spend moves. It's less precise and considerably more honest.

Illustration of Ismaeel Motala
Ismaeel Motala

Digital marketing and AI specialist in Cape Town. Over $1M a month in managed ad spend; campaigns for Crocs, Under Armour, Ted Baker and Vans. More about me · Get in touch

Keep reading

Related posts

Newsletter

One email when I publish

No digest, no roundup, no "5 AI tools you need". One email when there's something worth reading.

Signup goes live shortly.