Skip to main content
Back to Blog
analytics

Ad Tracking Audit Checklist: 30 Points to Verify Your Setup is Accurate

RedClaw Performance Team
3/9/2026
16 min read

Ad Tracking Audit Checklist: 30 Points to Verify Your Setup is Accurate

Your tracking is only as good as its weakest link. A single misconfigured tag, a broken data layer push, or a consent management conflict can silently corrupt weeks of data before anyone notices. By then, you have made budget decisions based on wrong numbers.

This 30-point audit checklist covers every layer of your tracking stack: from basic tag firing to server-side event delivery, consent compliance, and data reconciliation. Use it quarterly to proactively catch issues, or immediately when you suspect something is wrong.

Why This Matters: We have audited tracking setups for dozens of advertisers. On average, we find 6-8 issues per audit, with 2-3 of those directly impacting conversion measurement. A systematic audit prevents the slow data degradation that leads to bad decisions.


Table of Contents

  1. How to Use This Checklist
  2. Section 1: Tag Management (Points 1-6)
  3. Section 2: GA4 Configuration (Points 7-12)
  4. Section 3: Meta Pixel & CAPI (Points 13-18)
  5. Section 4: Conversion Tracking (Points 19-24)
  6. Section 5: Compliance & Data Quality (Points 25-30)
  7. Audit Scoring Framework
  8. Remediation Priority Guide
  9. FAQ

How to Use This Checklist

Audit Process

  1. Schedule: Perform a full audit quarterly. Run a targeted audit whenever you make significant changes (site redesign, new CMS, GTM updates, new ad platforms).
  2. Tools needed: GTM Preview mode, Meta Events Manager (Test Events), GA4 DebugView, browser developer tools, a staging/test environment.
  3. Duration: A thorough audit takes 3-5 hours for a standard setup.
  4. Document findings: For each point, record Pass/Fail/Warning and any specific issues found.

Severity Levels

LevelDescriptionAction Timeline
CriticalConversion data is lost or duplicatedFix immediately (same day)
HighData accuracy is significantly degradedFix within 1 week
MediumReporting is affected but conversions trackFix within 2 weeks
LowBest practice not followed, no data lossFix in next sprint

Section 1: Tag Management (Points 1-6)

Point 1: GTM Container Loads on All Pages

What to check: Verify the GTM container snippet is present on every page of your site, including dynamic pages, error pages, and thank-you pages.

How to verify:

// In browser console, check for GTM
typeof google_tag_manager !== 'undefined'
// Should return true

// Check GTM container ID
Object.keys(google_tag_manager).filter(k => k.startsWith('GTM-'))
// Should return your container ID(s)

Severity: Critical (no GTM = no tracking)

Point 2: GTM Container Version Is Current

What to check: The published GTM container version matches what you expect. Unauthorized or accidental changes are a common source of tracking breaks.

How to verify: GTM Admin > Versions > Compare published version with your change log.

Severity: Medium

Point 3: No Duplicate GTM Containers

What to check: Only one GTM container loads per page. Duplicate containers cause double-counting of all events.

How to verify:

// Check for multiple GTM containers
document.querySelectorAll('script[src*="googletagmanager.com"]').length
// Should be 2 (one noscript, one script) per container
// More than 2 per container = duplicate

Severity: Critical (duplicate containers = double-counted events)

Point 4: Tags Fire in Correct Order

What to check: Consent defaults load before any tracking tags. Configuration tags fire before event tags. Data layer is populated before tags that read from it.

How to verify: Use GTM Preview mode. Navigate through your site and check the Summary tab for tag firing order.

Severity: High (wrong order = missing data or consent violations)

Point 5: No JavaScript Errors Blocking Tags

What to check: Console errors from your site code or third-party scripts can prevent GTM tags from executing.

How to verify: Open browser DevTools > Console. Navigate through key pages. Look for errors (red messages). Pay attention to errors in scripts loaded before GTM.

Severity: Medium to High (depends on which tags are blocked)

Point 6: Tag Firing Rate Matches Expectations

What to check: The number of tag fires per page should match your expectations. A PageView tag should fire once per page load, not zero or multiple times.

How to verify: GTM Preview > Tag details > Count fires per tag on a single page navigation.

Severity: Medium


Section 2: GA4 Configuration (Points 7-12)

Point 7: GA4 Property ID Is Correct

What to check: Your site sends data to the correct GA4 property. Staging sites should use a separate property from production.

How to verify:

// In browser console
// Look for the GA4 measurement ID in network requests
// Filter network tab for 'collect' requests to analytics.google.com
// Check the 'tid' parameter matches your expected G-XXXXXXXXXX

