← All articles

Blog

The Complete Conversion Tracking Verification Checklist

verify conversion trackingconversion tracking checklistads verificationcheck conversion tracking

"I think I checked everything around conversion tracking, but I'm not sure there are no gaps." Before launching ads or a site, many people carry exactly this anxiety. When you check each platform separately, you can't tell if something is missing.

This article is a complete checklist to confirm your conversion tracking works before you go live. It's written to apply to GA4, Google Ads, or Meta, with per-platform markers included. Print it out, knock out the items one by one, and you'll be able to say "I've checked everything" with confidence.

Think of verification as "4 stages + blind spots"

Before the individual checks, get the big picture. Verifying measurement in these four stages keeps you from missing anything.

Stage What to confirm Common trap
① Installed The tag loads on the page Missing on some pages (the completion page)
② Fires The event request is sent Installed, but doesn't fire on a specific action
③ Recorded The platform accepts and stores the event Fires, but consent/exclusion drops it
④ Contents Value, currency, no duplicates are correct Value not passed, double-sending

And even if you can confirm all four stages on your own machine, what remains is ⑤ blind spots — the real visitor path, the denied-consent state, and tracking via an ad click. The checklist below is ordered ① through ⑤.

① Installation checks

First, is the tag even there? Open the page you want to measure, especially the completion page, directly.

  • Is the tag on every page you want to measure (no missing completion page)?
  • Is the tag loaded more than once (e.g., both gtag hardcoded and via GTM)?
  • Is the measurement ID / conversion ID the correct one (no test-vs-production mix-up)?

For how to verify tags in detail, see per platform: Verify your GA4 tag / Verify Google Ads conversions / Verify your Meta Pixel.

② Firing checks (per-platform markers)

Confirm the tag is not just "installed" but "firing," using the "Network" tab in DevTools. The request to look for differs by platform.

Platform Marker to find in Network
GA4 …/g/collect (event name in en=)
Google Ads googleadservices.com/pagead/conversion/…
Meta (Facebook) facebook.com/tr (event name in ev=)
  • Does the request above actually fire on the target action?
  • Did you verify in a clean state with ad blockers / tracking protection off?
  • Does it fire exactly once per action (no duplicate tracking)? If your conversion is a form submission and nothing fires, see Form Submission Not Tracking.

③ Recording checks

