Creator · alirezarezvani
Last updated · Sep 1, 2026
Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality. Use when building a tracking plan from scratch, auditing existing analytics for gaps or errors, debugging missing events, or setting up GTM
Creator · alirezarezvani
Last updated · Sep 1, 2026
Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality. Use when building a tracking plan from scratch, auditing existing analytics for gaps or errors, debugging missing events, or setting up GTM
Creator · alirezarezvani
Last updated · Sep 1, 2026
Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality. Use when building a tracking plan from scratch, auditing existing analytics for gaps or errors, debugging missing events, or setting up GTM
Creator · alirezarezvani
Last updated · Sep 1, 2026
Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality. Use when building a tracking plan from scratch, auditing existing analytics for gaps or errors, debugging missing events, or setting up GTM
Sandbox only
Install targets
Codex install prompt
Install the "analytics-tracking" agent skill from https://github.com/alirezarezvani/claude-skills/tree/main/.gemini/skills/analytics-tracking. Read its SKILL.md or equivalent instructions first, install only the files needed for this workspace, and summarize any required setup before using it. Skill purpose: Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality. Use when building a tracking plan from scratch, auditing existing analytics for gaps or errors, debugging missing events, or setting up GTM. Trigger keywords: GA4 setup, Google Tag Manager, GTM, event tracking, analytics implementation, conversion tracking, tracking plan, event taxonomy, custom dimensions, UTM tracking, analytics audit, missing events, tracking broken. NOT for analyzing marketing campaign data — use campaign-analytics for that. NOT for BI dashboards — use product-analytics for in-product event analysis. After the install attempt, report the result to https://www.openagentskill.com/api/agent/outcome with POST JSON {"event_id":"install_<unique-id>","skill_slug":"alirezarezvani-analytics-tracking","task":"Install analytics-tracking","agent":"codex","outcome":"success","install_used":true}. Replace event_id with a unique value and outcome with success or failed. Report success only after the skill is installed and a minimal verification passes.Supply asset profile
Code review, repo analysis, testing, CI, GitHub, DevOps, and developer workflow skills.
Scenario
Coding agents
I need a coding agent that can understand a repository, edit code, and review pull requests.
Agent fit
Claude Code + CLI + Codex
Codex, Claude Code, Cursor, CLI, or custom agents.
Install
Ready
npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Maintenance
fresh
8d since push
Risk
Needs review
Dependency or permission surface needs review
GitHub quality
25K
91/100 Quality · 82/100 Trust
Coverage tags
Review notes
Dependency or permission surface needs review · Permission surface may require sandboxing
Agent adoption scorecard
These scores combine public repository metadata, OpenAgentSkill review signals, maintenance freshness, and install readiness. They are a shortlist signal, not a replacement for human review.
Quality
ExcellentHigh-confidence pick with strong adoption and healthy maintenance signals.
Trust
Sandbox onlyUseful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.
Audit
Needs reviewA machine-readable review of install readiness, security metadata, maintenance, and adoption risk.
OpenAgentSkill Trust Score v5
Run only in a sandbox and compare close alternatives before using it for real work.
Stars
25K GitHub stars
Repo activity
25K stars, 3.6K forks
Maintenance
8d since push
License
MIT
Install
npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Install safety
Agent-readable metadata
Use this block or the embedded JSON to decide whether an agent should install this skill, choose an alternative, or ask for human review first.
Suited tasks
Suited agents
Install decision
Trust and risk
Outcome loop
Install command
npx skills add alirezarezvani/claude-skills --skill analytics-trackingDo not use when
Agent safety v2
Sparse or mixed signals. Useful for discovery, but not for autonomous installation.
Test manually in an isolated workspace and compare against safer alternatives.
high
Skill metadata references terminal, CLI, shell, subprocess, or command execution workflows.
medium
Skill may drive a browser or interact with web pages.
medium
Skill likely fetches remote pages, APIs, repositories, or external services.
medium
Skill may read or write project files, documents, generated artifacts, or local workspace state.
Agent resolve plan
The Resolve API returns the selected skill, alternatives, safety policy, audit notes, install target, and copy-paste prompt an agent can follow without scraping this page.
Open JSON
/api/agent/resolve?task=Use%20analytics-tracking%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Resolve text
/api/agent/resolve?task=Use%20analytics-tracking%20for%20an%20agent%20workflow&agent=codex&max_risk=medium&format=text
Install handoff
/api/skills/alirezarezvani-analytics-tracking/install
Agent should check
Copy prompt
Task: Use analytics-tracking in this workspace.
Resolve first: https://www.openagentskill.com/api/agent/resolve?task=Use%20analytics-tracking%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Review install handoff: https://www.openagentskill.com/api/skills/alirezarezvani-analytics-tracking/install
Install command: npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Before running it, summarize audit warnings, required permissions, and the fallback skill if install is risky.Agent handoff
Use the public install endpoint to fetch the command, safety checklist, target prompts, and canonical links for this skill.
Install handoff
/api/skills/alirezarezvani-analytics-tracking/install
LLM text format
/api/skills/alirezarezvani-analytics-tracking/install?format=text
Find alternatives
/api/skills/search?q=analytics-tracking&limit=3
Agent prompt
Use analytics-tracking for this task. Review https://www.openagentskill.com/api/skills/alirezarezvani-analytics-tracking/install, then install with: npx skills add alirezarezvani/claude-skills --skill analytics-trackingRegistry metadata
This page exposes the same decision, trust, audit, use-case, and install signals through the Registry API, so agents can rank this skill without scraping the UI.
Manifest
/api/registry/manifest/alirezarezvani-analytics-tracking
LLM text
/api/registry/manifest/alirezarezvani-analytics-tracking?format=text
Install alias
/api/registry/install/alirezarezvani-analytics-tracking
Recommend
/api/registry/recommend?task=Use%20analytics-tracking%20in%20an%20agent%20workflow&limit=3
Agent fit
Coding agents
Use-case tags
Platforms
Claude Code
Audit report
A machine-readable review of install readiness, security metadata, maintenance, and adoption risk.
Agent decision cockpit
Use this as a leading candidate, then validate the README and install path in your own agent stack.
Role in stack
Primary pick
Primary fit
Coding agents
Trust label
Production-ready
Install path
Command ready
Use when
Evidence
review first
Implementation path
Trust profile
Useful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.
GitHub adoption
PASS25K GitHub stars
Stars/forks activity
PASS25K stars, 3.6K forks; issue activity unavailable in current metadata
Recent maintenance
PASS8d since push
License clarity
PASSMIT
Good signals
Review before install
Recommended action
Run only in a sandbox and compare close alternatives before using it for real work.
Quality profile
High-confidence pick with strong adoption and healthy maintenance signals.
Workflow fit
Build and ship code
I need a coding agent that can understand a repository, edit code, and review pull requests.
Investigate faster
I need my agent to research a topic, compare sources, and produce a concise report.
Manage pipeline work
I need my agent to enrich leads, update CRM records, and prepare sales follow-ups.
Workflow fit
Inspect, patch, and verify code
A workflow for software agents that inspect repositories, review pull requests, generate tests, and turn findings into shippable patches.
Find, compare, and synthesize
A workflow for agents that gather sources, compare claims, summarize long material, and draft useful research briefs.
Design, build, test, and ship interfaces
A practical workflow for agents that turn product briefs or Figma designs into polished frontend code, review the result, test it in a browser, and prepare a safe deployment.
Alternative shortlist
Similar skills that may fit this task.
Wazuh - The Open Source Security Platform. Unified XDR and SIEM protection for endpoints and cloud workloads.
🕵️♂️ Collect a dossier on a person by username from 3000+ sites
Nuclei is a fast, customizable vulnerability scanner powered by the global security community and built on a simple YAML-based DSL, enabling collaboration to tackle trending vulnerabilities on the internet. It helps you find vulnerabilities in your applications, APIs, networks, DNS, and cloud configurations.
Infisical is the open-source platform for secrets, certificates, and privileged access management.
--- name: "analytics-tracking" description: "Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality. Use when building a tracking plan from scratch, auditing existing analytics for gaps or errors, debugging missing events, or setting up GTM. Trigger keywords: GA4 setup, Google Tag Manager, GTM, event tracking, analytics implementation, conversion tracking, tracking plan, event taxonomy, custom dimensions, UTM tracking, analytics audit, missing events, tracking broken. NOT for analyzing marketing campaign data — use campaign-analytics for that. NOT for BI dashboards — use product-analytics for in-product event analysis." license: MIT metadata: version: 1.0.0 author: Alireza Rezvani category: marketing updated: 2026-03-06 ---
# Analytics Tracking
You are an expert in analytics implementation. Your goal is to make sure every meaningful action in the customer journey is captured accurately, consistently, and in a way that can actually be used for decisions — not just for the sake of having data.
Bad tracking is worse than no tracking. Duplicate events, missing parameters, unconsented data, and broken conversions lead to decisions made on bad data. This skill is about building it right the first time, or finding what's broken and fixing it.
## Before Starting
**Check for context first:** If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for what's missing.
Gather this context:
### 1. Current State - Do you have GA4 and/or GTM already set up? If so, what's broken or missing? - What's your tech stack? (React SPA, Next.js, WordPress, custom, etc.) - Do you have a consent management platform (CMP)? Which one? - What events are you currently tracking (if any)?
### 2. Business Context - What are your primary conversion actions? (signup, purchase, lead form, free trial start) - What are your key micro-conversions? (pricing page view, feature discovery, demo request) - Do you run paid campaigns? (Google Ads, Meta, LinkedIn — affects conversion tracking needs)
### 3. Goals - Building from scratch, auditing existing, or debugging a specific issue? - Do you need cross-domain tracking? Multiple properties or subdomains? - Server-side tagging requirement? (GDPR-sensitive markets, performance concerns)
## How This Skill Works
### Mode 1: Set Up From Scratch No analytics in place — we'll build the tracking plan, implement GA4 and GTM, define the event taxonomy, and configure key events.
Start from the generator, then customize:
```bash python3 scripts/tracking_plan_generator.py # embedded sample → full tracking plan python3 scripts/tracking_plan_generator.py plan.json # your funnel definition python3 scripts/tracking_plan_generator.py --json # parseable JSON for pipelines ```
Its output (event taxonomy + parameters + GA4/GTM config checklist) is the working draft for the Event Taxonomy Design section below — review every generated event name against the naming convention before implementing.
### Mode 2: Audit Existing Tracking Tracking exists but you don't trust the data, coverage is incomplete, or you're adding new goals. We'll audit what's there, gap-fill, and clean up.
### Mode 3: Debug Tracking Issues Specific events are missing, conversion numbers don't add up, or GTM preview shows events firing but GA4 isn't recording them. Structured debugging workflow.
---
## Event Taxonomy Design
Get this right before touching GA4 or GTM. Retrofitting taxonomy is painful.
### Naming Convention
**Format:** `object_action` (snake_case, verb at the end)
| ✅ Good | ❌ Bad | |--------|--------| | `form_submit` | `submitForm`, `FormSubmitted`, `form-submit` | | `plan_selected` | `clickPricingPlan`, `selected_plan`, `PlanClick` | | `video_started` | `videoPlay`, `StartVideo`, `VideoStart` | | `checkout_completed` | `purchase`, `buy_complete`, `checkoutDone` |
**Rules:** - Always `noun_verb` not `verb_noun` - Lowercase + underscores only — no camelCase, no hyphens - Be specific enough to be unambiguous, not so verbose it's a sentence - Consistent tense: `_started`, `_completed`, `_failed` (not mix of past/present)
### Standard Parameters
Every event should include these where applicable:
| Parameter | Type | Example | Purpose | |-----------|------|---------|---------| | `page_location` | string | `https://app.co/pricing` | Auto-captured by GA4 | | `page_title` | string | `Pricing - Acme` | Auto-captured by GA4 | | `user_id` | string | `usr_abc123` | Link to your CRM/DB | | `plan_name` | string | `Professional` | Segment by plan | | `value` | number | `99` | Revenue/order value | | `currency` | string | `USD` | Required with value | | `content_group` | string | `onboarding` | Group pages/flows | | `method` | string | `google_oauth` | How (signup method, etc.) |
### Event Taxonomy for SaaS
**Core funnel events:** ``` visitor_arrived (page view — automatic in GA4) signup_started (user clicked "Sign up") signup_completed (account created successfully) trial_started (free trial began) onboarding_step_completed (param: step_name, step_number) feature_activated (param: feature_name) plan_selected (param: plan_name, billing_period) checkout_started (param: value, currency, plan_name) checkout_completed (param: value, currency, transaction_id) subscription_cancelled (param: cancel_reason, plan_name) ```
**Micro-conversion events:** ``` pricing_viewed demo_requested (param: source) form_submitted (param: form_name, form_location) content_downloaded (param: content_name, content_type) video_started (param: video_title) video_completed (param: video_title, percent_watched) chat_opened help_article_viewed (param: article_name) ```
See [references/event-taxonomy-guide.md](references/event-taxonomy-guide.md) for the full taxonomy catalog with custom dimension recommendations.
---
## GA4 Setup
### Data Stream Configuration
1. **Create property** in GA4 → Admin → Properties → Create 2. **Add web data stream** with your domain 3. **Enhanced Measurement** — enable all, then review: - ✅ Page views (keep) - ✅ Scrolls (keep) - ✅ Outbound clicks (keep) - ✅ Site search (keep if you have search) - ⚠️ Video engagement (disable if you'll track videos manually — avoid duplicates) - ⚠️ File downloads (disable if you'll track these in GTM for better parameters) 4. **Configure domains** — add all subdomains used in your funnel
### Custom Events in GA4
For any event not auto-collected, create it in GTM (preferred) or via gtag directly:
**Via gtag:** ```javascript gtag('event', 'signup_completed', { method: 'email', user_id: 'usr_abc123', plan_name: "trial" }); ```
**Via GTM data layer (preferred — see GTM section):** ```javascript window.dataLayer.push({ event: 'signup_completed', signup_method: 'email', user_id: 'usr_abc123' }); ```
### Key Events Configuration
Mark these events as key events in GA4 → Admin → Key events (GA4 renamed "Conversions" to "Key events" in March 2024 — "conversions" now refers only to Google Ads conversion actions): - `signup_completed` - `checkout_completed` - `demo_requested` - `trial_started` (if separate from signup)
**Rules:** - Max 30 key events per property — curate, don't mark everything - Key events are retroactive in GA4 — turning one on applies to 6 months of history - Don't mark micro-conversions as key events unless you're also optimizing ad campaigns for them
---
## Google Tag Manager Setup
### Container Structure
``` GTM Container ├── Tags │ ├── GA4 Configuration (fires on all pages) │ ├── GA4 Event — [event_name] (one tag per event) │ ├── Google Ads Conversion (per conversion action) │ └── Meta Pixel (if running Meta ads) ├── Triggers │ ├── All Pages │ ├── DOM Ready │ ├── Data Layer Event — [event_name] │ └── Custom Element Click — [selector] └── Variables ├── Data Layer Variables (dlv — for each dL key) ├── Constant — GA4 Measurement ID └── JavaScript Variables (computed values) ```
### Tag Patterns for SaaS
**Pattern 1: Data Layer Push (most reliable)**
Your app pushes to dataLayer → GTM picks it up → sends to GA4.
```javascript // In your app code (on event): window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: 'signup_completed', signup_method: 'email', user_id: userId, plan_name: "trial" }); ```
``` GTM Tag: GA4 Event Event Name: {{DLV - event}} OR hardcode "signup_completed" Parameters: signup_method: {{DLV - signup_method}} user_id: {{DLV - user_id}} plan_name: "dlv-plan-name" Trigger: Custom Event - "signup_completed" ```
**Pattern 2: CSS Selector Click**
For events triggered by UI elements without app-level hooks.
``` GTM Trigger: Type: Click - All Elements Conditions: Click Element matches CSS selector [data-track="demo-cta"] GTM Tag: GA4 Event Event Name: demo_requested Parameters: page_location: {{Page URL}} ```
See [references/gtm-patterns.md](references/gtm-patterns.md) for full configuration templates.
---
## Conversion Tracking: Platform-Specific
### Google Ads
1. Create conversion action in Google Ads → Tools → Conversions 2. Import GA4 conversions (recommended — single source of truth) OR use the Google Ads tag 3. Set attribution model: **Data-driven** (if >50 conversions/month), otherwise **Last click** 4. Conversion window: 30 days for lead gen, 90 days for high-consideration purchases
### Meta (Facebook/Instagram) Pixel
1. Install Meta Pixel base code via GTM 2. Standard events: `PageView`, `Lead`, `CompleteRegistration`, `Purchase` 3. Conversions API (CAPI) strongly recommended — client-side pixel loses ~30% of conversions due to ad blockers and iOS 4. CAPI requires server-side implementation (Meta's docs or GTM server-side)
---
## Cross-Platform Tracking
### UTM Strategy
Enforce strict UTM conventions or your channel data becomes noise.
| Parameter | Convention | Example | |-----------|-----------|---------| | `utm_source` | Platform name (lowercase) | `google`, `linkedin`, `newsletter` | | `utm_medium` | Traffic type | `cpc`, `email`, `social`, `organic` | | `utm_campaign` | Campaign ID or name | `q1-trial-push`, `brand-awareness` | | `utm_content` | Ad/creative variant | `hero-cta-blue`, `text-link` | | `utm_term` | Paid keyword | `saas-analytics` |
**Rule:** Never tag organic or direct traffic with UTMs. UTMs override GA4's automatic source/medium attribution.
### Attribution Windows
| Platform | Default Window | Recommended for SaaS | |---------|---------------|---------------------| | GA4 | 30 days | 30-90 days depending on sales cycle | | Google Ads | 30 days | 30 days (trial), 90 days (enterprise) | | Meta | 7-day click, 1-day view | 7-day click only | | LinkedIn | 30 days | 30 days |
### Cross-Domain Tracking
For funnels that cross domains (e.g., `acme.com` → `app.acme.com`):
1. In GA4 → Admin → Data Streams → Configure tag settings → List unwanted referrals → Add both domains 2. In GTM → GA4 Configuration tag → Cross-domain measurement → Add both domains 3. Test: visit domain A, click link to domain B, check GA4 DebugView — session should not restart
---
## Data Quality
### Deduplication
**Events firing twice?** Common causes: - GTM tag + hardcoded gtag both firing - Enhanced Measurement + custom GTM tag for same event - SPA router firing pageview on every route change AND GTM page view tag
Fix: Audit GTM Preview for double-fires. Check Network tab in DevTools for duplicate hits.
### Bot Filtering
GA4 filters known bots automatically. For internal traffic: 1. GA4 → Admin → Data Filters → Internal Traffic 2. Add your office IPs and developer IPs 3. Enable filter (starts as testing mode — activate it)
### Consent Management Impact
Under GDPR/ePrivacy, analytics may require consent. Plan for this:
Source provenance
Decision snapshot
25,373 GitHub stars
Audit
Install and adoption review
Agent-proven evidence
Outcome reports after resolve, review, install, and one narrow run.
No agent outcome data yet. The first agent run can report success, setup needs, risk blocks, failure, or not-relevant through /api/agent/outcome.
Install
Free and open source. Review the report before installing into production agents.
Growth loop
Scenario-led draft for analytics-tracking, ready for a manual X post.
analytics-tracking: Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event t... 25.4K stars https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=x
Listing + install path for analytics-tracking: https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=x Install: npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Listing source
This listing was indexed from public sources and is not marked official until a maintainer claim is approved.
Attribution links to the public repository or creator profile. Creators can claim the listing to update ownership signals.
Claim this skillOwner claim
This Registry indexed listing is attributed to alirezarezvani but is not marked official yet. Claim it to add a verified owner signal and make future launch, install, and audit updates easier to trust.
Creator backlink kit
Show the canonical listing, current trust and audit signals, and real Agent-Proven evidence where developers evaluate the repository.
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking/audit)
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)alirezarezvani
@alirezarezvani
Share whether this skill looks useful for your agent workflow. Aggregated feedback improves rankings over time.
Sandbox only
Wazuh
Wazuh - The Open Source Security Platform. Unified XDR and SIEM protection for endpoints and cloud workloads.
16.3K StarsMaigret
🕵️♂️ Collect a dossier on a person by username from 3000+ sites
32.9K StarsNuclei
Nuclei is a fast, customizable vulnerability scanner powered by the global security community and built on a simple YAML-based DSL, enabling collaboration to tackle trending vulnerabilities on the internet. It helps you find vulnerabilities in your applications, APIs, networks, DNS, and cloud configurations.
29.2K StarsInfisical
Infisical is the open-source platform for secrets, certificates, and privileged access management.
27.4K StarsSandbox only
Install targets
Codex install prompt
Install the "analytics-tracking" agent skill from https://github.com/alirezarezvani/claude-skills/tree/main/.gemini/skills/analytics-tracking. Read its SKILL.md or equivalent instructions first, install only the files needed for this workspace, and summarize any required setup before using it. Skill purpose: Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality. Use when building a tracking plan from scratch, auditing existing analytics for gaps or errors, debugging missing events, or setting up GTM. Trigger keywords: GA4 setup, Google Tag Manager, GTM, event tracking, analytics implementation, conversion tracking, tracking plan, event taxonomy, custom dimensions, UTM tracking, analytics audit, missing events, tracking broken. NOT for analyzing marketing campaign data — use campaign-analytics for that. NOT for BI dashboards — use product-analytics for in-product event analysis. After the install attempt, report the result to https://www.openagentskill.com/api/agent/outcome with POST JSON {"event_id":"install_<unique-id>","skill_slug":"alirezarezvani-analytics-tracking","task":"Install analytics-tracking","agent":"codex","outcome":"success","install_used":true}. Replace event_id with a unique value and outcome with success or failed. Report success only after the skill is installed and a minimal verification passes.Supply asset profile
Code review, repo analysis, testing, CI, GitHub, DevOps, and developer workflow skills.
Scenario
Coding agents
I need a coding agent that can understand a repository, edit code, and review pull requests.
Agent fit
Claude Code + CLI + Codex
Codex, Claude Code, Cursor, CLI, or custom agents.
Install
Ready
npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Maintenance
fresh
8d since push
Risk
Needs review
Dependency or permission surface needs review
GitHub quality
25K
91/100 Quality · 82/100 Trust
Coverage tags
Review notes
Dependency or permission surface needs review · Permission surface may require sandboxing
Agent adoption scorecard
These scores combine public repository metadata, OpenAgentSkill review signals, maintenance freshness, and install readiness. They are a shortlist signal, not a replacement for human review.
Quality
ExcellentHigh-confidence pick with strong adoption and healthy maintenance signals.
Trust
Sandbox onlyUseful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.
Audit
Needs reviewA machine-readable review of install readiness, security metadata, maintenance, and adoption risk.
OpenAgentSkill Trust Score v5
Run only in a sandbox and compare close alternatives before using it for real work.
Stars
25K GitHub stars
Repo activity
25K stars, 3.6K forks
Maintenance
8d since push
License
MIT
Install
npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Install safety
Agent-readable metadata
Use this block or the embedded JSON to decide whether an agent should install this skill, choose an alternative, or ask for human review first.
Suited tasks
Suited agents
Install decision
Trust and risk
Outcome loop
Install command
npx skills add alirezarezvani/claude-skills --skill analytics-trackingDo not use when
Agent safety v2
Sparse or mixed signals. Useful for discovery, but not for autonomous installation.
Test manually in an isolated workspace and compare against safer alternatives.
high
Skill metadata references terminal, CLI, shell, subprocess, or command execution workflows.
medium
Skill may drive a browser or interact with web pages.
medium
Skill likely fetches remote pages, APIs, repositories, or external services.
medium
Skill may read or write project files, documents, generated artifacts, or local workspace state.
Agent resolve plan
The Resolve API returns the selected skill, alternatives, safety policy, audit notes, install target, and copy-paste prompt an agent can follow without scraping this page.
Open JSON
/api/agent/resolve?task=Use%20analytics-tracking%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Resolve text
/api/agent/resolve?task=Use%20analytics-tracking%20for%20an%20agent%20workflow&agent=codex&max_risk=medium&format=text
Install handoff
/api/skills/alirezarezvani-analytics-tracking/install
Agent should check
Copy prompt
Task: Use analytics-tracking in this workspace.
Resolve first: https://www.openagentskill.com/api/agent/resolve?task=Use%20analytics-tracking%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Review install handoff: https://www.openagentskill.com/api/skills/alirezarezvani-analytics-tracking/install
Install command: npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Before running it, summarize audit warnings, required permissions, and the fallback skill if install is risky.Agent handoff
Use the public install endpoint to fetch the command, safety checklist, target prompts, and canonical links for this skill.
Install handoff
/api/skills/alirezarezvani-analytics-tracking/install
LLM text format
/api/skills/alirezarezvani-analytics-tracking/install?format=text
Find alternatives
/api/skills/search?q=analytics-tracking&limit=3
Agent prompt
Use analytics-tracking for this task. Review https://www.openagentskill.com/api/skills/alirezarezvani-analytics-tracking/install, then install with: npx skills add alirezarezvani/claude-skills --skill analytics-trackingRegistry metadata
This page exposes the same decision, trust, audit, use-case, and install signals through the Registry API, so agents can rank this skill without scraping the UI.
Manifest
/api/registry/manifest/alirezarezvani-analytics-tracking
LLM text
/api/registry/manifest/alirezarezvani-analytics-tracking?format=text
Install alias
/api/registry/install/alirezarezvani-analytics-tracking
Recommend
/api/registry/recommend?task=Use%20analytics-tracking%20in%20an%20agent%20workflow&limit=3
Agent fit
Coding agents
Use-case tags
Platforms
Claude Code
Audit report
A machine-readable review of install readiness, security metadata, maintenance, and adoption risk.
Agent decision cockpit
Use this as a leading candidate, then validate the README and install path in your own agent stack.
Role in stack
Primary pick
Primary fit
Coding agents
Trust label
Production-ready
Install path
Command ready
Use when
Evidence
review first
Implementation path
Trust profile
Useful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.
GitHub adoption
PASS25K GitHub stars
Stars/forks activity
PASS25K stars, 3.6K forks; issue activity unavailable in current metadata
Recent maintenance
PASS8d since push
License clarity
PASSMIT
Good signals
Review before install
Recommended action
Run only in a sandbox and compare close alternatives before using it for real work.
Quality profile
High-confidence pick with strong adoption and healthy maintenance signals.
Workflow fit
Build and ship code
I need a coding agent that can understand a repository, edit code, and review pull requests.
Investigate faster
I need my agent to research a topic, compare sources, and produce a concise report.
Manage pipeline work
I need my agent to enrich leads, update CRM records, and prepare sales follow-ups.
Workflow fit
Inspect, patch, and verify code
A workflow for software agents that inspect repositories, review pull requests, generate tests, and turn findings into shippable patches.
Find, compare, and synthesize
A workflow for agents that gather sources, compare claims, summarize long material, and draft useful research briefs.
Design, build, test, and ship interfaces
A practical workflow for agents that turn product briefs or Figma designs into polished frontend code, review the result, test it in a browser, and prepare a safe deployment.
Alternative shortlist
Similar skills that may fit this task.
Wazuh - The Open Source Security Platform. Unified XDR and SIEM protection for endpoints and cloud workloads.
🕵️♂️ Collect a dossier on a person by username from 3000+ sites
Nuclei is a fast, customizable vulnerability scanner powered by the global security community and built on a simple YAML-based DSL, enabling collaboration to tackle trending vulnerabilities on the internet. It helps you find vulnerabilities in your applications, APIs, networks, DNS, and cloud configurations.
Infisical is the open-source platform for secrets, certificates, and privileged access management.
--- name: "analytics-tracking" description: "Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality. Use when building a tracking plan from scratch, auditing existing analytics for gaps or errors, debugging missing events, or setting up GTM. Trigger keywords: GA4 setup, Google Tag Manager, GTM, event tracking, analytics implementation, conversion tracking, tracking plan, event taxonomy, custom dimensions, UTM tracking, analytics audit, missing events, tracking broken. NOT for analyzing marketing campaign data — use campaign-analytics for that. NOT for BI dashboards — use product-analytics for in-product event analysis." license: MIT metadata: version: 1.0.0 author: Alireza Rezvani category: marketing updated: 2026-03-06 ---
# Analytics Tracking
You are an expert in analytics implementation. Your goal is to make sure every meaningful action in the customer journey is captured accurately, consistently, and in a way that can actually be used for decisions — not just for the sake of having data.
Bad tracking is worse than no tracking. Duplicate events, missing parameters, unconsented data, and broken conversions lead to decisions made on bad data. This skill is about building it right the first time, or finding what's broken and fixing it.
## Before Starting
**Check for context first:** If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for what's missing.
Gather this context:
### 1. Current State - Do you have GA4 and/or GTM already set up? If so, what's broken or missing? - What's your tech stack? (React SPA, Next.js, WordPress, custom, etc.) - Do you have a consent management platform (CMP)? Which one? - What events are you currently tracking (if any)?
### 2. Business Context - What are your primary conversion actions? (signup, purchase, lead form, free trial start) - What are your key micro-conversions? (pricing page view, feature discovery, demo request) - Do you run paid campaigns? (Google Ads, Meta, LinkedIn — affects conversion tracking needs)
### 3. Goals - Building from scratch, auditing existing, or debugging a specific issue? - Do you need cross-domain tracking? Multiple properties or subdomains? - Server-side tagging requirement? (GDPR-sensitive markets, performance concerns)
## How This Skill Works
### Mode 1: Set Up From Scratch No analytics in place — we'll build the tracking plan, implement GA4 and GTM, define the event taxonomy, and configure key events.
Start from the generator, then customize:
```bash python3 scripts/tracking_plan_generator.py # embedded sample → full tracking plan python3 scripts/tracking_plan_generator.py plan.json # your funnel definition python3 scripts/tracking_plan_generator.py --json # parseable JSON for pipelines ```
Its output (event taxonomy + parameters + GA4/GTM config checklist) is the working draft for the Event Taxonomy Design section below — review every generated event name against the naming convention before implementing.
### Mode 2: Audit Existing Tracking Tracking exists but you don't trust the data, coverage is incomplete, or you're adding new goals. We'll audit what's there, gap-fill, and clean up.
### Mode 3: Debug Tracking Issues Specific events are missing, conversion numbers don't add up, or GTM preview shows events firing but GA4 isn't recording them. Structured debugging workflow.
---
## Event Taxonomy Design
Get this right before touching GA4 or GTM. Retrofitting taxonomy is painful.
### Naming Convention
**Format:** `object_action` (snake_case, verb at the end)
| ✅ Good | ❌ Bad | |--------|--------| | `form_submit` | `submitForm`, `FormSubmitted`, `form-submit` | | `plan_selected` | `clickPricingPlan`, `selected_plan`, `PlanClick` | | `video_started` | `videoPlay`, `StartVideo`, `VideoStart` | | `checkout_completed` | `purchase`, `buy_complete`, `checkoutDone` |
**Rules:** - Always `noun_verb` not `verb_noun` - Lowercase + underscores only — no camelCase, no hyphens - Be specific enough to be unambiguous, not so verbose it's a sentence - Consistent tense: `_started`, `_completed`, `_failed` (not mix of past/present)
### Standard Parameters
Every event should include these where applicable:
| Parameter | Type | Example | Purpose | |-----------|------|---------|---------| | `page_location` | string | `https://app.co/pricing` | Auto-captured by GA4 | | `page_title` | string | `Pricing - Acme` | Auto-captured by GA4 | | `user_id` | string | `usr_abc123` | Link to your CRM/DB | | `plan_name` | string | `Professional` | Segment by plan | | `value` | number | `99` | Revenue/order value | | `currency` | string | `USD` | Required with value | | `content_group` | string | `onboarding` | Group pages/flows | | `method` | string | `google_oauth` | How (signup method, etc.) |
### Event Taxonomy for SaaS
**Core funnel events:** ``` visitor_arrived (page view — automatic in GA4) signup_started (user clicked "Sign up") signup_completed (account created successfully) trial_started (free trial began) onboarding_step_completed (param: step_name, step_number) feature_activated (param: feature_name) plan_selected (param: plan_name, billing_period) checkout_started (param: value, currency, plan_name) checkout_completed (param: value, currency, transaction_id) subscription_cancelled (param: cancel_reason, plan_name) ```
**Micro-conversion events:** ``` pricing_viewed demo_requested (param: source) form_submitted (param: form_name, form_location) content_downloaded (param: content_name, content_type) video_started (param: video_title) video_completed (param: video_title, percent_watched) chat_opened help_article_viewed (param: article_name) ```
See [references/event-taxonomy-guide.md](references/event-taxonomy-guide.md) for the full taxonomy catalog with custom dimension recommendations.
---
## GA4 Setup
### Data Stream Configuration
1. **Create property** in GA4 → Admin → Properties → Create 2. **Add web data stream** with your domain 3. **Enhanced Measurement** — enable all, then review: - ✅ Page views (keep) - ✅ Scrolls (keep) - ✅ Outbound clicks (keep) - ✅ Site search (keep if you have search) - ⚠️ Video engagement (disable if you'll track videos manually — avoid duplicates) - ⚠️ File downloads (disable if you'll track these in GTM for better parameters) 4. **Configure domains** — add all subdomains used in your funnel
### Custom Events in GA4
For any event not auto-collected, create it in GTM (preferred) or via gtag directly:
**Via gtag:** ```javascript gtag('event', 'signup_completed', { method: 'email', user_id: 'usr_abc123', plan_name: "trial" }); ```
**Via GTM data layer (preferred — see GTM section):** ```javascript window.dataLayer.push({ event: 'signup_completed', signup_method: 'email', user_id: 'usr_abc123' }); ```
### Key Events Configuration
Mark these events as key events in GA4 → Admin → Key events (GA4 renamed "Conversions" to "Key events" in March 2024 — "conversions" now refers only to Google Ads conversion actions): - `signup_completed` - `checkout_completed` - `demo_requested` - `trial_started` (if separate from signup)
**Rules:** - Max 30 key events per property — curate, don't mark everything - Key events are retroactive in GA4 — turning one on applies to 6 months of history - Don't mark micro-conversions as key events unless you're also optimizing ad campaigns for them
---
## Google Tag Manager Setup
### Container Structure
``` GTM Container ├── Tags │ ├── GA4 Configuration (fires on all pages) │ ├── GA4 Event — [event_name] (one tag per event) │ ├── Google Ads Conversion (per conversion action) │ └── Meta Pixel (if running Meta ads) ├── Triggers │ ├── All Pages │ ├── DOM Ready │ ├── Data Layer Event — [event_name] │ └── Custom Element Click — [selector] └── Variables ├── Data Layer Variables (dlv — for each dL key) ├── Constant — GA4 Measurement ID └── JavaScript Variables (computed values) ```
### Tag Patterns for SaaS
**Pattern 1: Data Layer Push (most reliable)**
Your app pushes to dataLayer → GTM picks it up → sends to GA4.
```javascript // In your app code (on event): window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: 'signup_completed', signup_method: 'email', user_id: userId, plan_name: "trial" }); ```
``` GTM Tag: GA4 Event Event Name: {{DLV - event}} OR hardcode "signup_completed" Parameters: signup_method: {{DLV - signup_method}} user_id: {{DLV - user_id}} plan_name: "dlv-plan-name" Trigger: Custom Event - "signup_completed" ```
**Pattern 2: CSS Selector Click**
For events triggered by UI elements without app-level hooks.
``` GTM Trigger: Type: Click - All Elements Conditions: Click Element matches CSS selector [data-track="demo-cta"] GTM Tag: GA4 Event Event Name: demo_requested Parameters: page_location: {{Page URL}} ```
See [references/gtm-patterns.md](references/gtm-patterns.md) for full configuration templates.
---
## Conversion Tracking: Platform-Specific
### Google Ads
1. Create conversion action in Google Ads → Tools → Conversions 2. Import GA4 conversions (recommended — single source of truth) OR use the Google Ads tag 3. Set attribution model: **Data-driven** (if >50 conversions/month), otherwise **Last click** 4. Conversion window: 30 days for lead gen, 90 days for high-consideration purchases
### Meta (Facebook/Instagram) Pixel
1. Install Meta Pixel base code via GTM 2. Standard events: `PageView`, `Lead`, `CompleteRegistration`, `Purchase` 3. Conversions API (CAPI) strongly recommended — client-side pixel loses ~30% of conversions due to ad blockers and iOS 4. CAPI requires server-side implementation (Meta's docs or GTM server-side)
---
## Cross-Platform Tracking
### UTM Strategy
Enforce strict UTM conventions or your channel data becomes noise.
| Parameter | Convention | Example | |-----------|-----------|---------| | `utm_source` | Platform name (lowercase) | `google`, `linkedin`, `newsletter` | | `utm_medium` | Traffic type | `cpc`, `email`, `social`, `organic` | | `utm_campaign` | Campaign ID or name | `q1-trial-push`, `brand-awareness` | | `utm_content` | Ad/creative variant | `hero-cta-blue`, `text-link` | | `utm_term` | Paid keyword | `saas-analytics` |
**Rule:** Never tag organic or direct traffic with UTMs. UTMs override GA4's automatic source/medium attribution.
### Attribution Windows
| Platform | Default Window | Recommended for SaaS | |---------|---------------|---------------------| | GA4 | 30 days | 30-90 days depending on sales cycle | | Google Ads | 30 days | 30 days (trial), 90 days (enterprise) | | Meta | 7-day click, 1-day view | 7-day click only | | LinkedIn | 30 days | 30 days |
### Cross-Domain Tracking
For funnels that cross domains (e.g., `acme.com` → `app.acme.com`):
1. In GA4 → Admin → Data Streams → Configure tag settings → List unwanted referrals → Add both domains 2. In GTM → GA4 Configuration tag → Cross-domain measurement → Add both domains 3. Test: visit domain A, click link to domain B, check GA4 DebugView — session should not restart
---
## Data Quality
### Deduplication
**Events firing twice?** Common causes: - GTM tag + hardcoded gtag both firing - Enhanced Measurement + custom GTM tag for same event - SPA router firing pageview on every route change AND GTM page view tag
Fix: Audit GTM Preview for double-fires. Check Network tab in DevTools for duplicate hits.
### Bot Filtering
GA4 filters known bots automatically. For internal traffic: 1. GA4 → Admin → Data Filters → Internal Traffic 2. Add your office IPs and developer IPs 3. Enable filter (starts as testing mode — activate it)
### Consent Management Impact
Under GDPR/ePrivacy, analytics may require consent. Plan for this:
Source provenance
Decision snapshot
25,373 GitHub stars
Audit
Install and adoption review
Agent-proven evidence
Outcome reports after resolve, review, install, and one narrow run.
No agent outcome data yet. The first agent run can report success, setup needs, risk blocks, failure, or not-relevant through /api/agent/outcome.
Install
Free and open source. Review the report before installing into production agents.
Growth loop
Scenario-led draft for analytics-tracking, ready for a manual X post.
analytics-tracking: Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event t... 25.4K stars https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=x
Listing + install path for analytics-tracking: https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=x Install: npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Listing source
This listing was indexed from public sources and is not marked official until a maintainer claim is approved.
Attribution links to the public repository or creator profile. Creators can claim the listing to update ownership signals.
Claim this skillOwner claim
This Registry indexed listing is attributed to alirezarezvani but is not marked official yet. Claim it to add a verified owner signal and make future launch, install, and audit updates easier to trust.
Creator backlink kit
Show the canonical listing, current trust and audit signals, and real Agent-Proven evidence where developers evaluate the repository.
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking/audit)
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)alirezarezvani
@alirezarezvani
Share whether this skill looks useful for your agent workflow. Aggregated feedback improves rankings over time.
Sandbox only
Wazuh
Wazuh - The Open Source Security Platform. Unified XDR and SIEM protection for endpoints and cloud workloads.
16.3K StarsMaigret
🕵️♂️ Collect a dossier on a person by username from 3000+ sites
32.9K StarsNuclei
Nuclei is a fast, customizable vulnerability scanner powered by the global security community and built on a simple YAML-based DSL, enabling collaboration to tackle trending vulnerabilities on the internet. It helps you find vulnerabilities in your applications, APIs, networks, DNS, and cloud configurations.
29.2K StarsInfisical
Infisical is the open-source platform for secrets, certificates, and privileged access management.
27.4K StarsSandbox only
Install targets
Codex install prompt
Install the "analytics-tracking" agent skill from https://github.com/alirezarezvani/claude-skills/tree/main/.gemini/skills/analytics-tracking. Read its SKILL.md or equivalent instructions first, install only the files needed for this workspace, and summarize any required setup before using it. Skill purpose: Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality. Use when building a tracking plan from scratch, auditing existing analytics for gaps or errors, debugging missing events, or setting up GTM. Trigger keywords: GA4 setup, Google Tag Manager, GTM, event tracking, analytics implementation, conversion tracking, tracking plan, event taxonomy, custom dimensions, UTM tracking, analytics audit, missing events, tracking broken. NOT for analyzing marketing campaign data — use campaign-analytics for that. NOT for BI dashboards — use product-analytics for in-product event analysis. After the install attempt, report the result to https://www.openagentskill.com/api/agent/outcome with POST JSON {"event_id":"install_<unique-id>","skill_slug":"alirezarezvani-analytics-tracking","task":"Install analytics-tracking","agent":"codex","outcome":"success","install_used":true}. Replace event_id with a unique value and outcome with success or failed. Report success only after the skill is installed and a minimal verification passes.Supply asset profile
Code review, repo analysis, testing, CI, GitHub, DevOps, and developer workflow skills.
Scenario
Coding agents
I need a coding agent that can understand a repository, edit code, and review pull requests.
Agent fit
Claude Code + CLI + Codex
Codex, Claude Code, Cursor, CLI, or custom agents.
Install
Ready
npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Maintenance
fresh
8d since push
Risk
Needs review
Dependency or permission surface needs review
GitHub quality
25K
91/100 Quality · 82/100 Trust
Coverage tags
Review notes
Dependency or permission surface needs review · Permission surface may require sandboxing
Agent adoption scorecard
These scores combine public repository metadata, OpenAgentSkill review signals, maintenance freshness, and install readiness. They are a shortlist signal, not a replacement for human review.
Quality
ExcellentHigh-confidence pick with strong adoption and healthy maintenance signals.
Trust
Sandbox onlyUseful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.
Audit
Needs reviewA machine-readable review of install readiness, security metadata, maintenance, and adoption risk.
OpenAgentSkill Trust Score v5
Run only in a sandbox and compare close alternatives before using it for real work.
Stars
25K GitHub stars
Repo activity
25K stars, 3.6K forks
Maintenance
8d since push
License
MIT
Install
npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Install safety
Agent-readable metadata
Use this block or the embedded JSON to decide whether an agent should install this skill, choose an alternative, or ask for human review first.
Suited tasks
Suited agents
Install decision
Trust and risk
Outcome loop
Install command
npx skills add alirezarezvani/claude-skills --skill analytics-trackingDo not use when
Agent safety v2
Sparse or mixed signals. Useful for discovery, but not for autonomous installation.
Test manually in an isolated workspace and compare against safer alternatives.
high
Skill metadata references terminal, CLI, shell, subprocess, or command execution workflows.
medium
Skill may drive a browser or interact with web pages.
medium
Skill likely fetches remote pages, APIs, repositories, or external services.
medium
Skill may read or write project files, documents, generated artifacts, or local workspace state.
Agent resolve plan
The Resolve API returns the selected skill, alternatives, safety policy, audit notes, install target, and copy-paste prompt an agent can follow without scraping this page.
Open JSON
/api/agent/resolve?task=Use%20analytics-tracking%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Resolve text
/api/agent/resolve?task=Use%20analytics-tracking%20for%20an%20agent%20workflow&agent=codex&max_risk=medium&format=text
Install handoff
/api/skills/alirezarezvani-analytics-tracking/install
Agent should check
Copy prompt
Task: Use analytics-tracking in this workspace.
Resolve first: https://www.openagentskill.com/api/agent/resolve?task=Use%20analytics-tracking%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Review install handoff: https://www.openagentskill.com/api/skills/alirezarezvani-analytics-tracking/install
Install command: npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Before running it, summarize audit warnings, required permissions, and the fallback skill if install is risky.Agent handoff
Use the public install endpoint to fetch the command, safety checklist, target prompts, and canonical links for this skill.
Install handoff
/api/skills/alirezarezvani-analytics-tracking/install
LLM text format
/api/skills/alirezarezvani-analytics-tracking/install?format=text
Find alternatives
/api/skills/search?q=analytics-tracking&limit=3
Agent prompt
Use analytics-tracking for this task. Review https://www.openagentskill.com/api/skills/alirezarezvani-analytics-tracking/install, then install with: npx skills add alirezarezvani/claude-skills --skill analytics-trackingRegistry metadata
This page exposes the same decision, trust, audit, use-case, and install signals through the Registry API, so agents can rank this skill without scraping the UI.
Manifest
/api/registry/manifest/alirezarezvani-analytics-tracking
LLM text
/api/registry/manifest/alirezarezvani-analytics-tracking?format=text
Install alias
/api/registry/install/alirezarezvani-analytics-tracking
Recommend
/api/registry/recommend?task=Use%20analytics-tracking%20in%20an%20agent%20workflow&limit=3
Agent fit
Coding agents
Use-case tags
Platforms
Claude Code
Audit report
A machine-readable review of install readiness, security metadata, maintenance, and adoption risk.
Agent decision cockpit
Use this as a leading candidate, then validate the README and install path in your own agent stack.
Role in stack
Primary pick
Primary fit
Coding agents
Trust label
Production-ready
Install path
Command ready
Use when
Evidence
review first
Implementation path
Trust profile
Useful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.
GitHub adoption
PASS25K GitHub stars
Stars/forks activity
PASS25K stars, 3.6K forks; issue activity unavailable in current metadata
Recent maintenance
PASS8d since push
License clarity
PASSMIT
Good signals
Review before install
Recommended action
Run only in a sandbox and compare close alternatives before using it for real work.
Quality profile
High-confidence pick with strong adoption and healthy maintenance signals.
Workflow fit
Build and ship code
I need a coding agent that can understand a repository, edit code, and review pull requests.
Investigate faster
I need my agent to research a topic, compare sources, and produce a concise report.
Manage pipeline work
I need my agent to enrich leads, update CRM records, and prepare sales follow-ups.
Workflow fit
Inspect, patch, and verify code
A workflow for software agents that inspect repositories, review pull requests, generate tests, and turn findings into shippable patches.
Find, compare, and synthesize
A workflow for agents that gather sources, compare claims, summarize long material, and draft useful research briefs.
Design, build, test, and ship interfaces
A practical workflow for agents that turn product briefs or Figma designs into polished frontend code, review the result, test it in a browser, and prepare a safe deployment.
Alternative shortlist
Similar skills that may fit this task.
Wazuh - The Open Source Security Platform. Unified XDR and SIEM protection for endpoints and cloud workloads.
🕵️♂️ Collect a dossier on a person by username from 3000+ sites
Nuclei is a fast, customizable vulnerability scanner powered by the global security community and built on a simple YAML-based DSL, enabling collaboration to tackle trending vulnerabilities on the internet. It helps you find vulnerabilities in your applications, APIs, networks, DNS, and cloud configurations.
Infisical is the open-source platform for secrets, certificates, and privileged access management.
--- name: "analytics-tracking" description: "Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality. Use when building a tracking plan from scratch, auditing existing analytics for gaps or errors, debugging missing events, or setting up GTM. Trigger keywords: GA4 setup, Google Tag Manager, GTM, event tracking, analytics implementation, conversion tracking, tracking plan, event taxonomy, custom dimensions, UTM tracking, analytics audit, missing events, tracking broken. NOT for analyzing marketing campaign data — use campaign-analytics for that. NOT for BI dashboards — use product-analytics for in-product event analysis." license: MIT metadata: version: 1.0.0 author: Alireza Rezvani category: marketing updated: 2026-03-06 ---
# Analytics Tracking
You are an expert in analytics implementation. Your goal is to make sure every meaningful action in the customer journey is captured accurately, consistently, and in a way that can actually be used for decisions — not just for the sake of having data.
Bad tracking is worse than no tracking. Duplicate events, missing parameters, unconsented data, and broken conversions lead to decisions made on bad data. This skill is about building it right the first time, or finding what's broken and fixing it.
## Before Starting
**Check for context first:** If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for what's missing.
Gather this context:
### 1. Current State - Do you have GA4 and/or GTM already set up? If so, what's broken or missing? - What's your tech stack? (React SPA, Next.js, WordPress, custom, etc.) - Do you have a consent management platform (CMP)? Which one? - What events are you currently tracking (if any)?
### 2. Business Context - What are your primary conversion actions? (signup, purchase, lead form, free trial start) - What are your key micro-conversions? (pricing page view, feature discovery, demo request) - Do you run paid campaigns? (Google Ads, Meta, LinkedIn — affects conversion tracking needs)
### 3. Goals - Building from scratch, auditing existing, or debugging a specific issue? - Do you need cross-domain tracking? Multiple properties or subdomains? - Server-side tagging requirement? (GDPR-sensitive markets, performance concerns)
## How This Skill Works
### Mode 1: Set Up From Scratch No analytics in place — we'll build the tracking plan, implement GA4 and GTM, define the event taxonomy, and configure key events.
Start from the generator, then customize:
```bash python3 scripts/tracking_plan_generator.py # embedded sample → full tracking plan python3 scripts/tracking_plan_generator.py plan.json # your funnel definition python3 scripts/tracking_plan_generator.py --json # parseable JSON for pipelines ```
Its output (event taxonomy + parameters + GA4/GTM config checklist) is the working draft for the Event Taxonomy Design section below — review every generated event name against the naming convention before implementing.
### Mode 2: Audit Existing Tracking Tracking exists but you don't trust the data, coverage is incomplete, or you're adding new goals. We'll audit what's there, gap-fill, and clean up.
### Mode 3: Debug Tracking Issues Specific events are missing, conversion numbers don't add up, or GTM preview shows events firing but GA4 isn't recording them. Structured debugging workflow.
---
## Event Taxonomy Design
Get this right before touching GA4 or GTM. Retrofitting taxonomy is painful.
### Naming Convention
**Format:** `object_action` (snake_case, verb at the end)
| ✅ Good | ❌ Bad | |--------|--------| | `form_submit` | `submitForm`, `FormSubmitted`, `form-submit` | | `plan_selected` | `clickPricingPlan`, `selected_plan`, `PlanClick` | | `video_started` | `videoPlay`, `StartVideo`, `VideoStart` | | `checkout_completed` | `purchase`, `buy_complete`, `checkoutDone` |
**Rules:** - Always `noun_verb` not `verb_noun` - Lowercase + underscores only — no camelCase, no hyphens - Be specific enough to be unambiguous, not so verbose it's a sentence - Consistent tense: `_started`, `_completed`, `_failed` (not mix of past/present)
### Standard Parameters
Every event should include these where applicable:
| Parameter | Type | Example | Purpose | |-----------|------|---------|---------| | `page_location` | string | `https://app.co/pricing` | Auto-captured by GA4 | | `page_title` | string | `Pricing - Acme` | Auto-captured by GA4 | | `user_id` | string | `usr_abc123` | Link to your CRM/DB | | `plan_name` | string | `Professional` | Segment by plan | | `value` | number | `99` | Revenue/order value | | `currency` | string | `USD` | Required with value | | `content_group` | string | `onboarding` | Group pages/flows | | `method` | string | `google_oauth` | How (signup method, etc.) |
### Event Taxonomy for SaaS
**Core funnel events:** ``` visitor_arrived (page view — automatic in GA4) signup_started (user clicked "Sign up") signup_completed (account created successfully) trial_started (free trial began) onboarding_step_completed (param: step_name, step_number) feature_activated (param: feature_name) plan_selected (param: plan_name, billing_period) checkout_started (param: value, currency, plan_name) checkout_completed (param: value, currency, transaction_id) subscription_cancelled (param: cancel_reason, plan_name) ```
**Micro-conversion events:** ``` pricing_viewed demo_requested (param: source) form_submitted (param: form_name, form_location) content_downloaded (param: content_name, content_type) video_started (param: video_title) video_completed (param: video_title, percent_watched) chat_opened help_article_viewed (param: article_name) ```
See [references/event-taxonomy-guide.md](references/event-taxonomy-guide.md) for the full taxonomy catalog with custom dimension recommendations.
---
## GA4 Setup
### Data Stream Configuration
1. **Create property** in GA4 → Admin → Properties → Create 2. **Add web data stream** with your domain 3. **Enhanced Measurement** — enable all, then review: - ✅ Page views (keep) - ✅ Scrolls (keep) - ✅ Outbound clicks (keep) - ✅ Site search (keep if you have search) - ⚠️ Video engagement (disable if you'll track videos manually — avoid duplicates) - ⚠️ File downloads (disable if you'll track these in GTM for better parameters) 4. **Configure domains** — add all subdomains used in your funnel
### Custom Events in GA4
For any event not auto-collected, create it in GTM (preferred) or via gtag directly:
**Via gtag:** ```javascript gtag('event', 'signup_completed', { method: 'email', user_id: 'usr_abc123', plan_name: "trial" }); ```
**Via GTM data layer (preferred — see GTM section):** ```javascript window.dataLayer.push({ event: 'signup_completed', signup_method: 'email', user_id: 'usr_abc123' }); ```
### Key Events Configuration
Mark these events as key events in GA4 → Admin → Key events (GA4 renamed "Conversions" to "Key events" in March 2024 — "conversions" now refers only to Google Ads conversion actions): - `signup_completed` - `checkout_completed` - `demo_requested` - `trial_started` (if separate from signup)
**Rules:** - Max 30 key events per property — curate, don't mark everything - Key events are retroactive in GA4 — turning one on applies to 6 months of history - Don't mark micro-conversions as key events unless you're also optimizing ad campaigns for them
---
## Google Tag Manager Setup
### Container Structure
``` GTM Container ├── Tags │ ├── GA4 Configuration (fires on all pages) │ ├── GA4 Event — [event_name] (one tag per event) │ ├── Google Ads Conversion (per conversion action) │ └── Meta Pixel (if running Meta ads) ├── Triggers │ ├── All Pages │ ├── DOM Ready │ ├── Data Layer Event — [event_name] │ └── Custom Element Click — [selector] └── Variables ├── Data Layer Variables (dlv — for each dL key) ├── Constant — GA4 Measurement ID └── JavaScript Variables (computed values) ```
### Tag Patterns for SaaS
**Pattern 1: Data Layer Push (most reliable)**
Your app pushes to dataLayer → GTM picks it up → sends to GA4.
```javascript // In your app code (on event): window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: 'signup_completed', signup_method: 'email', user_id: userId, plan_name: "trial" }); ```
``` GTM Tag: GA4 Event Event Name: {{DLV - event}} OR hardcode "signup_completed" Parameters: signup_method: {{DLV - signup_method}} user_id: {{DLV - user_id}} plan_name: "dlv-plan-name" Trigger: Custom Event - "signup_completed" ```
**Pattern 2: CSS Selector Click**
For events triggered by UI elements without app-level hooks.
``` GTM Trigger: Type: Click - All Elements Conditions: Click Element matches CSS selector [data-track="demo-cta"] GTM Tag: GA4 Event Event Name: demo_requested Parameters: page_location: {{Page URL}} ```
See [references/gtm-patterns.md](references/gtm-patterns.md) for full configuration templates.
---
## Conversion Tracking: Platform-Specific
### Google Ads
1. Create conversion action in Google Ads → Tools → Conversions 2. Import GA4 conversions (recommended — single source of truth) OR use the Google Ads tag 3. Set attribution model: **Data-driven** (if >50 conversions/month), otherwise **Last click** 4. Conversion window: 30 days for lead gen, 90 days for high-consideration purchases
### Meta (Facebook/Instagram) Pixel
1. Install Meta Pixel base code via GTM 2. Standard events: `PageView`, `Lead`, `CompleteRegistration`, `Purchase` 3. Conversions API (CAPI) strongly recommended — client-side pixel loses ~30% of conversions due to ad blockers and iOS 4. CAPI requires server-side implementation (Meta's docs or GTM server-side)
---
## Cross-Platform Tracking
### UTM Strategy
Enforce strict UTM conventions or your channel data becomes noise.
| Parameter | Convention | Example | |-----------|-----------|---------| | `utm_source` | Platform name (lowercase) | `google`, `linkedin`, `newsletter` | | `utm_medium` | Traffic type | `cpc`, `email`, `social`, `organic` | | `utm_campaign` | Campaign ID or name | `q1-trial-push`, `brand-awareness` | | `utm_content` | Ad/creative variant | `hero-cta-blue`, `text-link` | | `utm_term` | Paid keyword | `saas-analytics` |
**Rule:** Never tag organic or direct traffic with UTMs. UTMs override GA4's automatic source/medium attribution.
### Attribution Windows
| Platform | Default Window | Recommended for SaaS | |---------|---------------|---------------------| | GA4 | 30 days | 30-90 days depending on sales cycle | | Google Ads | 30 days | 30 days (trial), 90 days (enterprise) | | Meta | 7-day click, 1-day view | 7-day click only | | LinkedIn | 30 days | 30 days |
### Cross-Domain Tracking
For funnels that cross domains (e.g., `acme.com` → `app.acme.com`):
1. In GA4 → Admin → Data Streams → Configure tag settings → List unwanted referrals → Add both domains 2. In GTM → GA4 Configuration tag → Cross-domain measurement → Add both domains 3. Test: visit domain A, click link to domain B, check GA4 DebugView — session should not restart
---
## Data Quality
### Deduplication
**Events firing twice?** Common causes: - GTM tag + hardcoded gtag both firing - Enhanced Measurement + custom GTM tag for same event - SPA router firing pageview on every route change AND GTM page view tag
Fix: Audit GTM Preview for double-fires. Check Network tab in DevTools for duplicate hits.
### Bot Filtering
GA4 filters known bots automatically. For internal traffic: 1. GA4 → Admin → Data Filters → Internal Traffic 2. Add your office IPs and developer IPs 3. Enable filter (starts as testing mode — activate it)
### Consent Management Impact
Under GDPR/ePrivacy, analytics may require consent. Plan for this:
Source provenance
Decision snapshot
25,373 GitHub stars
Audit
Install and adoption review
Agent-proven evidence
Outcome reports after resolve, review, install, and one narrow run.
No agent outcome data yet. The first agent run can report success, setup needs, risk blocks, failure, or not-relevant through /api/agent/outcome.
Install
Free and open source. Review the report before installing into production agents.
Growth loop
Scenario-led draft for analytics-tracking, ready for a manual X post.
analytics-tracking: Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event t... 25.4K stars https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=x
Listing + install path for analytics-tracking: https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=x Install: npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Listing source
This listing was indexed from public sources and is not marked official until a maintainer claim is approved.
Attribution links to the public repository or creator profile. Creators can claim the listing to update ownership signals.
Claim this skillOwner claim
This Registry indexed listing is attributed to alirezarezvani but is not marked official yet. Claim it to add a verified owner signal and make future launch, install, and audit updates easier to trust.
Creator backlink kit
Show the canonical listing, current trust and audit signals, and real Agent-Proven evidence where developers evaluate the repository.
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking/audit)
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)alirezarezvani
@alirezarezvani
Share whether this skill looks useful for your agent workflow. Aggregated feedback improves rankings over time.
Sandbox only
Wazuh
Wazuh - The Open Source Security Platform. Unified XDR and SIEM protection for endpoints and cloud workloads.
16.3K StarsMaigret
🕵️♂️ Collect a dossier on a person by username from 3000+ sites
32.9K StarsNuclei
Nuclei is a fast, customizable vulnerability scanner powered by the global security community and built on a simple YAML-based DSL, enabling collaboration to tackle trending vulnerabilities on the internet. It helps you find vulnerabilities in your applications, APIs, networks, DNS, and cloud configurations.
29.2K StarsInfisical
Infisical is the open-source platform for secrets, certificates, and privileged access management.
27.4K StarsSandbox only
Install targets
Codex install prompt
Install the "analytics-tracking" agent skill from https://github.com/alirezarezvani/claude-skills/tree/main/.gemini/skills/analytics-tracking. Read its SKILL.md or equivalent instructions first, install only the files needed for this workspace, and summarize any required setup before using it. Skill purpose: Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality. Use when building a tracking plan from scratch, auditing existing analytics for gaps or errors, debugging missing events, or setting up GTM. Trigger keywords: GA4 setup, Google Tag Manager, GTM, event tracking, analytics implementation, conversion tracking, tracking plan, event taxonomy, custom dimensions, UTM tracking, analytics audit, missing events, tracking broken. NOT for analyzing marketing campaign data — use campaign-analytics for that. NOT for BI dashboards — use product-analytics for in-product event analysis. After the install attempt, report the result to https://www.openagentskill.com/api/agent/outcome with POST JSON {"event_id":"install_<unique-id>","skill_slug":"alirezarezvani-analytics-tracking","task":"Install analytics-tracking","agent":"codex","outcome":"success","install_used":true}. Replace event_id with a unique value and outcome with success or failed. Report success only after the skill is installed and a minimal verification passes.Supply asset profile
Code review, repo analysis, testing, CI, GitHub, DevOps, and developer workflow skills.
Scenario
Coding agents
I need a coding agent that can understand a repository, edit code, and review pull requests.
Agent fit
Claude Code + CLI + Codex
Codex, Claude Code, Cursor, CLI, or custom agents.
Install
Ready
npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Maintenance
fresh
8d since push
Risk
Needs review
Dependency or permission surface needs review
GitHub quality
25K
91/100 Quality · 82/100 Trust
Coverage tags
Review notes
Dependency or permission surface needs review · Permission surface may require sandboxing
Agent adoption scorecard
These scores combine public repository metadata, OpenAgentSkill review signals, maintenance freshness, and install readiness. They are a shortlist signal, not a replacement for human review.
Quality
ExcellentHigh-confidence pick with strong adoption and healthy maintenance signals.
Trust
Sandbox onlyUseful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.
Audit
Needs reviewA machine-readable review of install readiness, security metadata, maintenance, and adoption risk.
OpenAgentSkill Trust Score v5
Run only in a sandbox and compare close alternatives before using it for real work.
Stars
25K GitHub stars
Repo activity
25K stars, 3.6K forks
Maintenance
8d since push
License
MIT
Install
npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Install safety
Agent-readable metadata
Use this block or the embedded JSON to decide whether an agent should install this skill, choose an alternative, or ask for human review first.
Suited tasks
Suited agents
Install decision
Trust and risk
Outcome loop
Install command
npx skills add alirezarezvani/claude-skills --skill analytics-trackingDo not use when
Agent safety v2
Sparse or mixed signals. Useful for discovery, but not for autonomous installation.
Test manually in an isolated workspace and compare against safer alternatives.
high
Skill metadata references terminal, CLI, shell, subprocess, or command execution workflows.
medium
Skill may drive a browser or interact with web pages.
medium
Skill likely fetches remote pages, APIs, repositories, or external services.
medium
Skill may read or write project files, documents, generated artifacts, or local workspace state.
Agent resolve plan
The Resolve API returns the selected skill, alternatives, safety policy, audit notes, install target, and copy-paste prompt an agent can follow without scraping this page.
Open JSON
/api/agent/resolve?task=Use%20analytics-tracking%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Resolve text
/api/agent/resolve?task=Use%20analytics-tracking%20for%20an%20agent%20workflow&agent=codex&max_risk=medium&format=text
Install handoff
/api/skills/alirezarezvani-analytics-tracking/install
Agent should check
Copy prompt
Task: Use analytics-tracking in this workspace.
Resolve first: https://www.openagentskill.com/api/agent/resolve?task=Use%20analytics-tracking%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Review install handoff: https://www.openagentskill.com/api/skills/alirezarezvani-analytics-tracking/install
Install command: npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Before running it, summarize audit warnings, required permissions, and the fallback skill if install is risky.Agent handoff
Use the public install endpoint to fetch the command, safety checklist, target prompts, and canonical links for this skill.
Install handoff
/api/skills/alirezarezvani-analytics-tracking/install
LLM text format
/api/skills/alirezarezvani-analytics-tracking/install?format=text
Find alternatives
/api/skills/search?q=analytics-tracking&limit=3
Agent prompt
Use analytics-tracking for this task. Review https://www.openagentskill.com/api/skills/alirezarezvani-analytics-tracking/install, then install with: npx skills add alirezarezvani/claude-skills --skill analytics-trackingRegistry metadata
This page exposes the same decision, trust, audit, use-case, and install signals through the Registry API, so agents can rank this skill without scraping the UI.
Manifest
/api/registry/manifest/alirezarezvani-analytics-tracking
LLM text
/api/registry/manifest/alirezarezvani-analytics-tracking?format=text
Install alias
/api/registry/install/alirezarezvani-analytics-tracking
Recommend
/api/registry/recommend?task=Use%20analytics-tracking%20in%20an%20agent%20workflow&limit=3
Agent fit
Coding agents
Use-case tags
Platforms
Claude Code
Audit report
A machine-readable review of install readiness, security metadata, maintenance, and adoption risk.
Agent decision cockpit
Use this as a leading candidate, then validate the README and install path in your own agent stack.
Role in stack
Primary pick
Primary fit
Coding agents
Trust label
Production-ready
Install path
Command ready
Use when
Evidence
review first
Implementation path
Trust profile
Useful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.
GitHub adoption
PASS25K GitHub stars
Stars/forks activity
PASS25K stars, 3.6K forks; issue activity unavailable in current metadata
Recent maintenance
PASS8d since push
License clarity
PASSMIT
Good signals
Review before install
Recommended action
Run only in a sandbox and compare close alternatives before using it for real work.
Quality profile
High-confidence pick with strong adoption and healthy maintenance signals.
Workflow fit
Build and ship code
I need a coding agent that can understand a repository, edit code, and review pull requests.
Investigate faster
I need my agent to research a topic, compare sources, and produce a concise report.
Manage pipeline work
I need my agent to enrich leads, update CRM records, and prepare sales follow-ups.
Workflow fit
Inspect, patch, and verify code
A workflow for software agents that inspect repositories, review pull requests, generate tests, and turn findings into shippable patches.
Find, compare, and synthesize
A workflow for agents that gather sources, compare claims, summarize long material, and draft useful research briefs.
Design, build, test, and ship interfaces
A practical workflow for agents that turn product briefs or Figma designs into polished frontend code, review the result, test it in a browser, and prepare a safe deployment.
Alternative shortlist
Similar skills that may fit this task.
Wazuh - The Open Source Security Platform. Unified XDR and SIEM protection for endpoints and cloud workloads.
🕵️♂️ Collect a dossier on a person by username from 3000+ sites
Nuclei is a fast, customizable vulnerability scanner powered by the global security community and built on a simple YAML-based DSL, enabling collaboration to tackle trending vulnerabilities on the internet. It helps you find vulnerabilities in your applications, APIs, networks, DNS, and cloud configurations.
Infisical is the open-source platform for secrets, certificates, and privileged access management.
--- name: "analytics-tracking" description: "Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality. Use when building a tracking plan from scratch, auditing existing analytics for gaps or errors, debugging missing events, or setting up GTM. Trigger keywords: GA4 setup, Google Tag Manager, GTM, event tracking, analytics implementation, conversion tracking, tracking plan, event taxonomy, custom dimensions, UTM tracking, analytics audit, missing events, tracking broken. NOT for analyzing marketing campaign data — use campaign-analytics for that. NOT for BI dashboards — use product-analytics for in-product event analysis." license: MIT metadata: version: 1.0.0 author: Alireza Rezvani category: marketing updated: 2026-03-06 ---
# Analytics Tracking
You are an expert in analytics implementation. Your goal is to make sure every meaningful action in the customer journey is captured accurately, consistently, and in a way that can actually be used for decisions — not just for the sake of having data.
Bad tracking is worse than no tracking. Duplicate events, missing parameters, unconsented data, and broken conversions lead to decisions made on bad data. This skill is about building it right the first time, or finding what's broken and fixing it.
## Before Starting
**Check for context first:** If `.claude/product-marketing-context.md` exists, read it before asking questions. Use that context and only ask for what's missing.
Gather this context:
### 1. Current State - Do you have GA4 and/or GTM already set up? If so, what's broken or missing? - What's your tech stack? (React SPA, Next.js, WordPress, custom, etc.) - Do you have a consent management platform (CMP)? Which one? - What events are you currently tracking (if any)?
### 2. Business Context - What are your primary conversion actions? (signup, purchase, lead form, free trial start) - What are your key micro-conversions? (pricing page view, feature discovery, demo request) - Do you run paid campaigns? (Google Ads, Meta, LinkedIn — affects conversion tracking needs)
### 3. Goals - Building from scratch, auditing existing, or debugging a specific issue? - Do you need cross-domain tracking? Multiple properties or subdomains? - Server-side tagging requirement? (GDPR-sensitive markets, performance concerns)
## How This Skill Works
### Mode 1: Set Up From Scratch No analytics in place — we'll build the tracking plan, implement GA4 and GTM, define the event taxonomy, and configure key events.
Start from the generator, then customize:
```bash python3 scripts/tracking_plan_generator.py # embedded sample → full tracking plan python3 scripts/tracking_plan_generator.py plan.json # your funnel definition python3 scripts/tracking_plan_generator.py --json # parseable JSON for pipelines ```
Its output (event taxonomy + parameters + GA4/GTM config checklist) is the working draft for the Event Taxonomy Design section below — review every generated event name against the naming convention before implementing.
### Mode 2: Audit Existing Tracking Tracking exists but you don't trust the data, coverage is incomplete, or you're adding new goals. We'll audit what's there, gap-fill, and clean up.
### Mode 3: Debug Tracking Issues Specific events are missing, conversion numbers don't add up, or GTM preview shows events firing but GA4 isn't recording them. Structured debugging workflow.
---
## Event Taxonomy Design
Get this right before touching GA4 or GTM. Retrofitting taxonomy is painful.
### Naming Convention
**Format:** `object_action` (snake_case, verb at the end)
| ✅ Good | ❌ Bad | |--------|--------| | `form_submit` | `submitForm`, `FormSubmitted`, `form-submit` | | `plan_selected` | `clickPricingPlan`, `selected_plan`, `PlanClick` | | `video_started` | `videoPlay`, `StartVideo`, `VideoStart` | | `checkout_completed` | `purchase`, `buy_complete`, `checkoutDone` |
**Rules:** - Always `noun_verb` not `verb_noun` - Lowercase + underscores only — no camelCase, no hyphens - Be specific enough to be unambiguous, not so verbose it's a sentence - Consistent tense: `_started`, `_completed`, `_failed` (not mix of past/present)
### Standard Parameters
Every event should include these where applicable:
| Parameter | Type | Example | Purpose | |-----------|------|---------|---------| | `page_location` | string | `https://app.co/pricing` | Auto-captured by GA4 | | `page_title` | string | `Pricing - Acme` | Auto-captured by GA4 | | `user_id` | string | `usr_abc123` | Link to your CRM/DB | | `plan_name` | string | `Professional` | Segment by plan | | `value` | number | `99` | Revenue/order value | | `currency` | string | `USD` | Required with value | | `content_group` | string | `onboarding` | Group pages/flows | | `method` | string | `google_oauth` | How (signup method, etc.) |
### Event Taxonomy for SaaS
**Core funnel events:** ``` visitor_arrived (page view — automatic in GA4) signup_started (user clicked "Sign up") signup_completed (account created successfully) trial_started (free trial began) onboarding_step_completed (param: step_name, step_number) feature_activated (param: feature_name) plan_selected (param: plan_name, billing_period) checkout_started (param: value, currency, plan_name) checkout_completed (param: value, currency, transaction_id) subscription_cancelled (param: cancel_reason, plan_name) ```
**Micro-conversion events:** ``` pricing_viewed demo_requested (param: source) form_submitted (param: form_name, form_location) content_downloaded (param: content_name, content_type) video_started (param: video_title) video_completed (param: video_title, percent_watched) chat_opened help_article_viewed (param: article_name) ```
See [references/event-taxonomy-guide.md](references/event-taxonomy-guide.md) for the full taxonomy catalog with custom dimension recommendations.
---
## GA4 Setup
### Data Stream Configuration
1. **Create property** in GA4 → Admin → Properties → Create 2. **Add web data stream** with your domain 3. **Enhanced Measurement** — enable all, then review: - ✅ Page views (keep) - ✅ Scrolls (keep) - ✅ Outbound clicks (keep) - ✅ Site search (keep if you have search) - ⚠️ Video engagement (disable if you'll track videos manually — avoid duplicates) - ⚠️ File downloads (disable if you'll track these in GTM for better parameters) 4. **Configure domains** — add all subdomains used in your funnel
### Custom Events in GA4
For any event not auto-collected, create it in GTM (preferred) or via gtag directly:
**Via gtag:** ```javascript gtag('event', 'signup_completed', { method: 'email', user_id: 'usr_abc123', plan_name: "trial" }); ```
**Via GTM data layer (preferred — see GTM section):** ```javascript window.dataLayer.push({ event: 'signup_completed', signup_method: 'email', user_id: 'usr_abc123' }); ```
### Key Events Configuration
Mark these events as key events in GA4 → Admin → Key events (GA4 renamed "Conversions" to "Key events" in March 2024 — "conversions" now refers only to Google Ads conversion actions): - `signup_completed` - `checkout_completed` - `demo_requested` - `trial_started` (if separate from signup)
**Rules:** - Max 30 key events per property — curate, don't mark everything - Key events are retroactive in GA4 — turning one on applies to 6 months of history - Don't mark micro-conversions as key events unless you're also optimizing ad campaigns for them
---
## Google Tag Manager Setup
### Container Structure
``` GTM Container ├── Tags │ ├── GA4 Configuration (fires on all pages) │ ├── GA4 Event — [event_name] (one tag per event) │ ├── Google Ads Conversion (per conversion action) │ └── Meta Pixel (if running Meta ads) ├── Triggers │ ├── All Pages │ ├── DOM Ready │ ├── Data Layer Event — [event_name] │ └── Custom Element Click — [selector] └── Variables ├── Data Layer Variables (dlv — for each dL key) ├── Constant — GA4 Measurement ID └── JavaScript Variables (computed values) ```
### Tag Patterns for SaaS
**Pattern 1: Data Layer Push (most reliable)**
Your app pushes to dataLayer → GTM picks it up → sends to GA4.
```javascript // In your app code (on event): window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: 'signup_completed', signup_method: 'email', user_id: userId, plan_name: "trial" }); ```
``` GTM Tag: GA4 Event Event Name: {{DLV - event}} OR hardcode "signup_completed" Parameters: signup_method: {{DLV - signup_method}} user_id: {{DLV - user_id}} plan_name: "dlv-plan-name" Trigger: Custom Event - "signup_completed" ```
**Pattern 2: CSS Selector Click**
For events triggered by UI elements without app-level hooks.
``` GTM Trigger: Type: Click - All Elements Conditions: Click Element matches CSS selector [data-track="demo-cta"] GTM Tag: GA4 Event Event Name: demo_requested Parameters: page_location: {{Page URL}} ```
See [references/gtm-patterns.md](references/gtm-patterns.md) for full configuration templates.
---
## Conversion Tracking: Platform-Specific
### Google Ads
1. Create conversion action in Google Ads → Tools → Conversions 2. Import GA4 conversions (recommended — single source of truth) OR use the Google Ads tag 3. Set attribution model: **Data-driven** (if >50 conversions/month), otherwise **Last click** 4. Conversion window: 30 days for lead gen, 90 days for high-consideration purchases
### Meta (Facebook/Instagram) Pixel
1. Install Meta Pixel base code via GTM 2. Standard events: `PageView`, `Lead`, `CompleteRegistration`, `Purchase` 3. Conversions API (CAPI) strongly recommended — client-side pixel loses ~30% of conversions due to ad blockers and iOS 4. CAPI requires server-side implementation (Meta's docs or GTM server-side)
---
## Cross-Platform Tracking
### UTM Strategy
Enforce strict UTM conventions or your channel data becomes noise.
| Parameter | Convention | Example | |-----------|-----------|---------| | `utm_source` | Platform name (lowercase) | `google`, `linkedin`, `newsletter` | | `utm_medium` | Traffic type | `cpc`, `email`, `social`, `organic` | | `utm_campaign` | Campaign ID or name | `q1-trial-push`, `brand-awareness` | | `utm_content` | Ad/creative variant | `hero-cta-blue`, `text-link` | | `utm_term` | Paid keyword | `saas-analytics` |
**Rule:** Never tag organic or direct traffic with UTMs. UTMs override GA4's automatic source/medium attribution.
### Attribution Windows
| Platform | Default Window | Recommended for SaaS | |---------|---------------|---------------------| | GA4 | 30 days | 30-90 days depending on sales cycle | | Google Ads | 30 days | 30 days (trial), 90 days (enterprise) | | Meta | 7-day click, 1-day view | 7-day click only | | LinkedIn | 30 days | 30 days |
### Cross-Domain Tracking
For funnels that cross domains (e.g., `acme.com` → `app.acme.com`):
1. In GA4 → Admin → Data Streams → Configure tag settings → List unwanted referrals → Add both domains 2. In GTM → GA4 Configuration tag → Cross-domain measurement → Add both domains 3. Test: visit domain A, click link to domain B, check GA4 DebugView — session should not restart
---
## Data Quality
### Deduplication
**Events firing twice?** Common causes: - GTM tag + hardcoded gtag both firing - Enhanced Measurement + custom GTM tag for same event - SPA router firing pageview on every route change AND GTM page view tag
Fix: Audit GTM Preview for double-fires. Check Network tab in DevTools for duplicate hits.
### Bot Filtering
GA4 filters known bots automatically. For internal traffic: 1. GA4 → Admin → Data Filters → Internal Traffic 2. Add your office IPs and developer IPs 3. Enable filter (starts as testing mode — activate it)
### Consent Management Impact
Under GDPR/ePrivacy, analytics may require consent. Plan for this:
Source provenance
Decision snapshot
25,373 GitHub stars
Audit
Install and adoption review
Agent-proven evidence
Outcome reports after resolve, review, install, and one narrow run.
No agent outcome data yet. The first agent run can report success, setup needs, risk blocks, failure, or not-relevant through /api/agent/outcome.
Install
Free and open source. Review the report before installing into production agents.
Growth loop
Scenario-led draft for analytics-tracking, ready for a manual X post.
analytics-tracking: Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event t... 25.4K stars https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=x
Listing + install path for analytics-tracking: https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=x Install: npx skills add alirezarezvani/claude-skills --skill analytics-tracking
Listing source
This listing was indexed from public sources and is not marked official until a maintainer claim is approved.
Attribution links to the public repository or creator profile. Creators can claim the listing to update ownership signals.
Claim this skillOwner claim
This Registry indexed listing is attributed to alirezarezvani but is not marked official yet. Claim it to add a verified owner signal and make future launch, install, and audit updates easier to trust.
Creator backlink kit
Show the canonical listing, current trust and audit signals, and real Agent-Proven evidence where developers evaluate the repository.
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking/audit)
[](https://www.openagentskill.com/skills/alirezarezvani-analytics-tracking?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)alirezarezvani
@alirezarezvani
Share whether this skill looks useful for your agent workflow. Aggregated feedback improves rankings over time.
Sandbox only
Wazuh
Wazuh - The Open Source Security Platform. Unified XDR and SIEM protection for endpoints and cloud workloads.
16.3K StarsMaigret
🕵️♂️ Collect a dossier on a person by username from 3000+ sites
32.9K StarsNuclei
Nuclei is a fast, customizable vulnerability scanner powered by the global security community and built on a simple YAML-based DSL, enabling collaboration to tackle trending vulnerabilities on the internet. It helps you find vulnerabilities in your applications, APIs, networks, DNS, and cloud configurations.
29.2K StarsInfisical
Infisical is the open-source platform for secrets, certificates, and privileged access management.
27.4K StarsPermission surface
shell or command execution, filesystem or document access
Agent outcomes
No agent outcome data yet
Docs
Strong README/SKILL.md context
Risk summary
Install readiness
Permission surface
shell or command execution, filesystem or document access
Agent outcomes
No agent outcome data yet
Docs
Strong README/SKILL.md context
Risk summary
Install readiness
Permission surface
shell or command execution, filesystem or document access
Agent outcomes
No agent outcome data yet
Docs
Strong README/SKILL.md context
Risk summary
Install readiness
Permission surface
shell or command execution, filesystem or document access
Agent outcomes
No agent outcome data yet
Docs
Strong README/SKILL.md context
Risk summary
Install readiness