Loading source
Pulling the file list, source metadata, and syntax-aware rendering for this listing.
Source from repo
Sets up, audits, and improves analytics tracking with GA4, GTM, Mixpanel, Segment, and UTM parameters.
Files
Skill
Size
Entrypoint
Format
Open file
Syntax-highlighted preview of this file as included in the skill package.
SKILL.md
1---2name: analytics-tracking3description: When the user wants to set up, improve, or audit analytics tracking and measurement. Also use when the user mentions "set up tracking," "GA4," "Google Analytics," "conversion tracking," "event tracking," "UTM parameters," "tag manager," "GTM," "analytics implementation," "tracking plan," "how do I measure this," "track conversions," "attribution," "Mixpanel," "Segment," "are my events firing," or "analytics isn't working." Use this whenever someone asks how to know if something is working or wants to measure marketing results. For A/B test measurement, see ab-test-setup.4metadata:5version: 1.1.06---78# Analytics Tracking910You are an expert in analytics implementation and measurement. Your goal is to help set up tracking that provides actionable insights for marketing and product decisions.1112## Initial Assessment1314**Check for product marketing context first:**15If `.agents/product-marketing-context.md` exists (or `.claude/product-marketing-context.md` in older setups), read it before asking questions. Use that context and only ask for information not already covered or specific to this task.1617Before implementing tracking, understand:18191. **Business Context** - What decisions will this data inform? What are key conversions?202. **Current State** - What tracking exists? What tools are in use?213. **Technical Context** - What's the tech stack? Any privacy/compliance requirements?2223---2425## Core Principles2627### 1. Track for Decisions, Not Data28- Every event should inform a decision29- Avoid vanity metrics30- Quality > quantity of events3132### 2. Start with the Questions33- What do you need to know?34- What actions will you take based on this data?35- Work backwards to what you need to track3637### 3. Name Things Consistently38- Naming conventions matter39- Establish patterns before implementing40- Document everything4142### 4. Maintain Data Quality43- Validate implementation44- Monitor for issues45- Clean data > more data4647---4849## Tracking Plan Framework5051### Structure5253```54Event Name | Category | Properties | Trigger | Notes55---------- | -------- | ---------- | ------- | -----56```5758### Event Types5960| Type | Examples |61|------|----------|62| Pageviews | Automatic, enhanced with metadata |63| User Actions | Button clicks, form submissions, feature usage |64| System Events | Signup completed, purchase, subscription changed |65| Custom Conversions | Goal completions, funnel stages |6667**For comprehensive event lists**: See [references/event-library.md](references/event-library.md)6869---7071## Event Naming Conventions7273### Recommended Format: Object-Action7475```76signup_completed77button_clicked78form_submitted79article_read80checkout_payment_completed81```8283### Best Practices84- Lowercase with underscores85- Be specific: `cta_hero_clicked` vs. `button_clicked`86- Include context in properties, not event name87- Avoid spaces and special characters88- Document decisions8990---9192## Essential Events9394### Marketing Site9596| Event | Properties |97|-------|------------|98| cta_clicked | button_text, location |99| form_submitted | form_type |100| signup_completed | method, source |101| demo_requested | - |102103### Product/App104105| Event | Properties |106|-------|------------|107| onboarding_step_completed | step_number, step_name |108| feature_used | feature_name |109| purchase_completed | plan, value |110| subscription_cancelled | reason |111112**For full event library by business type**: See [references/event-library.md](references/event-library.md)113114---115116## Event Properties117118### Standard Properties119120| Category | Properties |121|----------|------------|122| Page | page_title, page_location, page_referrer |123| User | user_id, user_type, account_id, plan_type |124| Campaign | source, medium, campaign, content, term |125| Product | product_id, product_name, category, price |126127### Best Practices128- Use consistent property names129- Include relevant context130- Don't duplicate automatic properties131- Avoid PII in properties132133---134135## GA4 Implementation136137### Quick Setup1381391. Create GA4 property and data stream1402. Install gtag.js or GTM1413. Enable enhanced measurement1424. Configure custom events1435. Mark conversions in Admin144145### Custom Event Example146147```javascript148gtag('event', 'signup_completed', {149'method': 'email',150'plan': 'free'151});152```153154**For detailed GA4 implementation**: See [references/ga4-implementation.md](references/ga4-implementation.md)155156---157158## Google Tag Manager159160### Container Structure161162| Component | Purpose |163|-----------|---------|164| Tags | Code that executes (GA4, pixels) |165| Triggers | When tags fire (page view, click) |166| Variables | Dynamic values (click text, data layer) |167168### Data Layer Pattern169170```javascript171dataLayer.push({172'event': 'form_submitted',173'form_name': 'contact',174'form_location': 'footer'175});176```177178**For detailed GTM implementation**: See [references/gtm-implementation.md](references/gtm-implementation.md)179180---181182## UTM Parameter Strategy183184### Standard Parameters185186| Parameter | Purpose | Example |187|-----------|---------|---------|188| utm_source | Traffic source | google, newsletter |189| utm_medium | Marketing medium | cpc, email, social |190| utm_campaign | Campaign name | spring_sale |191| utm_content | Differentiate versions | hero_cta |192| utm_term | Paid search keywords | running+shoes |193194### Naming Conventions195- Lowercase everything196- Use underscores or hyphens consistently197- Be specific but concise: `blog_footer_cta`, not `cta1`198- Document all UTMs in a spreadsheet199200---201202## Debugging and Validation203204### Testing Tools205206| Tool | Use For |207|------|---------|208| GA4 DebugView | Real-time event monitoring |209| GTM Preview Mode | Test triggers before publish |210| Browser Extensions | Tag Assistant, dataLayer Inspector |211212### Validation Checklist213214- [ ] Events firing on correct triggers215- [ ] Property values populating correctly216- [ ] No duplicate events217- [ ] Works across browsers and mobile218- [ ] Conversions recorded correctly219- [ ] No PII leaking220221### Common Issues222223| Issue | Check |224|-------|-------|225| Events not firing | Trigger config, GTM loaded |226| Wrong values | Variable path, data layer structure |227| Duplicate events | Multiple containers, trigger firing twice |228229---230231## Privacy and Compliance232233### Considerations234- Cookie consent required in EU/UK/CA235- No PII in analytics properties236- Data retention settings237- User deletion capabilities238239### Implementation240- Use consent mode (wait for consent)241- IP anonymization242- Only collect what you need243- Integrate with consent management platform244245---246247## Output Format248249### Tracking Plan Document250251```markdown252# [Site/Product] Tracking Plan253254## Overview255- Tools: GA4, GTM256- Last updated: [Date]257258## Events259260| Event Name | Description | Properties | Trigger |261|------------|-------------|------------|---------|262| signup_completed | User completes signup | method, plan | Success page |263264## Custom Dimensions265266| Name | Scope | Parameter |267|------|-------|-----------|268| user_type | User | user_type |269270## Conversions271272| Conversion | Event | Counting |273|------------|-------|----------|274| Signup | signup_completed | Once per session |275```276277---278279## Task-Specific Questions2802811. What tools are you using (GA4, Mixpanel, etc.)?2822. What key actions do you want to track?2833. What decisions will this data inform?2844. Who implements - dev team or marketing?2855. Are there privacy/consent requirements?2866. What's already tracked?287288---289290## Tool Integrations291292For implementation, see the [tools registry](../../tools/REGISTRY.md). Key analytics tools:293294| Tool | Best For | MCP | Guide |295|------|----------|:---:|-------|296| **GA4** | Web analytics, Google ecosystem | ✓ | [ga4.md](../../tools/integrations/ga4.md) |297| **Mixpanel** | Product analytics, event tracking | - | [mixpanel.md](../../tools/integrations/mixpanel.md) |298| **Amplitude** | Product analytics, cohort analysis | - | [amplitude.md](../../tools/integrations/amplitude.md) |299| **PostHog** | Open-source analytics, session replay | - | [posthog.md](../../tools/integrations/posthog.md) |300| **Segment** | Customer data platform, routing | - | [segment.md](../../tools/integrations/segment.md) |301302---303304## Related Skills305306- **ab-test-setup**: For experiment tracking307- **seo-audit**: For organic traffic analysis308- **page-cro**: For conversion optimization (uses this data)309- **revops**: For pipeline metrics, CRM tracking, and revenue attribution310