Skip to main content
ClaudeWave
EN, English
Skill906 repo starsupdated 17d ago

cohort-analysis

This Claude Code skill performs customer cohort analysis by segmenting customers into groups based on acquisition date, channel, behavior, or revenue tier, then tracking retention rates, revenue, lifetime value, and engagement metrics across time periods. Use it to identify which acquisition sources produce the highest-value long-term customers, understand retention evolution by cohort, spot lifecycle intervention opportunities, and determine whether customer quality is improving or declining over time.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/indranilbanerjee/digital-marketing-pro /tmp/cohort-analysis && cp -r /tmp/cohort-analysis/skills/cohort-analysis ~/.claude/skills/cohort-analysis
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# /digital-marketing-pro:cohort-analysis

## Purpose

Perform customer cohort analysis to understand lifecycle patterns, retention, and value over time. Segment customers into cohorts by acquisition date, channel, behavior, or value tier, then track retention curves, compare cohort performance, and identify which acquisition sources produce the highest-value customers. This analysis reveals whether the business is acquiring better or worse customers over time, which channels drive long-term value versus one-time transactions, and where lifecycle interventions (onboarding improvements, re-engagement campaigns, loyalty programs) would have the greatest impact on retention and revenue.

## Input Required

The user must provide (or will be prompted for):

- **Cohort type**: `time-based` (customers grouped by acquisition week, month, or quarter — the standard cohort analysis showing retention evolution over time), `channel-based` (customers grouped by acquisition source — paid search, organic, social, email, referral — revealing which channels produce the most durable customers), `behavioral` (customers grouped by first action taken — e.g., product category purchased, feature used, content consumed — identifying which entry points lead to highest retention), or `revenue-tier` (customers grouped by initial purchase value — low, medium, high, enterprise — showing how starting value correlates with lifetime retention and expansion)
- **Time period and granularity**: The analysis window and cohort size — weekly cohorts for the past 3 months (high resolution, best for fast-cycle businesses), monthly cohorts for the past 12 months (standard for most businesses), or quarterly cohorts for multi-year analysis (best for long-cycle B2B or subscription businesses). Granularity determines both how cohorts are defined and the retention interval measured
- **Metrics to track**: Which outcomes to measure across cohorts — `retention rate` (percentage of cohort still active at each interval), `revenue` (cumulative and per-period revenue per customer), `LTV` (cumulative lifetime value with projected future value), `engagement` (login frequency, feature usage, content consumption), or multiple metrics simultaneously for a comprehensive lifecycle view
- **Data source**: Where to pull customer data — `CRM` (deal data, customer records, lifecycle stages), `analytics` (website behavior, conversion events, session data), `product analytics` (feature usage, activation events, engagement metrics), or a combination of sources merged on customer identifier

## Process