Firing (sent) and recording (accepted and stored) are different. Confirm on the platform's admin side, not just the sending side.

  • In GA4 DebugView / Realtime, does the event arrive and appear?
  • Is the Google Ads conversion action status "Recording conversions" (not stuck at "Unverified")?
  • If using GTM, are your changes published (Submitted) (don't stop at Preview)?

For isolating "it fires but isn't recorded" or "no conversions," see No conversions? A step-by-step diagnostic guide.

④ Contents checks

Even if it fires and records, it's meaningless if the data inside is wrong.

  • Is the purchase value (value) passed correctly (not empty or a fixed value)? For e-commerce purchase events specifically, see GA4 Ecommerce Purchase Event Setup.
  • Is the currency specified correctly?
  • Is it registered as a key event / conversion (the reason GA4 events don't show in ads)?
  • Do Google Ads and GA4 numbers reconcile, and if not, do you understand why?
  • Is the click ID (gclid) carried through so attribution isn't broken?

④-b Server-side and Enhanced Conversions checks

If you've implemented server-side tracking or enhanced conversions (and in 2026, you should have), these need their own verification layer.

  • Server-side GTM: If you've implemented server-side tagging, verify it's processing events correctly — see How to Verify Server-Side GTM
  • Enhanced Conversions (Google): In Google Ads → Goals → Conversions → Diagnostics, is enhanced conversions status showing a match rate? If near zero, your hashed user data isn't being sent or matching
  • Meta CAPI Event Match Quality: In Events Manager, is the EMQ score 7+ for your CAPI events? Scores below 6 mean Meta can't reliably match events to users — add more parameters (email, phone, fbp/fbc cookies)
  • Event deduplication: If running both client-side and server-side (recommended), is the same event_id sent from both paths? Without it, you'll double-count — operators commonly see 30% inflation from inconsistent event IDs
  • Server-side event counts: Compare browser-side vs. server-side event counts in Events Manager. If server-side significantly exceeds client-side, ad blockers are the gap — and your server-side path is working

④-c Multi-platform firing markers

The article above covers GA4, Google Ads, and Meta. If you run ads on additional platforms, verify these Network markers too:

Platform Marker to find in Network Debug tool
TikTok analytics.tiktok.com/i18n/pixel/events.js TikTok Pixel Helper (Chrome extension)
LinkedIn px.ads.linkedin.com LinkedIn Insight Tag Helper
Pinterest ct.pinterest.com Pinterest Tag Helper
Microsoft Ads bat.bing.com UET Tag Helper
  • For each platform you advertise on, does the relevant request fire on your conversion page? For platform-specific verification, see Verify Meta Conversions API and Verify TikTok Pixel.
  • Are UTM parameters consistent across platforms? Use a standard naming convention: utm_source (google, meta, tiktok, linkedin), utm_medium (cpc, paid-social), utm_campaign, utm_content

⑤ Blind-spot checks (hard to reproduce on your machine)

Finally, the "blind spots" that are easy to miss in your own checks. This is where measurement goes missing most quietly.

  • Under consent mode, did you check what happens to users who deny consent?
  • Did you test all three states — Allow, Deny, and undecided — on the consent banner?
  • Are you or your office excluded by internal-traffic exclusion (watch for false negatives when testing)?
  • Can you verify ad-click tracking without taking on the self-click policy risk?
  • Does it hold up under real production visitor conditions (don't judge from a single pattern on your machine)?

Printable complete checklist (24 items)

Before going live, knock these out top to bottom.

Installation

  • 1. Tag is on every page (including the completion page)
  • 2. No duplicate tag loading
  • 3. Measurement ID / conversion ID is the correct production one

Firing

  • 4. Request fires on the target action (confirmed via per-platform marker)
  • 5. Verified in a clean state with blockers off
  • 6. Fires exactly once per action (no duplicates)

Recording

  • 7. Arrives in DebugView / Realtime
  • 8. Conversion action shows "Recording conversions"
  • 9. GTM changes are published

Contents

  • 10. value (amount) is passed correctly
  • 11. Currency is specified correctly
  • 12. Registered as a key event / conversion
  • 13. Counts reconcile across platforms (you understand any gap)
  • 14. Click ID (gclid) is carried through

Server-side / Enhanced Conversions

  • 15. Enhanced Conversions match rate is non-zero (Google Ads Diagnostics)
  • 16. Meta CAPI Event Match Quality is 7+ (Events Manager)
  • 17. Event deduplication: same event_id sent from client and server paths
  • 18. Additional platforms (TikTok, LinkedIn, Pinterest) fire on conversion pages
  • 19. UTM parameters are consistent across all platforms

Blind spots

  • 20. Checked all three consent states (Allow / Deny / undecided)
  • 21. You understand the denied-consent behavior
  • 22. Checked the impact of internal-traffic exclusion
  • 23. Holds up on the real production visitor path
  • 24. Server-side events exceed client-side counts (confirming ad blocker resilience)

Frequently asked questions

Q. Does this checklist work for any platform? A. Yes. The framework — installation, firing, recording, contents, blind spots — is common to GA4, Google Ads, and Meta. Only the Network marker for confirming firing differs by platform, so refer to the quick-reference table above.

Q. If I check everything, is my tracking perfect? A. ①–④ (installation, firing, recording, contents) can be confirmed on your own machine, but ⑤ the blind spots — especially the real visitor path, denied consent, and ad-click tracking — are hard to fully reproduce yourself. The checklist is highly effective as an "entry-point check," but the final piece needs verification under production conditions.

Q. Which items should I prioritize? A. Top to bottom (installation → firing → recording → contents → blind spots) is most efficient. If installation is missing, nothing fires or records — checking from the foundation prevents rework.

Q. Why does it "fire but isn't recorded"? A. Because firing (sent to Google) and recording (accepted and stored) are separate stages. Consent mode state, internal-traffic exclusion, or an unregistered key event can mean it's sent but not stored. See the diagnostic guide for details.

Conclusion: lock down the entry point with the checklist, then verify in production

Verifying conversion tracking in five stages — installation, firing, recording, contents, blind spots — keeps you from missing anything. Knock out these 18 items before launch, and you'll cover nearly everything you can confirm on your own machine.

But the final "blind spots" — the real path your visitors take, the denied-consent state, ad-click tracking — are hard to reproduce yourself.

ConversionOK runs your live page in an independent, isolated browser and intercepts the actual requests in both the granted and denied consent states. It's the tool that fills the piece beyond the entry point you've locked down with the checklist. Start with a free static check.