ClarusIQ
All posts
8 min read

Why Your Client's Numbers Never Match Your Platform's

Illustration for "Why Your Client's Numbers Never Match Your Platform's"

Why Your Client's Numbers Never Match Your Platform's

In why marketing agencies need Power BI, the opening scenario was a client call where the platform report and the client's own numbers disagreed, and the meeting spent ten minutes on the disagreement instead of the campaign. This piece is the mechanism behind that scenario: why it happens, specifically, and why it isn't a data quality problem in the way most people assume.

Picture a hypothetical, illustrative version: a campaign's Google Ads report shows 2,140 leads for the month. The client's CRM shows 1,860 for the same campaign, same month. Neither number is wrong. That's the part worth sitting with before looking for a fix.

The instinct in that room is usually to treat the gap as a data quality problem, something got miscounted, a tag fired twice, an export ran on the wrong day. Sometimes that's true. But the more common cause is more specific and more fixable than "the data is messy": two systems each applying a different, internally valid definition of the same word, with nobody having ever written down which definition the agency actually reports on.

Key Takeaways

  • Google's own documentation identifies specific, named reasons conversion counts differ: conversion windows versus lookback windows, whether a system counts every conversion or one per interaction, and whether a conversion is dated by the ad interaction or the conversion event itself.
  • None of these differences are bugs. Each platform's counting method is internally consistent, it's just not the same method the next platform uses.
  • Extending past Google Ads, every platform (Meta, LinkedIn, TikTok) and the CRM sitting downstream of all of them layers its own counting logic on top, which is why the mismatch gets worse, not better, as an agency adds more platforms per client.
  • The fix isn't choosing which platform's number is "right." It's defining, once, which specific counting logic the agency reports on, and applying it consistently across every platform and every client.

The Mechanism: Why the Numbers Were Never Going to Match

Google's own support documentation names three distinct, specific reasons conversion counts diverge, and none of them are edge cases. A conversion window determines the period after an ad interaction during which a conversion can still be recorded. A lookback window, a separate setting used in attribution reporting, determines how far back an ad interaction remains eligible for credit, typically 30, 60, or 90 days. And count settings determine whether the platform counts every conversion event or caps at one per interaction (Google Ads Help).

A fourth mechanism compounds the first three: Google Ads reports a conversion against the date of the ad impression that (eventually) led to it, while many other tools, a CRM included, log the conversion against the date it actually happened. A lead that clicked an ad on the 28th of one month and converted on the 3rd of the next shows up in different reporting periods depending on which system is counting it, per that same Google Ads documentation.

Stack those four mechanisms together and two systems can each report a completely defensible, internally consistent number for "conversions this month" that don't match each other by design, not by error. Nobody on either side made a mistake. The systems were simply never told to agree.

Continuing the earlier illustrative example: the 2,140 Google Ads reported might include multiple form fills from the same person, dated by the ad impression, within a 30-day conversion window. The 1,860 the CRM shows might count each person once, dated by when they actually submitted the form, filtered down to leads someone on the team judged as real rather than spam or a duplicate entry. Both numbers are doing exactly what they were configured to do. Neither is lying. They're just answering slightly different questions that happen to share the word "leads."

Comparison showing a Google Ads report displaying 2,140 leads next to a client CRM displaying 1,860 leads for the same campaign and month, with a question mark between them

Same campaign, same month, two internally correct numbers, because nothing forced the counting logic to agree.

It's Not Just Google Ads vs. CRM

The mechanism above is specific to Google Ads, but the shape of the problem generalizes to every platform an agency touches. Meta counts engagement and conversion differently than Google does. LinkedIn's lead-gen forms have their own attribution logic. A CRM pipeline stage ("Lead," "Qualified," "Opportunity") is a business decision, not a platform-defined event at all, which means it can disagree with every ad platform simultaneously without any of them being technically wrong.

This is why adding more platforms to a client's reporting stack tends to make the reconciliation problem worse, not better. Five platforms don't average out to one clearer picture. They produce five internally consistent, mutually disagreeing counting methods, each of which was reasonable in isolation and none of which was ever reconciled with the others.

Attribution windows compound this in a specific, easy-to-miss way across channels too. If someone sees a Meta ad on a Monday without clicking, then clicks a Google search ad on Wednesday and converts, a platform-level view window can let more than one channel claim credit for the same conversion, each one correctly following its own rules. From a single platform's dashboard, that looks like healthy performance. Rolled up across every channel without reconciliation, it can quietly overstate total leads by counting the same person more than once.

The Fix Isn't Picking a Winner

The instinct is to find the "correct" platform and standardize on it. That doesn't actually work, for the same reason it doesn't work inside a single business: each platform's number is genuinely useful for a specific purpose. Google Ads' conversion count is the right number for optimizing bids inside Google Ads. The CRM's qualified-lead count is the right number for a client deciding whether the campaign is worth the spend. Neither should be discarded in favor of the other.

What actually fixes this is a governed layer that sits above all the platforms: one explicit definition of what the agency reports as "leads" or "conversions" for a given client, documented, with a specific counting methodology chosen deliberately rather than inherited by accident from whichever platform happened to be checked first. That governed measure gets built once, in the reporting layer, and every platform's raw data feeds into it using a consistent, disclosed method, rather than each platform's own number being quoted directly and left to disagree with the next one.

In practice, that measure lives in Power BI as one certified, reusable calculation (Microsoft Learn) that everyone on the account pulls from, marked and endorsed so account managers can tell a reconciled, approved number apart from a raw platform export at a glance (Microsoft Learn). The same discipline that keeps two internal reports from disagreeing applies here, just with the added step of reconciling platform-specific counting logic before the number reaches a report at all.

That reconciliation step has to be documented, not just calculated. A written note next to the measure, "counts leads by conversion date, one per interaction, 30-day window," turns an invisible methodology decision into something a client or a new account manager can actually check, instead of a choice buried in a formula nobody remembers making.

Where This Fits

This is squarely Data Foundation work: connecting ad platforms, the CRM, and billing systems into one validated model, with an explicit, documented definition of spend, leads, and ROAS that every client report pulls from instead of quoting whichever platform's number came up first. It's also usually the very first thing worth fixing, because it's the specific gap behind the "whose number is right" call most agencies have monthly.

If your team is regularly having that call, the mismatch isn't a sign that someone's reporting is broken. It's a sign the counting logic was never explicitly reconciled, and that's a scoped, fixable project, not a reason to distrust every number your agency produces.

The scoping question worth asking first is narrower than "fix all our reporting": which specific metrics, across which specific clients, actually get questioned often enough to justify this work right now. Most agencies find it's a short list, usually the metrics that show up in the first slide of every client deck, not the entire platform-by-platform export. Starting there produces a reconciled, documented definition for the numbers that matter most, without turning this into a months-long project before anything client-facing improves.

Book a Reporting Diagnostic to find out exactly where your current reporting reconciles and where it doesn't.

Next in this series: what actually breaks first as an agency outgrows spreadsheets, and why it usually isn't the reason most teams expect.

Want to talk through how this applies to your data?

Book a Reporting Diagnostic