Best for
- Use when designing event tracking, defining metrics, running A/B tests, or analyzing retention.
majiayu000/spellbook/skills/product-analytics/SKILL.md
Product analytics and growth expert. Use when designing event tracking, defining metrics, running A/B tests, or analyzing retention. Covers AARRR framework, funnel analysis, cohort analysis, and experimentation.
Decision brief
Product analytics and growth expert. Covers AARRR framework, funnel analysis, cohort analysis, and experimentation.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/majiayu000/spellbook --skill "skills/product-analytics"Inspect the Agent Skill "product-analytics" from https://github.com/majiayu000/spellbook/blob/9e96aa5f52e8504cbbf9d359def29f9abcde57ce/skills/product-analytics/SKILL.md at commit 9e96aa5f52e8504cbbf9d359def29f9abcde57ce. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
1. Identify core value proposition - What job does your product do for users? - When do users get "aha!" moment?
When users discover your product
Metrics over vanity — Focus on actionable metrics tied to business outcomes
These rules are mandatory. Violating them means the skill is not working correctly.
Events must NEVER contain personally identifiable information.
Permission review
No configured static risk pattern was detected
This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.
Evidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 93/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 262 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
These rules are mandatory. Violating them means the skill is not working correctly.
Events must NEVER contain personally identifiable information.
// ❌ FORBIDDEN: PII in event properties
track('user_signed_up', {
email: '[email protected]', // PII!
name: 'John Doe', // PII!
phone: '+1234567890', // PII!
ip_address: '192.168.1.1', // PII!
credit_card: '4111...', // NEVER!
});
// ✅ REQUIRED: Anonymized/hashed identifiers only
track('user_signed_up', {
user_id: hash('[email protected]'), // Hashed
plan: 'pro',
source: 'organic',
country: 'US', // Broad location OK
});
// Masking utilities
const maskEmail = (email) => {
const [name, domain] = email.split('@');
return `${name[0]}***@${domain}`;
};
All event names must follow the object_action snake_case format.
// ❌ FORBIDDEN: Inconsistent naming
track('signup'); // No object
track('newProject'); // camelCase
track('Upload File'); // Spaces and PascalCase
track('user-created'); // kebab-case
track('BUTTON_CLICKED'); // SCREAMING_CASE
// ✅ REQUIRED: object_action snake_case
track('user_signed_up');
track('project_created');
track('file_uploaded');
track('payment_completed');
track('checkout_started');
Track metrics that drive decisions, not vanity metrics.
// ❌ FORBIDDEN: Vanity metrics without context
track('page_viewed'); // No insight
track('button_clicked'); // Too generic
track('app_opened'); // Doesn't indicate value
// ✅ REQUIRED: Actionable metrics tied to outcomes
track('feature_activated', {
feature: 'dark_mode',
time_to_activation_hours: 2.5,
user_segment: 'power_user',
});
track('checkout_completed', {
order_value: 99.99,
items_count: 3,
payment_method: 'credit_card',
coupon_applied: true,
});
A/B tests must have proper sample size and significance thresholds.
// ❌ FORBIDDEN: Drawing conclusions too early
// "After 100 users, variant B has 5% higher conversion!"
// This is not statistically significant.
// ✅ REQUIRED: Proper experiment setup
const experimentConfig = {
name: 'new_checkout_flow',
hypothesis: 'New flow increases conversion by 10%',
// Statistical requirements
significance_level: 0.05, // 95% confidence
power: 0.80, // 80% power
minimum_detectable_effect: 0.10, // 10% lift
// Calculated sample size
sample_size_per_variant: 3842,
// Guardrails
max_duration_days: 14,
stop_if_degradation: -0.05, // Stop if 5% worse
};
| Scenario | Framework/Tool | Key Metric |
|---|---|---|
| Overall product health | North Star Metric | Time spent listening (Spotify), Nights booked (Airbnb) |
| Growth optimization | AARRR (Pirate Metrics) | Conversion rates per stage |
| Feature validation | A/B Testing | Statistical significance (p < 0.05) |
| User engagement | Cohort Analysis | Day 1/7/30 retention rates |
| Conversion optimization | Funnel Analysis | Drop-off rates per step |
| Feature impact | Attribution Modeling | Multi-touch attribution |
| Experiment success | Statistical Testing | Power, significance, effect size |
A North Star Metric is the one metric that best captures the core value your product delivers to customers. When this metric grows sustainably, your business succeeds.
✓ Captures product value delivery
✓ Correlates with revenue/growth
✓ Measurable and trackable
✓ Movable by product/engineering
✓ Understandable by entire org
✓ Leading (not lagging) indicator
| Company | North Star Metric | Why It Works |
|---|---|---|
| Spotify | Time Spent Listening | Core value = music enjoyment |
| Airbnb | Nights Booked | Revenue driver + value delivered |
| Slack | Daily Active Teams | Engagement = product stickiness |
| Monthly Active Users | Network effect foundation | |
| Amplitude | Weekly Learning Users | Value = analytics insights |
| Dropbox | Active Users Sharing Files | Core product behavior |
North Star Metric
↓
┌──────┴──────┬──────────┬──────────┐
│ │ │ │
Input 1 Input 2 Input 3 Input 4
(Supporting metrics that drive NSM)
Example: Spotify
NSM: Time Spent Listening
├── Daily Active Users
├── Playlists Created
├── Songs Added to Library
└── Share/Social Actions
Identify core value proposition
Find the metric that represents this value
Validate it correlates with business success
Define supporting input metrics
The AARRR framework tracks the customer lifecycle across five stages:
ACQUISITION → ACTIVATION → RETENTION → REFERRAL → REVENUE
When users discover your product
Key Questions:
Metrics:
• Website visitors
• App installs
• Sign-ups per channel
• Cost per acquisition (CPA)
• Channel conversion rates
Example Events:
// Landing page view
track('page_viewed', {
page: 'landing',
utm_source: 'google',
utm_medium: 'cpc',
utm_campaign: 'brand_search'
});
// Sign-up started
track('signup_started', {
source: 'homepage_cta'
});
When users experience core product value
Key Questions:
Metrics:
• Time to first action
• Activation rate (% completing key action)
• Setup completion rate
• Feature adoption rate
Example "Aha!" Moments:
Slack: Send 2,000 messages in team
Twitter: Follow 30 users
Dropbox: Upload first file
LinkedIn: Connect with 5 people
Example Events:
// Activation milestone
track('activated', {
user_id: 'usr_123',
activation_action: 'first_project_created',
time_to_activation_hours: 2.5
});
When users keep coming back
Key Questions:
Metrics:
• Day 1/7/30 retention rate
• Weekly/Monthly active users (WAU/MAU)
• Churn rate
• Usage frequency
• Feature stickiness (DAU/MAU)
Retention Calculation:
Day X Retention = Users returning on Day X / Total users in cohort
Example:
Cohort: 1000 users signed up Jan 1
Day 7: 300 returned
Day 7 Retention = 300/1000 = 30%
Example Events:
// Daily engagement
track('session_started', {
user_id: 'usr_123',
session_count: 42,
days_since_signup: 15
});
When users recommend your product
Key Questions:
Metrics:
• Viral coefficient (K-factor)
• Referral rate (% users referring)
• Invites sent per user
• Invite conversion rate
• Net Promoter Score (NPS)
Viral Coefficient:
K = (% users who refer) × (avg invites per user) × (invite conversion rate)
Example:
K = 0.20 × 5 × 0.30 = 0.30
K > 1: Viral growth (each user brings >1 new user)
K < 1: Need paid acquisition
Example Events:
// Referral actions
track('invite_sent', {
user_id: 'usr_123',
channel: 'email',
recipients: 3
});
track('referral_converted', {
referrer_id: 'usr_123',
new_user_id: 'usr_456',
channel: 'email'
});
When users generate business value
Key Questions:
Metrics:
• Monthly Recurring Revenue (MRR)
• Average Revenue Per User (ARPU)
• Customer Lifetime Value (LTV)
• LTV:CAC ratio
• Conversion to paid
• Revenue churn
LTV Calculation:
LTV = ARPU × Gross Margin / Churn Rate
Example:
ARPU: $50/month
Gross Margin: 80%
Churn: 5%/month
LTV = $50 × 0.80 / 0.05 = $800
Healthy LTV:CAC ratio: 3:1 or higher
Example Events:
// Revenue events
track('subscription_started', {
user_id: 'usr_123',
plan: 'pro',
mrr: 29.99,
billing_cycle: 'monthly'
});
track('upgrade_completed', {
user_id: 'usr_123',
from_plan: 'basic',
to_plan: 'pro',
mrr_change: 20.00
});
## Acquisition
- Total visitors: 50,000
- Sign-ups: 2,500 (5% conversion)
- Top channels: Organic (40%), Paid (30%), Referral (20%)
## Activation
- Activated users: 1,750 (70% of sign-ups)
- Time to activation: 3.2 hours (median)
- Activation funnel drop-off: 30% at setup step 2
## Retention
- Day 1: 60%
- Day 7: 35%
- Day 30: 20%
- Churn: 5%/month
## Referral
- K-factor: 0.4
- Users referring: 15%
- Invites per user: 4.2
- Invite conversion: 25%
## Revenue
- MRR: $125,000
- ARPU: $50
- LTV: $800
- LTV:CAC: 4:1
- Conversion to paid: 25%
Detailed material starting at ## Key Metrics & Formulas has been moved to reference/extended.md to keep this skill concise. Load that reference when the task requires the moved examples, command catalogs, checklists, platform details, or implementation templates.
Frequently asked questions
Product analytics and growth expert. Covers AARRR framework, funnel analysis, cohort analysis, and experimentation.
The source record exposes this install command: npx skills add https://github.com/majiayu000/spellbook --skill "skills/product-analytics". Inspect the command and pinned source before running it.
Alternatives
JasonColapietro/suede-creator-skills
Suede-owned experimentation discipline for hypotheses, sample sizing, test duration, significance, and repeatable experiment programs. Use when comparing variants, deciding whether a result is reliable, or building an experiment backlog and cadence. NOT FOR: analytics instrumentation (use suede-analytics), post-click conversion diagnosis (use suede-site-alchemy), or writing the variant copy itself (use suede-copy).
narrative-io/narrative-skills-marketplace
Translate a fuzzy analytical question into a rigorous investigation plan. Interrogates the ask, grounds the plan in the available data dictionary, applies analytical best practices, and produces a structured brief of query specifications for a downstream query-writing skill. Plans, does not write SQL. Use when: "why did X drop", "is there a relationship between A and B", "who are our highest-value customers", "what's driving the change in Y", "investigate this trend", "design an analysis for", "
K-Dense-AI/scientific-agent-skills
Distributed computing for larger-than-RAM pandas/NumPy workflows. Use when you need to scale existing pandas/NumPy code beyond memory or across clusters. Best for parallel file processing, distributed ML, integration with existing pandas code. For out-of-core analytics on single machine use vaex; for in-memory speed use polars.
synthetic-sciences/openscience
Computational analysis of pharmacology wet-lab experiments. Western blot densitometry, xenograft tumor growth inhibition, pharmaceutical stability modeling (Arrhenius), radiolabeled antibody biodistribution, MIRD dosimetry, and adverse event grading. For drug databases use chembl-database or fda-database; for molecular docking use diffdock.