Skip to main content

Why does the revenue attributed to each channel add up to more than we actually billed?

Marketing Intelligence Published August 31, 2026
Short Answer

Because every platform claims the conversions it touched, and a customer who saw an ad, searched your brand and then called gets counted by all three. Platform reports are built for optimizing that platform, not for summing across platforms. The fix is a single reconciled ledger where each job is credited once, with the platform-level fractional views kept alongside for optimization but never added together.

Every platform is telling the truth about itself

Google Ads counts a conversion when its click preceded the action within its lookback window. Meta counts one when its impression or click did. Your local services lead platform counts one when the call came through its number. A single customer journey can legitimately touch all three, and each platform correctly reports its involvement.

None of them is lying. They were simply never designed to be added. The addition happens in a spreadsheet somebody built on a Friday, and it produces a total that exceeds what the company invoiced.

The audit that takes ten minutes

Sum the revenue your channel reports claim for a closed month. Compare it to the invoiced revenue in your field service or accounting system for the same month. The ratio between them is your inflation factor.

If attributed revenue exceeds billed revenue, you have double counting, timing mismatch, or both. If it falls well short, you have a match rate problem instead: journeys that could not be tied to any source. Either way, that one ratio tells you how much to trust every channel comparison you have been making. Reconciling to the operational system first is why we treat the field service platform as the system of record for revenue.

Two credit models, used for two purposes

  • Single credit for the ledger. Each job gets exactly one source, assigned by a documented rule. The rule can be last non-direct touch, first touch, or a hierarchy you define. What matters is that it is written down and applied consistently, so the totals sum to billed revenue.
  • Fractional credit for optimization. Within a channel, fractional and platform-modeled credit is genuinely useful for deciding which campaigns to fund. Use it there and never carry it into the ledger.
  • Never mix the two in one table. A report where some rows are single-credit and others are platform-reported is the most common way this error gets institutionalized.

Timing is the other half of the discrepancy

Platforms credit conversions to the click date. Your operational system records revenue on the invoice date. A lead that clicked in March and paid in May appears in different months depending on which system you asked, and no amount of deduplication fixes that.

Pick a convention. Cohort dating credits revenue back to the period of the lead, which is right for judging marketing. Invoice dating credits it to the period the money arrived, which is right for finance. Publish both if you must, labeled, and never let a channel comparison silently switch between them. Handling this consistently is one of the concrete things a built reporting layer does that a stack of platform exports cannot.

Topics: double counting · attribution · reporting · reconciliation

Have a version of this question about your own business?

The useful answer usually depends on which systems you run and how they're connected. That's a conversation, not a blog post.

Related Answers

People who read this also asked

Browse the Answer Hub →

AI is easy to access. Making it useful is hard.

Bluefrog makes AI useful by integrating it with the way your business actually works — your software, your calls, your customers, your marketing and your revenue.

Technology development since 1997 · AI integration platforms since 2001