Home / How to use Tag Master

How to use Tag Master

What each part of the panel is for, where to find it, and what you are looking at once it is open.

The panel opens beside the page rather than on top of it, and nothing is recorded until you open it. Everything below assumes that much: the extension is installed, the panel is open, and the page you want to inspect is in the tab next to it. Reload once after opening so the panel sees the page load from the start.

Reading what a page sends

See every platform on a page

The Network tab lists every tracking request the page made, grouped by the platform that received it, with the account each one reported to printed alongside. Nothing needs configuring — whatever the page uses is recognised on sight, across 52 platforms.

This is the view to start from on a site you did not build. It is built from what the page actually sent, so a tag injected after load by a consent tool is in it too.

The Tag Master request list with per-platform counters across the top — GA4, Google Ads, GTM, Meta Pixel and TikTok Pixel — and the decoded requests below.

Read a hit without decoding it yourself

Click any request to expand it. The query string becomes named parameters: the event, the value and currency, the items, the consent signals. Ecommerce items are unpacked from the packed pr1 form into a readable list.

A request carrying a parameter the platform's own schema does not accept is flagged, so a typo in a parameter name does not have to wait until the report looks wrong.

The Tag Master panel showing a decoded GA4 purchase hit: measurement ID, event name, consent state, the full /g/collect URL and the item table read out of the pr1 parameter.

Link a dataLayer push to the requests it caused

The Events tab shows each push in order, and under it the requests that followed. This pairing is the thing to look at when a tag "fires" but nothing arrives.

A push with no requests under it is a trigger that did not match. Requests with no push above them are a tag firing on something else — a timer, a history change, a hard-coded snippet.

The dataLayer events panel in Tag Master, showing a purchase push grouped under the page it happened on, with GA4 ecommerce schema validation beneath it.

Spot a duplicate hit

Two hits for the same event and the same account get the second one badged DUPLICATE. The account is printed beside each, which is what makes the badge safe to act on: two hits to two different properties is a normal setup, not a fault.

Two GA4 page_view requests a second apart, both to G-DEMO000001, the second one badged DUPLICATE, above a session_start and an add_to_cart from the same page.

The Consent tab reads the order of events out of the page: whether defaults were set before the tags loaded, whether an update followed, and what state each request went out under.

The finding that matters is at the bottom — the vendors that kept firing while advertising consent was denied. Consent is an order of events, not a setting, and a default that arrives after the tags is not a default.

The Consent Mode panel in Tag Master: a plain-language account of how consent played out, followed by the four V2 signals showing ad_storage denied and analytics_storage granted.

Recognise server-side GTM

Requests are matched by path rather than hostname, so collection routed through your own domain is still recognised and marked as first-party. Without the label it is indistinguishable from any other request to your site.

A Google Tag Gateway endpoint is reported separately. The two look alike from the browser and mean different things.

A GA4 hit sent to a first-party endpoint, sst.shop.example.com/g/collect, decoded in the Tag Master panel with its consent state and parameters.

See pushes from inside an iframe

Pushes from embedded widgets are hidden by default and the panel says so rather than dropping them quietly: "1 push from iframes hidden". Untick Main frame to include them, and each one carries the frame it came from.

The events list with the Main frame filter unticked, showing a booking_step push marked

Check campaign attribution

The campaign never travels as its own parameter. Expand the session's first hit and read dl, the landing address, which carries the utm_ values percent-encoded. _ss=1 marks the hit that started the session.

A GA4 session_start request expanded in the panel, showing the consent state and the full request URL with the campaign values inside the dl parameter.

Turning what you see into a GTM setup

Pick an event and get the variables and trigger

Press Pick Event, then do the thing on the page. The push it produces is taken apart: tick the values you want and you get the Custom Event trigger and the Data Layer Variable names to match.

One click often produces several pushes, so the alternatives are offered beside it — the theme's own event is rarely the one a trigger wants.

Tag Master after one add-to-cart click: it caught add_to_cart, lists the other two pushes the same click produced — theme_add_to_cart and cart_updated — and shows the event parameters with currency and value already ticked.

Keep a funnel and export it as a container

Keep each catch and walk the whole funnel, then export once. What comes out is a GTM container file, not a dump of your events: a Data Layer Variable per path, a Custom Event trigger per event, and a tag wired to each.

It goes into GTM, not back into the extension. GTM shows you the diff before it applies anything, so import it as a merge and read what it says it will add.

The export panel holding two kept events, add_to_cart and begin_checkout with two values each, a selector set to GA4 event, the measurement ID field, and an Export for GTM import button.

Pick an element for a click trigger

Point at a button and the panel proposes a CSS selector for it, along with the attributes and any price or number it can read out of the text. The selector is the one to paste into a Click trigger.

Tag Master after an element was picked: the generated CSS selector button[data-testid=

Testing without making a mess

Stop test traffic reaching production

Tick the platforms to silence and their requests stop leaving the browser while the toggle is on. Blocked requests are still listed, so you can see exactly what would have been sent. The site's own functionality is untouched.

The hit suppression section of the Tag Master panel: a GA4 DebugView Mode toggle above a two-column list of vendors — GA4, Google Ads, Meta Pixel, TikTok, Criteo, Microsoft UET and more — each with its own checkbox.

Turn on a platform's test mode

Eight platform debug modes as switches — TikTok Test Events, Meta test events, Microsoft UET debug and the rest. The ones that need a code from the platform get a field for it, and the value is written in the format that platform validates.

The Platform Debug Modes section of the Tag Master panel, listing TikTok Test Events with a field for the test code, Tealium debug console and Microsoft UET debug as toggles.

Inject a container into a page

Paste a container snippet and it is injected into the page you are on, optionally persisting for that site. This is how you test a container before it ships — on a client site, a staging build, or a page you do not control.

The GTM snippet injector in Tag Master with a container snippet pasted in, the container ID read back as detected, and options to replace an existing container or open Tag Assistant.

Where to go next

The guides work through the cases these features exist for, with the reasoning rather than the buttons. If you are starting from scratch, the GTM debugger page is the shortest description of what the tool is; the guides are grouped by what you are trying to do.

Try it on your own site

Tag Master is free, needs no account, and collects no data.

Add to Chrome — Free

Rated 5.0 by 17 users on the Chrome Web Store.