1. **Load brand context**: Read `~/.claude-marketing/brands/_active-brand.json` for the active slug, then load `~/.claude-marketing/brands/{slug}/profile.json`. Extract business model (SaaS, eCommerce, B2B), typical customer lifecycle length, key retention metrics, and churn definition for the industry. Check for guidelines at `~/.claude-marketing/brands/{slug}/guidelines/_manifest.json`. If no brand exists, ask: "Set up a brand first (/digital-marketing-pro:brand-setup)?" — or proceed with defaults.
2. **Define cohorts based on selected type**: Segment the customer base into cohorts. For time-based: group customers by the week, month, or quarter they were first acquired (first purchase, account creation, or first meaningful interaction). For channel-based: group by the acquisition source attributed to their first conversion (UTM source, referral path, or CRM lead source field). For behavioral: group by the first significant action taken (first product category purchased, first feature activated, first content type consumed). For revenue-tier: group by initial transaction value bucketed into tiers (define thresholds based on the business's order value distribution — e.g., bottom 25%, middle 50%, top 25%).
3. **Pull customer data from CRM and analytics MCPs**: Gather the complete customer dataset — acquisition dates and source from CRM MCP, transaction history with timestamps and values, engagement events (logins, feature usage, email opens, site visits) from analytics MCPs, churn events (cancellation, last activity date, account closure), and any customer attributes needed for cohort segmentation. Merge data from multiple sources on customer identifier, resolving duplicates and filling gaps where possible.
4. **Build retention matrix**: For each cohort, calculate the retention rate at each subsequent time interval (Week 1, Week 2, Month 1, Month 2, etc. matching the selected granularity). Retention is defined as the percentage of the original cohort that performed a qualifying activity (purchase, login, engagement event — depending on the business model) during that interval. Present as a triangular matrix with cohorts as rows and time intervals as columns, with color-coded cells (green for above-average retention, red for below-average).
5. **Calculate LTV by cohort**: For each cohort, compute cumulative revenue per customer at each time interval — the average total revenue generated by a customer in that cohort from acquisition through that period. Plot LTV curves showing how value accumulates over time for each cohort. Calculate the LTV:CAC ratio where acquisition cost data is available, identifying which cohorts achieve payback fastest and which generate the highest long-term return.
6. **Identify retention patterns**: Analyze the retention matrix for structural patterns. When does retention stabilize (the "retention floor" — the period after which churn rate approaches zero)? Which cohorts retain best and what differentiates them from low-retention cohorts (acquisition channel, initial behavior, season of acquisition, promotional vs. organic)? Is there a critical activation window — a specific early-lifecycle period where retention diverges between customers who will retain and those who will churn? Identify the "aha moment" if behavioral data supports it.
7. **Calculate cohort health metrics**: For each cohort, compute: payback period (months until
ab-test-planSkill

Design a statistically rigorous A/B or multivariate test plan — If/Then/Because hypothesis, control and variant specs, required sample size per variant (absolute vs relative MDE via sample-size-calculator.py), test duration, guardrail metrics, stopping rules, and go/no-go decision criteria. Triggers on \"/digital-marketing-pro:ab-test-plan\", \"set up an A/B test\", \"how long should my test run\", \"calculate sample size for an experiment\", \"is this test result significant\". Reads the brand profile and past campaign-tracker results to avoid re-testing validated hypotheses; finished tests are evaluated with significance-tester.py by the cro-specialist agent.

ad-creativeSkill

Generate 3-5 ad copy variations per platform — headlines, descriptions, and CTAs formatted to Google, Meta, LinkedIn, TikTok, X, and Pinterest specs — each scored 1-10 with policy-compliance flags, A/B testing groupings, and a message-match check against the landing page. Triggers on \"/digital-marketing-pro:ad-creative\", \"write ad copy for Meta\", \"give me RSA headline variations\", \"we need LinkedIn ad copy\", \"draft TikTok ad creative\". Reads the brand profile, guidelines, and compliance rules; routes video ad scripts to /digital-marketing-pro:video-script and gates AI-generated visuals for EU campaigns through /digital-marketing-pro:c2pa-metadata and /digital-marketing-pro:check.

add-integrationSkill

Walk through adding a custom MCP server integration to the plugin — searches npm for an existing MCP package (or scaffolds a custom server from the plugin's guide), generates the exact .mcp.json entry, sets up environment-variable credentials, tests connectivity, and documents the tools the new server exposes. Triggers on \"/digital-marketing-pro:add-integration\", \"connect Ahrefs to the plugin\", \"add a new MCP server\", \"integrate our internal API\", \"hook up Stripe data\". Reads the brand profile and agency credential profiles at ~/.claude-marketing/credentials/ to map client-specific keys; custom builds follow skills/context-engine/custom-mcp-guide.md.

aeo-auditSkill

Audit how a brand appears across the 6 canonical AI answer surfaces — ChatGPT, Perplexity, Google AI Mode, AI Overviews, Gemini, Copilot — probing 10-25 queries into a numbered output bundle with per-platform visibility scorecards, citation-accuracy checks, a competitor matrix, content gaps, and an optimization playbook behind a four-gate quality scorecard. Triggers on \"/digital-marketing-pro:aeo-audit\", \"does ChatGPT know about our brand\", \"check our AI search visibility\", \"how does Perplexity describe us\", \"are we showing up in AI Overviews\". Reads the brand profile; reconciles probes against GSC actuals via /digital-marketing-pro:gsc-ai-performance and defines the AI-visibility scoring standard reused by geo-monitor and share-of-voice.

aeo-geoSkill

Strategy module for Answer Engine / Generative Engine Optimization — audits AI visibility, restructures content for citation, runs entity-consistency checks across Knowledge Graph, Wikidata, Wikipedia, Crunchbase, and LinkedIn, and produces JSON-LD schema specs, monitoring frameworks, and a 90-day LLM content strategy. Triggers on \"/digital-marketing-pro:aeo-geo\", \"how do we get cited by AI\", \"optimize for AI Overviews\", \"fix our entity consistency\", \"do we need llms.txt\". Reads the brand profile, compliance rules, and industry benchmarks; its measurement counterpart is /digital-marketing-pro:aeo-audit, with GSC actuals via /digital-marketing-pro:gsc-ai-performance.

agency-dashboardSkill

Generate a portfolio-level dashboard across ALL client brands — per-client RAG health scores, campaign activity, budget pacing, aggregate KPIs, team utilization, pending approvals, upcoming deadlines, and an alerts panel — built for agency standups and weekly reviews. Triggers on \"/digital-marketing-pro:agency-dashboard\", \"how are all our clients doing\", \"portfolio health check\", \"budget pacing across accounts\", \"which accounts are at risk\". Enumerates every brand under ~/.claude-marketing/brands/ and pulls data via campaign-tracker.py, execution-tracker.py, and team-manager.py; drill into a single client with /digital-marketing-pro:performance-report or /digital-marketing-pro:client-report.

agency-operationsSubagent

Invoke when the user needs to manage multiple client brands, view portfolio-level dashboards, generate client reports, manage SOPs, switch credential profiles, assign team tasks, configure regions, or generate executive summaries. Triggers on requests involving multi-client management, agency workflows, client onboarding, or portfolio oversight.

analytics-analystSubagent

Invoke when the user needs help with marketing measurement, KPI definition, dashboard design, attribution reporting, performance analysis, competitive benchmarking, or translating data into marketing decisions. Triggers on requests involving metrics, reporting, analytics setup, or data interpretation.