Works with the AI Agents you already use

    Claude CodeClaude CodeCursorCursorCodex CLICodex CLIMuseMuseDotsDots+22 more

    GTM Tracking Auditor

    2

    Agency-grade Google Tag Manager audits: broken tags, GA4 and Ads gaps, Consent Mode v2, server-side checks, and reviewed fixes applied in a workspace.

    $9.99

    Secure checkout via Stripe

    30-day refund guarantee

    Converts to your local currency at checkout

    Security scanned
    GTM Tracking Auditor

    GTM Tracking Auditor

    Example session with this skill installed

    Audit the live container GTM-ABC1234 of example-shop.com, tell me why GA4 purchase events dropped since mid-September, and prepare the fix in a workspace. Do not publish.

    • Read your context and instructions
    • Compiled the gtm tracking auditor

    Summary

    GA4 purchase events on example-shop.com stopped on 16 September, when version 41 "Updated page_view" went live. The event tag itself was not touched: the trigger it uses, CE - purchase, gained a condition {{Page Hostname}} equals www.example-shop.com the day the checkout moved to checkout.example-shop.com. The condition is false on every order page, so the tag never fires. Google Ads conversions kept working because they use a different trigger. Fix prepared in workspace

    Fix - purchase trigger - 2026-10-13 (3 changes), not published.

    Audited: live version 44 (89 tags, 57 triggers, 48 variables) and the fix workspace. Audit language=en; report files saved under the reports directory.

    What loses data now (high)

    EntityIssueSinceEffect
    GA4 - purchase - Site (tag 112)trigger condition never true on the checkout hostnamev41, 16 Sepno purchase in GA4; revenue reports empty
    GA4 - begin_checkout - Site (tag 98)same trigger family, same conditionv41, 16 Sepcheckout funnel broken from step 1
    META - Purchase (tag 130)fires from the dataLayer event, unaffected, but event_id is not shared with the server CAPI tagv37Meta counts each purchase twice

    At risk (medium)

    • 6 marketing tags fire on All Pages without a consent condition (META - PageView, LinkedIn - Insight, 4 remarketing). Consent default is set on Consent Initialization with wait_for_update 0: tags decide before the banner answers. Recommended 500.
    • Criteo - OneTag (HTML) and Criteo - OneTag (template) both active: duplicate firing.
    • Conversion Linker present, but cross-domain linking lists only www.example-shop.com: add checkout.example-shop.com.

    Hygiene (low)

    18 orphan triggers, 6 unused variables, 3 paused seasonal tags (kept on purpose, dated in the report). Proposed as a separate cleanup workspace after the fixes are live.

    Change set applied in workspace "Fix - purchase trigger - 2026-10-13"

    1. update_trigger 57 CE - purchase: hostname condition replaced with {{Page Hostname}} ends with example-shop.com.
    2. update_trigger 58 CE - begin_checkout: same.
    3. create_variable Unique Event ID (custom JS) and update_tag 130 META - Purchase to send it as event_id; the server CAPI tag already reads event_id from the incoming event.

    gtm_diff live → workspace: 1 added, 0 removed, 3 modified (fields: filter on 57 and 58, parameter on 130). Nothing else changed.

    Next steps (for you)

    1. Preview on a test order across www and checkout: purchase fires once in GA4 DebugView with transaction_id, value, currency, items; Meta Pixel Helper shows one Purchase with an event_id.
    2. Create version "Fix purchase trigger and Meta event_id", publish from the GTM UI.
    3. Outside GTM: add checkout.example-shop.com to GA4 cross-domain settings and to the Conversion Linker domains; then I can delete the workspace.

    Not covered: the site's own gtag snippet, the server container (audit it separately), GA4 property settings.

    (Demo container and figures are illustrative.)

    Connects securely to your tools. The creator never sees your data.

    About this skill

    Turns Google Tag Manager into the audits and fixes a tracking team actually delivers, on top of the free, open-source mcp-gtm-audit MCP server (read-only by default, opt-in write mode, never publishes).

    What it does

    • Health audit of the live version and of pending workspaces: tags that never fire, dead variable references, Google tags without Measurement ID, GA4 events without name or parameters, Custom HTML risks, duplicated pixels, missing Consent Mode checks, orphan triggers, unused variables. Severity by data impact, with the known false positives and the fix for each code.
    • Tracking validation: every GA4 event per Measurement ID with its parameters, ecommerce parameter gaps (purchase, begin_checkout, add_to_cart, view_item, generate_lead), Google Ads conversions and Conversion Linker, Meta pixels and CAPI deduplication, server-side detection.
    • Consent Mode v2 checklist per tag: fires before consent, after, or gated.
    • Server-side review and migration: the two classic breakages (hostname filters on event data the client never sends, Google tag firing after the first page_view) and a step-by-step partial rollout with a lookup table per hostname.
    • Pre-publish review: diff of a workspace against the live version with the fields that changed and their before/after values.
    • Change sets: with write mode, a dedicated workspace, entities created in dependency order from documented JSON shapes, diff pasted as the review document; without write mode, an importable container JSON for Admin > Import container. The user reviews in Preview, creates the version and publishes.
    • Diagnosis table: symptom → usual cause → where to look, including two defects masking each other.
    • Client-ready tracking audit: structure, honest framing, impersonal voice, actions outside GTM listed separately. A bundled script turns the audit JSON into Markdown tables.

    Ground rules the skill enforces

    Audit what is live first, then what is about to be. Severity is about data, not tidiness. Static rules say what is configured, not what fires: runtime confirmation is named when it matters. One change set, one named workspace, never the Default Workspace, never publish. Read the entity shape before writing. Respect the API quota. Say what was not checked.

    Where it comes from

    Built from real agency engagements: retail container migrations, utilities moving to server-side tagging, B2B sites whose events vanished on a date nobody noticed. Works in Claude Code, Cursor, Codex CLI and any agent that reads SKILL.md and connects to MCP servers.

    Requirements

    The mcp-gtm-audit MCP server (https://github.com/acamolese/gtm-audit-mcp, MIT, pipx install mcp-gtm-audit) connected to the agent, with Tag Manager access to the container. Write mode needs the server started with GTM_ALLOW_WRITE=1. No credentials in the skill. One bundled Python standard-library script that reads the audit JSON locally: no network, no environment variables.

    How to use

    Skills on Agensi run inside your AI agent. Copy the prompt, paste it into your agent, and it connects to Agensi and installs this skill for you. If a payment is needed, your agent shows it to you first.

    Reviews

    No reviews yet

    Be one of the first to try it. Every listed skill passes our trust checks below.

    Security scanned

    Passed our 8-point scan before listing

    Fresh listing

    Recently published to Agensi

    30-day refund

    Not a fit? Get your money back

    Trust & safety

    Security scanned

    Verified clean today

    • Passed all security checks, Safe to install

    Needs access to

    Google

    Listedtoday

    What's inside

    Frequently Asked Questions