Severity: Critical (wrong property = data goes to wrong place)

Point 8: Enhanced Measurement Settings

What to check: Enhanced measurement events (page views, scrolls, outbound clicks, site search, file downloads, video engagement, form interactions) are enabled or disabled according to your needs.

How to verify: GA4 Admin > Data Streams > Your stream > Enhanced measurement settings.

Severity: Low (preference, not a bug)

Point 9: GA4 Conversions Are Marked

What to check: Key events (purchase, generate_lead, sign_up) are marked as conversions in GA4. Unmarked conversions are not available for Google Ads import.

How to verify: GA4 Admin > Events > Check "Mark as conversion" toggle for key events.

Severity: High (unmarked conversions cannot optimize Google Ads)

Point 10: GA4 Data Retention Settings

What to check: Data retention is set to your desired period (2 months or 14 months for free tier).

How to verify: GA4 Admin > Data Settings > Data Retention.

Severity: Medium

Point 11: GA4-Google Ads Linking

What to check: GA4 property is linked to all relevant Google Ads accounts. Auto-tagging (gclid) is enabled in Google Ads.

How to verify:

  • GA4: Admin > Product Links > Google Ads Links
  • Google Ads: Admin > Account Settings > Auto-tagging = ON

Severity: High (missing link = no GA4 conversions in Google Ads)

For a complete GA4 configuration guide, see our GA4 Setup Complete Guide.

Point 12: GA4 Real-Time Data Flowing

What to check: Real-time report shows current active users and events. If real-time is empty during business hours, something is fundamentally broken.

How to verify: GA4 > Reports > Real-time. Verify events are appearing.

Severity: Critical (no real-time data = tracking is broken)


Section 3: Meta Pixel & CAPI (Points 13-18)

Point 13: Meta Pixel Fires on All Pages

What to check: The Meta Pixel PageView event fires on every page. Check with Meta Pixel Helper Chrome extension.

How to verify:

// In browser console
typeof fbq === 'function'  // Should be true
// Meta Pixel Helper extension shows green icon with event count

Severity: Critical (no Pixel = no Meta conversion tracking)

Point 14: Correct Pixel ID

What to check: The Pixel ID on your site matches the Pixel in your active Meta Ads account.

How to verify: Meta Pixel Helper > Check Pixel ID. Compare with Events Manager > Data Sources.

Severity: Critical (wrong Pixel = data goes to wrong account)

Point 15: CAPI Events Are Delivering

What to check: Server-side events appear in Events Manager alongside browser events.

How to verify: Events Manager > Overview > Filter by "Server" connection method. Events should show both "Browser" and "Server" sources.

Severity: High (no CAPI = 20-40% data loss)

Point 16: Event Deduplication Working

What to check: When both Pixel and CAPI send the same event, Meta deduplicates correctly using event_id.

How to verify: Events Manager > Overview > Check for "Deduplicated" column. If total events equal browser + server (no deduplication), event_id matching is broken.

Severity: Critical (no dedup = double-counted conversions)

For complete CAPI setup and deduplication, see our Pixel + CAPI Dual Tracking Setup guide.

Point 17: Event Match Quality Score

What to check: EMQ score for each event type. Target 8+ for high-value events (Purchase, Lead).

How to verify: Events Manager > Data Sources > Select Pixel > Overview > Check EMQ scores per event.

EMQ ScoreAssessmentAction
9-10ExcellentNo action needed
7-8GoodMinor optimization possible
4-6ModerateAdd more user data parameters
1-3PoorMajor implementation issue

Severity: Medium to High (low EMQ = poor conversion matching)

Point 18: Standard Events Use Correct Parameters

What to check: Purchase events include value, currency, content_type, and content_ids. Lead events include content_name. All monetary values are numbers, not strings.

How to verify: Events Manager > Test Events > Fire test conversions > Verify parameters.

Severity: High (wrong parameters = broken optimization)


Section 4: Conversion Tracking (Points 19-24)

Point 19: Conversion Events Fire Only Once per Conversion

What to check: A purchase event fires exactly once per order. Page refreshes, back-button navigation, and email receipt links should not re-fire the event.

How to verify:

  1. Complete a test purchase
  2. Refresh the thank-you page
  3. Navigate away and back
  4. Check GA4 DebugView and Events Manager for duplicate events

Severity: Critical (duplicates inflate revenue by 2x or more)

Point 20: Revenue Values Are Accurate

What to check: The revenue value sent in conversion events matches the actual transaction value in your backend.

