Before ever suggesting a client change their creative, targeting, or budget, I validate their tracking. It's the single most common reason "ads stopped working" turns out to be "tracking broke three weeks ago and nobody noticed." Run this checklist before making any optimization decision based on conversion data.

GA4 checklist

  • The correct Measurement ID is present on every page, including new pages added after the initial setup — not just the homepage.
  • Key events are marked correctly in GA4's admin settings, matching what actually counts as a conversion for the business.
  • Cross-domain tracking is configured if the funnel spans domains or subdomains (a form host, a separate booking tool, a payment processor).
  • DebugView is used to fire a real test conversion and confirm it appears with the right parameters — not just "the tag fired," but "the right data came through."

Google Ads checklist

  • Each conversion action's "primary vs. secondary" setting matches what should actually influence Smart Bidding — secondary actions still get reported but won't drive bid optimization.
  • The count setting (one per click vs. every) is deliberately chosen based on whether repeat conversions from one user should count multiple times.
  • Enhanced conversions are enabled where applicable, since they materially improve match rates on iOS and privacy-restricted browsers.
  • Google Tag Assistant (or the GA4 DebugView equivalent) shows no duplicate or missing tags on the actual conversion page.

Meta Ads checklist

  • Both the Meta Pixel and Conversions API (CAPI) are firing for the same events, with a shared event ID for deduplication — without this, the same conversion can get counted twice.
  • Events Manager's "Test Events" tool confirms the event fires with the correct parameters in real time, not just historically in reporting.
  • Priority events are configured correctly under Aggregated Event Measurement for iOS 14.5+ traffic, since only 8 events per domain get full signal.
  • Domain verification is completed in Business Manager — unverified domains lose access to several attribution and optimization features.

Cross-platform checklist

  • The same lead isn't being double-counted across GA4, Google Ads, and Meta as three separate conversions in reporting rollups.
  • UTM parameters are applied consistently across every campaign, so channel attribution in GA4 actually matches what each platform reports internally.
  • A real test submission is traced end-to-end: form fill → confirmation event → CRM record — not assumed to work because the form "looks" like it submitted.

Red flags checklist

  • Reported conversions exceed total sessions for the same period — a near-certain sign of duplicate firing.
  • Zero tracked conversions despite the sales team confirming real leads are coming in — usually a broken event, not a demand problem.
  • A sudden, unexplained spike or drop in conversion volume with no corresponding change in traffic or spend.
SymptomLikely CauseFix
Conversions > sessionsDuplicate tag firing or missing deduplication (GA4 + Pixel + CAPI)Add shared event IDs, audit tag firing order
Zero conversions, but real leads existEvent not firing, or firing on the wrong page/triggerRe-test with DebugView / Test Events on the actual live conversion page
Sudden unexplained dropA recent site or form change broke the tag/triggerCheck recent deploys against the date of the drop
CAC looks impossibly lowMicro-conversions being counted as full conversionsSeparate primary and secondary conversion actions

Tracking validation isn't a one-time setup task — it's a recurring check, especially after any site change. This is exactly the kind of gap a proper IT infrastructure review catches before it quietly inflates or deflates a paid media account's real performance.

FAQ

How do I know if my conversion tracking is broken?

The clearest signs are reported conversions exceeding total sessions, zero tracked conversions despite confirmed real leads, or a sudden unexplained spike or drop with no matching change in traffic or spend — all of which should be validated with each platform's live test tools (GA4 DebugView, Meta Events Manager Test Events, Google Tag Assistant) rather than assumed from historical reporting.

  • Conversions exceeding sessions almost always means duplicate firing across platforms.
  • Zero conversions with real leads coming in usually means the event isn't firing on the actual live page.

Why would Google Ads and Meta show different conversion numbers for the same leads?

Each platform uses its own attribution window and modeling for conversions it didn't directly observe, so some divergence between Google Ads, Meta, and GA4 numbers is normal — the actual validation question is whether each platform's own tracking is firing correctly and matches your CRM's real lead count, not whether the platforms agree with each other.

  • Different attribution windows and modeled conversions mean cross-platform numbers rarely match exactly.
  • The real source of truth should be the CRM's actual lead count, cross-checked against each platform independently.