Tracking audit checklist: how to check tags, pixels and conversions, and log every fix

The Changeline team · Published · 9 min read

A tracking audit checklist is a list of checks that confirms every tag, pixel and conversion fires once, on the right pages, with consent signals intact, and that platform numbers match your CRM. Run it after site releases, tag manager publishes or consent changes, and log every fix with a date so later shifts in results can be explained.

What is a tracking audit and when should you run one?

A tracking audit is a structured check that your measurement still records what you think it records: tags load, conversions fire once, consent signals pass through and the numbers agree across tools. Run it before you judge performance, not after you have already changed bids.

Tracking rarely breaks on its own. It breaks because something changed: a site release removed the tag from a template, someone edited a trigger in Google Tag Manager, a consent banner was updated, or a checkout moved to another domain. That is why a good audit has two jobs: find what is broken today, and record what you change so the next drop can be explained in minutes.

Typical moments to run the checklist:

  • You take over a new client or ad account.
  • A redesign, a new theme, a new form tool or a checkout change goes live.
  • Conversions, leads or revenue move sharply and nobody can say why.
  • Platform numbers stop matching the CRM or the shop backend.
  • Before a peak period, when you want to freeze changes.

If you are here because results already dropped, start with the guide to explaining a conversion drop to a client and use this checklist as its tracking part.

What should a tracking audit checklist cover?

Cover the layers in this order: the tag on the page, its quality alerts, the conversions each platform counts, the events behind them, consent, and the match with your source of truth. Working in that order stops you from fixing a conversion action when the real problem is a missing tag.

LayerWhat to checkWhere to check it
Google tag coverageEvery page and template loads the tag, including thank-you pages and new domains"Tag coverage" summary in Google Tag Manager, Google Ads or GA4
Tag qualityAlerts such as a missing conversion linker, a tag placed too low or overcountingTag Diagnostics in the Google tag settings
Google Ads conversionsStatus of each conversion action, one count per conversion, the right primary goalsConversions summary in Google Ads, Tag Assistant
GA4 eventsKey events fire once, with the parameters your reports useDebugView in GA4
Meta pixel and Conversions APIBrowser and server events share event name and event IDTest Events in Meta Events Manager
ConsentConsent signals reach Google tags for EEA usersConsent alerts in Tag Diagnostics, Tag Assistant
Source of truthPlatform conversions against CRM leads or shop orders for the same daysCRM or ecommerce export

Write down the result of each row with the date you checked it. An audit that leaves no record has to be redone from zero the next time numbers move.

Read also: Google Ads conversion tracking: how to set it up, verify it and date every change · Marketing change log: what it is and how to keep one

How do I audit the Google tag and Google Ads conversions?

Start with page coverage, then tag quality, then each conversion action. Google has a tool for each step, and the statuses tell you where to look next.

Page coverage

The "Tag coverage" summary lists the pages Google has detected and gives each one a status: "Tagged" (the tag loaded in the last 30 days), "No recent activity" (it loaded before, but not in the last 30 days) and "Not tagged" (it never loaded). It covers up to 10,000 pages, ignores query parameters and can lag by up to 24 hours, so use Tag Assistant on the page when you need a live answer. Pages that move to "No recent activity" right after a release are your first lead.

Tag quality

In the Google tag settings, the "Tag quality" section has a "View diagnostics" link. It flags issues such as "Missing conversion linker", "Tag found too low on page", "Google tag has stopped sending data", "Google tag is missing transaction ID" and "Your conversions may be overcounted", plus consent alerts like "Consent missing for EEA users". Treat each alert as a row in your audit, with what you did about it.

Conversion actions

In Google Ads, check the tracking status of every conversion action. "Unverified", "Tag inactive" and "Needs attention" can be troubleshot with Tag Assistant: connect your site, trigger the conversion, then select "Finish". A verified action shows "No recent conversions" until it records one, then switches to "Recording". Also check that each action counts once: duplicate tags inflate results, as covered in how to find and date duplicate conversions. For the full setup, see Google Ads conversion tracking.

How do I check GA4 events and Meta pixel events?

Use GA4 DebugView for analytics events and Meta's Test Events tool for the pixel and the Conversions API. Both show events from your own test session as they arrive, so you can submit a form or place a test order and watch what is sent.

GA4 DebugView

In GA4, go to "Admin" and, under "Data display", click DebugView. Turn on debug mode with Tag Assistant or with the debug_mode parameter in the Google tag. The Seconds stream shows events from the last 60 seconds and the Minutes stream the last 30 minutes. Check that each key event fires once, with the parameters your reports rely on. With consent mode, events do not appear when Analytics cookies are denied, so test both consent states. Debug traffic can affect report data, so filter developer traffic.

Meta pixel and Conversions API

Meta documents the Test Events tool under Events Manager > Data Sources > your pixel > Test Events. If you send events from both the browser and the server, check deduplication: Meta matches the two when the pixel eventID equals the Conversions API event_id and the event names are the same. A repeat with the same ID and name sent to the same pixel within 48 hours is discarded. If the IDs differ or are missing, one purchase can be counted twice. Remove the test_event_code from production requests when you finish, because test events still flow into Events Manager.

Whatever you fix, mark it on your GA4 charts as well; the GA4 annotations guide shows how.