How to verify:

  1. Complete test purchases with known amounts ($10.00, $99.99, $1,234.56)
  2. Compare values in GA4, Google Ads, and Meta with your backend order records
  3. Check for currency mismatches, tax inclusion differences, or rounding errors

Severity: Critical (wrong revenue = wrong ROAS = wrong budget decisions)

Point 21: UTM Parameters Are Preserved

What to check: UTM parameters from ad clicks survive through your site to the conversion page. Redirects, SPAs, and cross-domain navigation can strip them.

How to verify:

  1. Click an ad with UTM parameters
  2. Navigate through your site to conversion
  3. Check GA4 session source/medium matches the UTM values

For comprehensive UTM implementation guidance, see our UTM Parameters Usage Guide.

Severity: High (lost UTMs = lost attribution)

Point 22: Click IDs Are Preserved

What to check: gclid (Google), fbclid (Meta), and ttclid (TikTok) parameters are not stripped during site navigation.

How to verify:

// Check for click ID in URL on landing page
const params = new URLSearchParams(window.location.search);
console.log('gclid:', params.get('gclid'));
console.log('fbclid:', params.get('fbclid'));
// Navigate to another page and check again
// IDs should persist (stored in cookies or URL)

Severity: High (lost click IDs = lost attribution for paid campaigns)

Point 23: Cross-Device Tracking Configuration

What to check: GA4 User-ID is set for logged-in users. Google Signals is enabled. Identity space is correctly configured.

How to verify: GA4 Admin > Data Settings > Data Collection > Google Signals = ON. Identity reporting set to "Blended" (recommended).

Severity: Medium (affects cross-device attribution accuracy)

Point 24: Offline/Backend Conversion Uploads

What to check: If you upload offline conversions (phone calls, in-store sales), verify they are being imported correctly and matched to ad clicks.

How to verify: Google Ads > Tools > Conversions > Check offline conversion import status. Meta > Events Manager > Offline Events.

Severity: Medium to High (depends on offline conversion volume)

For a complete conversion tracking walkthrough, see our Conversion Tracking Complete Guide.


Section 5: Compliance & Data Quality (Points 25-30)

Point 25: Consent Management Loads Before Tags

What to check: Your CMP (consent banner) appears before any analytics or advertising tags fire. GTM's consent default should be "denied" until the user makes a choice.

How to verify: GTM Preview > First page load > Verify consent default tag fires before all other tags.

Severity: Critical (tags before consent = GDPR violation)

Point 26: Consent Mode v2 Signals

What to check: All four consent signals are properly configured and update when the user makes a choice.

How to verify:

// In browser console, after consent interaction
dataLayer.filter(e => e[0] === 'consent')
// Should show 'default' entry (denied) and 'update' entry (after user choice)
// Both should include: ad_storage, analytics_storage, ad_user_data, ad_personalization

Severity: High (missing v2 signals = broken remarketing audiences)

Point 27: Data Layer Consistency

What to check: Data layer pushes use consistent naming, correct data types, and include all required fields.

How to verify: Use the data layer validation script from earlier in this guide. Run through your entire user flow.

Severity: Medium (inconsistency causes reporting issues)

Point 28: No PII in URLs or Events

What to check: Email addresses, phone numbers, or other PII should never appear in URLs, page titles, or event parameters in unhashed form.

How to verify: GA4 > Reports > Pages and screens > Look for URLs containing email patterns. Check data layer pushes for unhashed PII.

Severity: Critical (PII in GA4 violates TOS and GDPR)

Point 29: Platform Data Reconciliation

What to check: Conversion counts across GA4, Google Ads, and Meta are within acceptable discrepancy ranges.

How to verify: Pull 7-day conversion data from each platform. Calculate discrepancy rates. Compare against your backend truth.

ComparisonAcceptable RangeInvestigation Threshold
Google Ads vs GA4Under 20%Over 25%
Meta vs GA4Under 30%Over 40%
Any platform vs BackendUnder 15%Over 20%

Severity: Varies (depends on discrepancy magnitude)

For a deeper dive into tracking discrepancies, see our Tracking Data Discrepancies guide.

Point 30: Monitoring and Alerting

What to check: You have automated monitoring that alerts you when tracking breaks. This includes conversion count drop alerts, tag error monitoring, and server-side endpoint health checks.

How to verify: Review your monitoring setup. Do you have alerts for:

  • Conversion count dropping more than 30% day-over-day?
  • GA4 real-time going to zero?
  • CAPI endpoint errors exceeding 5%?
  • GTM container publishing without approval?

