Advertising Waste Diagnostic · System 01 · the first check before any spend decision

Reconcile Before You Optimize

Every advertising platform reports its own success. Before you cut, shift, or add a dollar, find out how many of the conversions it is counting are customers you can find in your own records. That one comparison decides whether anything else in the account can be trusted.

The idea in one line: a platform’s conversion count is a claim about credit, made under the platform’s own rules, by the party being paid. Your business runs on a different number: customers it can find in its own records. The distance between the two is the first thing to measure, because every decision made inside the dashboard inherits it.

01

What the platform is counting

A conversion is whatever the platform counts as a result: a form filled, a call, a purchase. Attribution is its rule for which ad gets the credit. Three reports, three different rules. As of this writing, the defaults are:

Google Ads
Data-driven attribution. Splits credit for a conversion across the Google ad interactions that preceded it.
GA4
Data-driven, paid and organic. Splits credit across every channel it saw on the way in, ads included.
Meta Ads Manager
7-day click or 1-day view. Counts a conversion if someone clicked a Meta ad in the past week, or saw one yesterday.

Each one is answering the same question: was there one of our touchpoints, inside our window, before this event happened? None of them is asking whether the customer would have arrived anyway, and none of them knows what the others counted. Someone who clicks a Meta ad on Tuesday and a Google ad on Thursday, then buys, is a conversion in both reports. Add the two columns together and you have counted that customer twice.

The reports are each internally honest. They are also incompatible with one another and with your own books, and that is by design. Each platform is allocating its own credit, and none of them is trying to be the source of truth for the business.

02

Why the count runs high

Most of these are ordinary consequences of how the platforms count, rather than mistakes anyone made. They matter because the count gets read as if it were a customer ledger.

Double credit

  • Google and Meta each see a touchpoint inside their own window and each claim the sale. One customer, two conversions, and the totals from both reports get added together in a spreadsheet somewhere.

Duplicate firing

  • A native Google Ads tag plus the same event imported from GA4. A browser pixel plus a server-side event with no shared ID. A thank-you page that reloads. One action, two or three conversions.

Micro-events counted as leads

  • Form starts, button clicks, phone-link taps, scroll depth, brochure downloads. Useful signals, and none of them is a person you can call. If one sits in the primary conversion column, the conversion rate is inflated and the bidding is chasing the wrong thing.

View-through

  • Meta’s default window credits a conversion to an ad someone saw yesterday and never clicked. Some of that is real influence. All of it counts the same.

Leads that are noise

  • Bots, disposable emails, duplicate contacts, people who never answer the phone. The form fired correctly and the conversion is recorded. There is still no customer.

Better matching read as new demand

  • Enhanced conversions match more of the sales you already made to the ads that preceded them. Reported coverage goes up. Nothing new was sold.

Traffic from places you didn’t choose

  • Search Partners and Display expansion left on by default. Conversions from there look identical in the totals and often behave nothing like the rest of the account.
03

How to match the two sets of numbers

Pick one month: recent enough that the customers are still identifiable, old enough that the slow ones have closed. Then pull two things and match them.

1
From the platform. Conversions by campaign and by day, with the conversion action named and the attribution rule written next to it. Campaign-level exports are available to every account, so the reconciliation never needs the data the platforms hide.
2
From the business. Every lead, order, booking, or call that month, from wherever the business keeps its truth: the CRM, the order system, the booking calendar, the phone log, the bank. With a source or campaign field if there is one, and a timestamp regardless.
3
Match them. Lead by lead, order by order. Then walk each platform conversion down the ladder below and write the number at each rung.
Example
Platform reported: 140 leads (Meta, 7-day click / 1-day view)
Found in your records: 96
A reachable person: 71
Qualified: 30
Became a customer: 9
Revenue from those nine: $27,400
Of the 44 leads the CRM could not find, 31 came from one ad set whose primary conversion was a brochure download. That concentration is what makes it a finding rather than a counting problem, as section 04 explains.
Your month — copy this block for each platform
Platform reported: ______ (platform, attribution rule)
Found in your records: ______
A reachable person: ______
Qualified: ______
Became a customer: ______
Revenue: ______
Label every number with the rule that produced it. “Meta-attributed leads, 7-day click / 1-day view” and “CRM leads, September” can sit side by side. They cannot be added.

