Jul 18, 2026

How to Debug Google Tag Manager With Preview Mode

Written by Korf Digital Team
How to Debug Google Tag Manager With Preview Mode

"The tag isn't firing" is the single most common GTM support question, and Preview mode is almost always where the actual answer lives, most people just don't know how to read what it's telling them. Preview mode connects your live site to a debug panel showing every tag, trigger, and variable exactly as GTM evaluates them in real time. This is how to actually use it to diagnose a broken tag instead of guessing at the fix.

Free

Preview mode is built into every GTM container at no extra cost

0

changes go live from Preview mode alone, it only simulates against the draft version

0

panels to check every time: Tags (fired vs not fired) and Variables (actual values)

Any

tab or device can connect to the same Preview session via a shareable debug link

Step 1: Start a Preview Session

In GTM, click "Preview" in the top right, this opens Tag Assistant in a new tab where you enter your site's URL. Once connected, a debug panel appears at the bottom of your actual site, showing a live event stream on the left and detailed tag, variable, and data layer info on the right for whichever event you click.

Step 2: Read the Summary Panel Correctly

Click any event in the left-hand timeline (Page View, Click, Form Submission, or a custom event) and the Summary tab shows two lists: "Tags Fired" and "Tags Not Fired." A tag you expect to fire showing up under "Not Fired" is your starting point, click it to see exactly which trigger condition failed and why, GTM shows the specific condition and the actual value it evaluated against.

Step 3: Check the Variables Tab for Wrong Values

A tag can fire correctly but send the wrong data, which Tags Fired alone won't reveal. The Variables tab shows every variable's actual resolved value for that specific event, if a Click Text variable shows blank when you expected the button's label, or a data layer variable shows "undefined," this is where you catch it.

Step 4: Use the Data Layer Tab for Custom Events

For tags triggered by a custom event pushed through the data layer (common in e-commerce and any site using a developer-managed data layer), the Data Layer tab shows the exact object pushed at that moment. Confirm the event name matches exactly what your trigger is listening for, a mismatch as small as "purchase" versus "Purchase" is enough to silently break the connection.

Common Failure Patterns and What They Mean

Check the trigger's exact condition against the Variables tab's actual value for that event, a mismatched CSS class, an ID that changed after a site update, or a condition checking a variable that's returning blank are the most common causes.

Usually a variable pulling from the wrong source, a hardcoded value that should be dynamic, or a data layer variable referencing a key that doesn't match what's actually being pushed, check the Data Layer tab against the variable's configured key name.

Often two overlapping triggers both matching the same event, or the same tag added twice during past container edits, check the Tags Fired list for the same tag name appearing more than once for a single event.

Step 5: Share Preview With Someone Else

The debug panel includes a "Share Preview" link that connects another browser, tab, or person's device to the same live session without them needing GTM access, useful for getting a developer or teammate looking at the exact same debug data on their own machine or a different device where the issue reproduces.

Common Mistakes

  • Confusing Preview mode success with a live, published container. Preview only shows how the current draft would behave, nothing is actually live until you click Submit and Publish, a tag that works perfectly in Preview does nothing for real visitors until published.
  • Only checking Tags Fired and skipping Variables. A tag showing as "fired" can still be sending broken or empty data, always cross-check the actual values for anything that depends on dynamic content.
  • Debugging on the wrong page or device. A tag configured for a mobile-only trigger won't show anything useful when you're testing from a desktop browser, match your test environment to the trigger's actual conditions.

Frequently Asked Questions

Does Preview mode affect real visitors or live data?

No, Preview only simulates against your container's draft version and only affects the browser session actively connected to it, nothing changes for regular site visitors.

Can I use Preview mode on a live production site?

Yes, this is the standard way to debug, since Preview only affects your own connected session, not other visitors browsing the same site at the same time.

Why does a tag work in Preview but fail after publishing?

This usually means a change wasn't actually included in the published version, or a separate issue exists in production, like a caching layer serving an older page version, confirm the published container version matches what you tested.

Preview mode answers "why isn't this tag firing" faster and more reliably than any amount of guessing, but a container that requires constant debugging is usually a symptom of deeper structural issues, duplicate tags, conflicting triggers, or tracking nobody's audited in years. If your GTM container needs more than a one-off fix, our GTM Setup team can audit and rebuild it properly.

Want results like this for your brand?

Get a free strategy call and a tailored proposal within one business day.

Get a Free Proposal