How do I prove which change broke the tracking?

Line up every change from the days before the numbers moved, then confirm the cause by reproducing it. A tracking break almost always has a date, and that date usually matches a release, a container publish or a settings change.

  1. Rule out a real drop
  2. Find the first bad day
  3. Line up the changes
  4. Reproduce the break
  5. Fix and log the fix

Find the first day the metric looks wrong, then list what changed in the three to seven days before it: site releases, Google Tag Manager versions, consent banner updates, form or checkout tools, and Google Ads or Meta settings. Google Tag Manager records a version each time a container is published, so you can compare the live version with the one before; GTM version history explains how to roll back. Then reproduce the break in Tag Assistant or DebugView on the page that changed.

With every change on one timeline, you would see that the form plugin went live the day before the conversion tag stopped firing, instead of searching three tools. Changeline keeps that timeline per client: Google Ads edits are imported through a read-only connection, and the team logs site, tracking and consent changes. You can start a change log for your project and have that view ready before the next audit.

Example: on a Tuesday, a client asks why Google Ads shows 40% fewer leads than the CRM since the weekend. The team lines up the changes from the days before: on Thursday the developer released a new form plugin, on Friday a GTM version edited the form trigger, and on Monday the consent banner text changed. Tag Assistant shows the conversion tag no longer fires on the new form's confirmation step, because the trigger still points at the old form. The cause is the Thursday release plus the Friday trigger, not the banner. Names and numbers are illustrative.

  1. ThuWebsiteNew form plugin released
  2. FriGTMVersion 58: form trigger edited
  3. MonConsentBanner text updated
  4. TueGoogle Ads leads −40%
Example

How do I record what I changed during the audit?

Log every fix as a change, with the date, the owner, the before and after, and the reason. An audit changes the numbers it measures: removing a duplicate tag cuts reported conversions, and fixing consent signals can raise them.

For each fix, record:

  • The date and time it went live.
  • Where: platform, container, page or conversion action.
  • Before and after, for example "Purchase tag fired twice → once".
  • Who made it and why.
  • Which metric you expect to move, and in which direction.

Name Google Tag Manager versions after what changed, as Google suggests, so the version list reads like a log. Then copy the same entries into your team's change log so they sit next to campaign and site changes. The marketing change log template has the columns, and the marketing change log guide explains how teams keep one current.

Tell the client before a fix goes live when it will shift reported results. A jump in conversions after a tracking fix is a measurement change, not a campaign win, and it should not be read as one in next month's report.

How often should you repeat a tracking audit?

Run a full audit when you take over an account and before peak seasons, and a short check after every site release, container publish or consent change. Between audits, Tag Diagnostics alerts and the "Tag coverage" statuses work as an early warning.

The short check only needs the items most likely to break:

Checklist

  • Google tag loads on every template and thank-you page
  • Each conversion action counts once per conversion
  • GA4 key events show in DebugView with the right parameters
  • Pixel and Conversions API events share the same event ID
  • Consent signals reach Google tags for EEA users
  • Platform conversions stay within your usual gap to the CRM
  • Every fix is logged with date, owner and reason

Agree in advance what gap between platform conversions and CRM records is normal for each client, and write it down. When the gap widens, you have a clear trigger to run the checklist again, and a dated log to compare against.

Know which tag change broke your conversions

Changeline puts your team’s changes, imported Google Ads changes and site, tracking and CRM edits on one timeline per client.

Free plan: 1 project, 2 editors, 15 days of history. No card.

FAQ

What is the difference between a tracking audit and an ad account audit?

An ad account audit reviews campaign structure, bidding, budgets and change history. A tracking audit checks the measurement those campaigns rely on: tags, events, conversion actions, consent and the match with the CRM. Run the tracking audit first, because account decisions based on broken conversions are wrong from the start.

Why don't my Google Ads conversions match my CRM?

Some gap is normal, because attribution, conversion windows, consent and cross-device journeys differ between tools. A sudden change in the gap usually points to a tracking or site change, such as a duplicated tag, a broken thank-you page or a new form. Compare the day the gap changed with your change log.

How do I know if Meta is counting purchases twice?

If you send events from both the pixel and the Conversions API, check that each pair uses the same event name and the same event ID. Meta discards a repeat with the same ID and name within 48 hours. If the IDs differ or are missing, both events can be counted. Verify it with Test Events in Events Manager.

Does fixing tracking change my historical data?

No. A fix applies from the moment it goes live, and past days keep what was recorded then. That is why you should log the date of each fix and tell stakeholders, so a step change in reported conversions is read as a measurement change and not as a change in performance.

Who should own the tracking audit?

One named person per client, usually from analytics or marketing ops, with access to the tag manager, the ad platforms and the CRM. Developers and media buyers contribute, but one owner keeps the checklist, signs off each fix and makes sure every change is logged with a date.

Sources

  1. Use Tag Assistant to troubleshoot unverified or inactive conversion actions (Google Ads Help)
  2. About the Tag coverage summary (Tag Manager Help)
  3. Troubleshoot tag issues with Tag Diagnostics (Google Ads Help)
  4. [GA4] Monitor events in DebugView (Analytics Help)
  5. Handling duplicate Pixel and Conversions API events (Meta for Developers)
  6. Publishing, versions, and approvals (Tag Manager Help)