Note which rung the numbers fall off, because one of them is not about advertising. A heavy drop between found in your records and a reachable person means inquiries are arriving and nobody is reaching them, which no bid change repairs and no targeting survives. And the word qualified needs a definition owned by whoever lives with the consequences of getting it wrong, written down and dated before anyone argues about lead quality.

The matching is the tedious part and it is also where AI earns its keep, as long as you hold it to the evidence:

Do this step with an AI assistant

Open ChatGPT, Claude, or whatever you use, and upload both files: the platform’s month and the same month out of your own records, as a CSV or spreadsheet. Then send these three messages one after another in the same chat. The matching is the tedious part, and it is what an assistant is good at, as long as you hold it to the evidence.

  • “Here are two exports for the same month: what the platform reported, and what our own records show. Match them as far as the data allows, and say which matches are certain, which are probable, and which you can’t make.”
  • “For every platform conversion you can’t find in our records, say which of the causes above is the most likely explanation, and what evidence would confirm it.”
  • “Don’t recommend changes to the account yet. Tell me how far apart the two numbers are, where the gap concentrates, and what I’d need to pull to close it.”
04

What the gap tells you

You will end up with one of four pictures, and each one sends you somewhere different. The line between small and large is a working rule of ours rather than a law: if you can find roughly four in five of the platform’s conversions in your own records, the gap is small. Below that it is large. A large gap is concentrated when one campaign, network, placement, or ad set holds more than half of the missing ones, and spread when none does.

Small gap

  • Four in five or more of the reported conversions are in your records, and most of those turn into reachable people. The platform’s number is a usable proxy. Optimize on it day to day, judge the spend on your own figures, and move on to System 02.

Large gap, spread evenly

  • Fewer than four in five found, and the missing ones are scattered across campaigns in roughly the same proportion. A counting problem: duplicate firing, a micro-event in the primary column, a tracking change on a date you can find. Fix the definition before touching a bid. The platform is learning from the wrong signal, and every optimization you make teaches it faster.

Large gap, concentrated

  • Fewer than four in five found, and one campaign, network, placement, or ad set carries more than half of the difference. That is a finding. It belongs in System 02, where it gets classified and sized. In the example above, 44 of 140 are missing and 31 of them sit in one ad set, so it is this picture.

Too little data to say

  • At small budgets the binding limit is conversion volume per slice, meaning any cut of the account you can name: a campaign, a city, an hour. A campaign with six conversions this month cannot tell you anything about hours, cities, or devices, and no export changes that. Below about thirty conversions in a slice, reconcile one level up and stop there.

Whichever picture you get, the reconciliation also settles what the platform’s number is for. Use it to run the account day to day. Use your own records to run the business. Use neither to decide whether the advertising is creating customers who would otherwise have stayed away. That takes a holdout, meaning you stop the ads for one comparable group of customers and watch what your own records do, and it is System 03.

05

A worked example

A practitioner inherited a lead-generation account and did the reconciliation above. The dashboard was clear about its best segment: Search Partners, the network of third-party sites Google extends search ads onto, was converting at a cost per lead of about $188 against $575 on Google Search itself. Three times as efficient, by the platform’s own arithmetic, and automated bidding was steering spend toward it accordingly.

Matched against the CRM, the segment had spent roughly $78,000 for 417 reported conversions. Of those, 380 were junk or spam, eight were qualified, and one became a customer. On Google Search proper, more than half of the leads qualified. The segment the dashboard rated three times better was producing one qualified lead for every ten thousand dollars.

Nothing inside the dashboard would have surfaced this. The dashboard was the thing reporting it as a success. That is the pattern worth internalizing: the platform’s count is the input to every decision made inside the platform, so when the count is wrong, optimizing harder moves you faster in the wrong direction. The only way out is a number the platform did not produce.

Once you know how far the platform’s count is from your own, you know which kind of problem you have: a counting problem to fix first, or a gap that needs sizing. System 02 covers the sizing:four kinds of advertising waste, and how to tell which one you are looking at.

Next in the Advertising Waste Diagnostic · System 02Four Kinds of Waste 10 min read