Troubleshooting · part of Fix GA4Google Tag Manager not working
GTM rarely throws an error when something is wrong, it just quietly stops sending data and everything keeps looking normal in the reports that depend on it. Here are the seven causes, ranked by how often they turn out to be the one, each with the check that confirms it and the fix.
- 1
The workspace was never published
Check: In GTM, check the top of the workspace: does it say there are unpublished changes? Preview mode only shows those changes to you, in your own browser, until the workspace is submitted and published.
Fix: Submit the workspace as a new version and publish it. This is the single most common reason a change 'isn't working': it was built and tested correctly, then never actually shipped to live visitors.
- 2
The container snippet is missing, duplicated, or on the wrong pages
Check: View source on the live site, or use GTM's own Preview mode, and confirm the container script and the noscript snippet are present on every template, using the container ID you're actually editing.
Fix: A site rebuild, a new page template, or a migration can drop the snippet from some pages, or leave an old container ID from a previous agency or platform in place. Reinstall the correct snippet in a shared template so no page can miss it, rather than pasting it page by page.
- 3
A tag's trigger conditions don't match the site anymore
Check: Open GTM Preview mode, perform the action a tag should fire on, and check the Tags panel. It shows exactly which trigger conditions were evaluated and why a tag did or didn't fire.
Fix: Page path filters, click text conditions, and custom event names commonly go stale after a redesign, a URL structure change, or a checkout migration. Update the trigger to match the site as it exists today, not as it did when the tag was built.
- 4
Consent settings are blocking every tag, not just the ones they should
Check: Accept the cookie banner in one browser session and reject it in a fresh one, then compare what fires in each using Preview mode or GA4 DebugView.
Fix: If nothing fires until consent is accepted, including tags that should be consent-exempt, the default consent state pushed before GTM loads is usually the problem, or a tag's own consent settings are misconfigured. A single wrong default can silently block the whole container, not just the category it was meant to gate. The consent mode audit guide covers this end to end.
- 5
A tag is paused, or pointed at a test configuration
Check: In the GTM tag list, check whether the tag is greyed out or marked paused. For GA4 tags specifically, confirm the Measurement ID is the production one, not a leftover from a test or staging property.
Fix: Unpause the tag, or correct the destination ID. Both are easy to leave behind after a testing phase, and both fail completely silently, nothing errors, the tag just never sends anything.
- 6
An ad blocker or browser privacy feature is hiding it from you specifically
Check: Before concluding the container itself is broken, test in an incognito window with extensions disabled, or from a different device or network.
Fix: Nothing to fix on the container side. If GTM only fails in your own browser, an extension or built-in tracking protection is the cause, not a real problem for the visitors who matter. This is worth ruling out first, since it produces a very convincing false alarm.
- 7
A Content Security Policy or another script is blocking GTM from loading at all
Check: Open the browser console on the live site and look for CSP violation errors or blocked network requests to googletagmanager.com.
Fix: Add googletagmanager.com, and any domains your individual tags call out to, to the site's CSP allow list. This shows up most often right after a security hardening pass that wasn't tested against the tracking stack.
Tracking Auditor reads your live GTM container and flags paused tags, stale triggers, and consent gaps automatically, alongside the rest of your setup. Your first audit is free.
Run a free audit →Go deeper
The full container governance process, folder organisation, unused tags, naming conventions, is in the GTM audit guide. If consent turned out to be the cause, the consent mode audit guide covers that properly. Lost access to the account itself rather than a broken tag? The free GTM Inspector reads the live public container without needing a login. More symptoms are indexed at Fix GA4.
FAQs
Why is Google Tag Manager not working on my site?
In order of likelihood: the workspace has unpublished changes, the container snippet is missing or duplicated on some pages, a trigger's conditions no longer match the site, consent settings are blocking the whole container instead of just the categories they should gate, a tag is paused or pointed at a test property, an ad blocker is hiding it from you specifically, or a Content Security Policy is blocking the script. Check them in that order.
How do I test if GTM is actually working?
Use GTM Preview mode and your destination platform's own debug view (GA4 DebugView, for example) together. Preview mode shows whether a tag fired and which trigger conditions it evaluated; the destination's debug view shows what actually arrived. The gap between the two tells you exactly where the chain breaks.
GTM Preview shows a tag firing but nothing shows up in GA4, why?
The tag firing and the data arriving are two different things. Common causes: the tag is sending to the wrong Measurement ID, consent settings are stripping the request before it leaves the browser, or the event name GTM sends doesn't match what you're filtering for in GA4's reports. Confirm the destination ID first, it's the most common gap.
Does an ad blocker stop Google Tag Manager?
Yes, for a meaningful share of visitors, and there's no fix on the container side for that portion. Typical loss is in the region of 5 to 10 percent of sessions depending on audience. The problem worth fixing is when GTM fails for everyone, not just the ad-blocking minority, that points at one of the other causes on this page.