2.8 KiB
2.8 KiB
description
| description |
|---|
| GTM page audit - scan fired tags, gap analysis, tag design from DOM, and report generation |
GTM Audit
Comprehensive Google Tag Manager audit using Playwright to scan live pages for container health, tag firing, dataLayer events, form tracking, and e-commerce checkout flows.
Triggers
- "audit GTM", "check dataLayer", "GTM 검사", "scan GTM tags", "audit tags on page", "check tag firing"
Capabilities
- Container Analysis — Verify GTM container loads, detect container ID, inventory tags/triggers/variables
- Tag Destination Detection — Identify fired tags by network requests (GA4, Google Ads, Meta Pixel, LinkedIn, TikTok, Kakao, Naver, etc.)
- DataLayer Validation — Check event structure, required fields, GA4 naming conventions
- Form Tracking — Verify form submission events and field capture
- E-commerce Checkout Flow — Validate purchase/cart/checkout events and required e-commerce parameters
- Journey-based Audit — Target specific user journeys:
pageview,scroll,click,form,checkout,datalayer, orfull
Script
AUDIT_SCRIPT="/Users/ourdigital/Project/our-claude-skills/custom-skills/60-gtm-audit/code/scripts/gtm_audit.py"
# Basic page audit
python "$AUDIT_SCRIPT" --url "https://example.com"
# Audit with expected container ID and specific journey
python "$AUDIT_SCRIPT" --url "https://example.com" --container GTM-XXXXXX --journey full
# E-commerce checkout flow audit with JSON report
python "$AUDIT_SCRIPT" --url "https://example.com/checkout" --journey checkout --output report.json
Script Options
| Flag | Description | Default |
|---|---|---|
--url |
Target URL to audit (required) | — |
--container |
Expected GTM container ID (e.g., GTM-XXXXXX) | auto-detect |
--journey |
Audit scope: pageview, scroll, click, form, checkout, datalayer, full |
pageview |
--output |
Output file path for JSON report | gtm_audit_report.json |
--timeout |
Page load timeout in ms | 30000 |
--headless |
Run in headless mode | True |
Audit Checklist
Container Health
- GTM container loads without JavaScript errors
- Container ID matches expected value
- No duplicate container installations
Tag Firing & Destinations
- GA4 measurement requests detected
- Ad platform pixels fire correctly (Google Ads, Meta, etc.)
- No orphaned or misfiring tags
DataLayer Events
page_viewfires on all pagespurchaseevent has required e-commerce fields- Form submissions tracked with correct parameters
- Event names follow GA4 snake_case convention
Common Issues
- Missing or malformed ecommerce object
- Incorrect event names (not GA4 format)
- Duplicate event firing
- Tags firing before dataLayer is ready