Attribution · Sprites diagnoses this

Cross-channel attribution

Cross-channel attribution decides how much credit each channel gets when a buyer touched more than one before converting. Every ad platform attributes inside its own walls, so Google, Meta and LinkedIn each claim the same sale and their totals add up to more than you sold. You need one neutral record, your analytics or CRM, to split the credit honestly.

$1 today. Cancel anytime before day 7.

What Sprites checks

  • ?Sum of platform conversions412
  • ✓Actual orders or signups251
  • !Overclaim1.6x
  • ?Conversions with a known source72% in analytics
Illustration of a typical broken account. Your own readout comes from your account.

Why it happens

Each platform credits itself

  1. Each platform credits itself

    Google and Meta each count a conversion if their own ad was clicked or viewed inside the window, with no idea the other was there.

  2. View-through credit stacks on clicks

    Meta and LinkedIn count views. A buyer who saw a Meta ad and clicked a Google ad is a conversion on both.

  3. Different windows and models

    Data-driven on Google, 7-day click on Meta, last touch on LinkedIn. The rules are never the same.

  4. Gaps in your own trail

    Stripped UTMs and blocked tags leave your analytics with an incomplete path, so the neutral record undercounts paid touches.

How to line them up, step by step

  1. Add up the platforms

    Pull conversions from every ad platform for the same dates and compare the total to orders or signups from your backend.

  2. Tag every channel the same way

    Use one UTM convention on every ad and email so your analytics sees each touch.

  3. Use your analytics for the split

    In GA4 open Advertising, then Attribution, then Conversion paths to see which channels appear together, and Model comparison to see how credit moves.

  4. Use platforms for in-platform bidding only

    Let each platform optimize on its own numbers, but move budget between channels on the neutral record.

Steps checked against Google Analytics Help: Conversion paths report; Google Analytics Help: Model comparison; Meta Business Help Center: About attribution settings.

Sprites diagnoses this

Sprites diagnoses it

Sprites puts every platform’s claimed conversions next to your analytics and CRM and shows the overclaim.

What Sprites does

  • Pulls Google Ads, Meta, LinkedIn and Microsoft Ads conversions for the same dates in one view.
  • Splits GA4 conversions by channel and PostHog signups by UTM source as the neutral record.
  • Reads HubSpot deals with their original source, so channel credit can be checked against revenue.

What it doesn't do

  • It does not run a custom attribution model or a lift test.
  • It does not change attribution settings on any platform.

Questions

Why do my ad platforms report more conversions than I have?

Each platform credits itself for any conversion inside its window, including after views. The same sale is counted once per platform that touched it.

What is the best cross-channel attribution model?

There is no single best one. Data-driven in GA4 is a reasonable default for web journeys; check it against holdout tests before big budget moves.

Should I trust GA4 or the ad platforms?

GA4 for comparing channels, because it deduplicates. The ad platforms for optimizing inside each channel, because they see views and their own conversion signals.

Is cross-channel attribution the same as multi-touch attribution?

Close. Multi-touch is about splitting credit across touches; cross-channel is about splitting it across channels, which multi-touch is one way to do.

See where it breaks

Connect your accounts. Sprites reads them side by side and shows you exactly where the numbers split.