When the user wants to set up, audit, or optimize analytics tracking (GA4, events, conversions). Also use when the user mentions "Google Analytics," "GA4," "event tracking," "conversions," "attribution model," "gtag," "data layer," "GA4 setup," "conversion tracking," "event setup," "User ID tracking," or "CTA attribution." For traffic insights, use traffic-analysis.
Guides analytics implementation: GA4 setup, event tracking, conversions, and data quality. Applies to web and app tracking across marketing channels.
When invoking: On first use, if helpful, open with 1-2 sentences on what this skill covers and why it matters, then provide the main output. On subsequent use or when the user asks to skip, go directly to the main output.
user_id when user is identified (e.g., login); send to GA4Track CTA clicks on key articles to measure content ROI:
| Action | Purpose |
|--------|---------|
| Event per CTA | e.g., cta_click with content_url, content_type |
| Conversion | Mark as conversion in GA4 for attribution |
| Use | Compare high vs low performers; optimize CTA placement and copy |
See seo-monitoring for article database and benchmark context.
| Component | Purpose | |-----------|---------| | Data warehouse | Centralized data; BI reporting | | Event tracking | User behavior; funnel mapping | | Attribution | Ad pixels; attribution model; impression-to-sale tracking |
Optimization flow: Clean UTM + conversion events → attribution reports → optimize channel mix.
G-XXXXXXXXXX)Enable in Admin > Data Streams > Enhanced Measurement for automatic tracking of:
| Type | Description | |------|-------------| | Automatically collected | page_view, first_visit, session_start | | Enhanced measurement | scroll, click, file_download, etc. | | Recommended | purchase, sign_up, search, etc. | | Custom | Business-specific actions |
snake_case, lowercasedownload_pdf, submit_form, video_playpricing_page_scroll vs generic scrollgtag('event', '<event_name>', {
<parameter_name>: <value>,
// e.g. value: 99.99, currency: 'USD'
});
Place below the Google tag snippet. Events fire on page load or user action (e.g., button click).
| Event | Use | Key Parameters |
|-------|-----|----------------|
| purchase | E-commerce | value, currency, items |
| sign_up | Registration | method |
| login | Login | method |
| search | Site search | search_term |
| view_item | Product view | items |
| add_to_cart | Add to cart | items |
content_type, item_id)Attribution models determine how conversion credit is assigned across touchpoints. Use attribution data to optimize ads and growth channels.
| Model | Use | |-------|-----| | Data-driven (GA4 default) | ML assigns credit by actual contribution; best for multi-touch journeys | | Last-click | 100% to final touchpoint; simple but undervalues awareness/consideration |
Optimization flow: Clean UTM (source, medium, campaign) + conversion events → GA4 attribution reports → compare channels by attributed conversions → reallocate budget to ads/channels that drive results. Inconsistent UTM fragments data; multi-touch attribution requires reliable touchpoint data.
Reference: UTM.io – UTMs for Marketing Attribution, GA4 – Get started with attribution
| Tool | Use |
|------|-----|
| Realtime | See events as they fire |
| DebugView | Detailed event/parameter inspection; requires debug mode |
| GA4 Debug mode | gtag('config', 'G-XXX', { 'debug_mode': true }); or GTM preview |
Copy a source-pinned command for your client. You run it yourself.
Destination: .claude/skills/tracking · pinned to the source commit
git clone https://github.com/kostja94/marketing-skills.git
cd marketing-skills
git checkout 70987bad4ebe9dce1f74858c1c64f3f8810f18e4
mkdir -p ".claude/skills/tracking"
cp -r "skills/analytics/tracking" ".claude/skills/tracking"Review the source before running. This copies files into your project; it is not a one-click install and does not verify runtime safety.
Scanner static-checks@0.1.0 · commit 70987bad4ebe. Static checks cannot prove runtime safety – review the source and the exact diff before installing. How checks work.
No static rules matched. This is not a safety guarantee.