Severity: Medium (no monitoring = issues go undetected for days or weeks)

For understanding how to analyze the data your tracking collects, see our Ad Data Analysis for Beginners guide.


Audit Scoring Framework

Calculating Your Tracking Health Score

Score each of the 30 points:

  • Pass: 3 points
  • Warning: 1 point (minor issue, not impacting data)
  • Fail: 0 points

Total possible: 90 points

Score RangeGradeAssessment
81-90AExcellent tracking health
70-80BGood with minor gaps
55-69CSignificant issues affecting data quality
40-54DMajor tracking failures
Below 40FTracking is fundamentally broken

Industry Benchmarks

Based on our audit experience:

  • Average first-time audit score: 52/90 (C)
  • Average score after remediation: 78/90 (B+)
  • Top-performing clients: 85+/90 (A)

Remediation Priority Guide

Fix Order by Severity

Week 1 (Critical items):

  1. Duplicate purchase events (Point 19)
  2. Wrong Pixel/GA4 IDs (Points 7, 14)
  3. Missing GTM on key pages (Point 1)
  4. Consent before tags (Point 25)
  5. PII in tracking data (Point 28)

Week 2 (High items):

  1. CAPI delivery and deduplication (Points 15, 16)
  2. GA4-Google Ads linking (Point 11)
  3. Revenue accuracy (Point 20)
  4. UTM/click ID preservation (Points 21, 22)
  5. Tag firing order (Point 4)

Week 3-4 (Medium and Low items):

  1. EMQ optimization (Point 17)
  2. Consent Mode v2 signals (Point 26)
  3. Data reconciliation (Point 29)
  4. Monitoring setup (Point 30)
  5. Remaining items

Want a professional tracking audit? Our team runs this 30-point checklist (and more) across your entire tracking stack, identifies every issue, and provides a prioritized fix plan. Get a free tracking audit


FAQ

How often should I run a tracking audit?

Run a full 30-point audit quarterly. Additionally, run targeted audits after any major change: website redesign, GTM container updates, new ad platform onboarding, consent management changes, or domain/URL structure modifications. Between audits, automated monitoring (Point 30) catches sudden breaks, but systematic audits catch the slow degradation that monitoring misses.

What is the single most common tracking issue you find in audits?

Duplicate conversion events. Whether it is a purchase event firing twice on page refresh, a lead form submitting duplicate events on slow connections, or both Pixel and CAPI counting the same event without deduplication, over-counted conversions are the most frequent and most impactful issue. They inflate ROAS, mislead budget allocation, and corrupt optimization algorithms.

Can I automate this audit checklist?

Partially. Points related to tag firing, data layer validation, and PII detection can be automated with custom scripts or tools like ObservePoint, Screaming Frog, or DataTrue. However, points requiring judgment (like whether conversion values are correct, or whether consent UI is properly designed) require human review. We recommend automating the technical checks and running manual audits for the strategic and compliance items.

What tools do I need for a tracking audit?

Essential tools: GTM Preview mode (free), Meta Pixel Helper Chrome extension (free), GA4 DebugView (free), browser DevTools console (free). Helpful additions: Tag Assistant (Google), Facebook Test Events tool, a staging environment for safe testing, and a spreadsheet to document findings. For enterprise-scale audits, consider ObservePoint or Hub'Scan for automated tag scanning.

How do I prioritize fixes when I find many issues?

Follow the severity framework in this guide: Critical items first (data loss, duplication, compliance violations), then High (accuracy degradation), then Medium and Low (best practices). Within each severity level, prioritize by impact on revenue tracking. A duplicate purchase event affecting thousands of dollars takes precedence over a missing scroll tracking event. Always fix the data layer and conversion events before optimizing behavioral tracking.


Your tracking health score matters. Schedule a professional audit and get a detailed report with every issue identified and every fix prioritized. Check your ROAS


Related reading: Pixel + CAPI Dual Tracking Setup | GA4 Setup Complete Guide | Conversion Tracking Complete Guide | UTM Parameters Usage Guide | Ad Data Analysis for Beginners


Explore our tracking & analytics services →

Share:

Maximize Your Ad Budget ROI

From account setup to full-funnel tracking, we handle it all.

  • Dedicated account manager with real-time optimization
  • Full tracking infrastructure — every dollar accounted for
  • Cross-platform expertise: Meta, Google, TikTok

📬 Subscribe to Our Newsletter

Weekly insights on ad strategies, industry trends, and practical tips. No fluff.

We never share your email. Unsubscribe anytime.