Analyze Account Health
Deep-dive into a B2B account's product usage to prepare for QBRs, assess renewal risk, identify expansion opportunities, or prioritize CS outreach. Uses Mixpanel Group Analytics to analyze account-level behavior.
Prerequisites
This skill requires Group Analytics to be configured in the Mixpanel project. The account must be identified by a group key (e.g., company_id, org_id, account_id). If Group Analytics is not set up, the skill will note this and suggest configuration steps.
Instructions
Step 0: Identify Account & Discover Context
Get the account identifier:
- Company name, org ID, account ID, or group property value
- Ask user if not provided
Discover the data model:
- Call
Get-Projects to confirm the active project.
- Call
Get-Events to list available events.
- Call
Get-Properties to find group keys (look for properties that represent accounts/orgs/companies). Note the exact group key name.
- Call
Get-Property-Values on the group key to verify the account exists in the data.
- Call
Search-Entities with the account name to find existing reports, boards, or saved queries for this account. If found, ask user if they want fresh analysis or to review existing.
Step 1: Quick Health Triage
Call Get-Query-Schema to understand query structure. Then use Run-Query to run these queries in parallel:
Usage Trend:
- Query active users (or a core engagement event) filtered to the account's group key value
- Time: Last 60 days, daily interval
- Shows: Is activity increasing or decreasing?
Engagement Quality:
- Calculate DAU and MAU for the account
- Compute DAU/MAU ratio (stickiness)
- Shows: How engaged are active users?
User Momentum:
- Active user count week-over-week for the last 8 weeks
- Shows: Is the team growing or shrinking?
Classify Health:
- Healthy: Growing MAU, DAU/MAU >40%, positive WoW trend
- At-Risk: Flat/declining MAU, DAU/MAU 20-40%, negative WoW trend
- Critical: Steep decline, DAU/MAU <20%, sustained negative WoW trend
Step 2: User-Level Analysis
Use Run-Query with user-level breakdowns, filtered to the account:
Power Users:
- Top 3-5 users by event volume — these are champions to leverage
- Note their most-used features
Churned Users:
- Users active in the previous 30-day period but not in the current 30 days
- These are retention risks
License Utilization:
- Active users in last 30 days vs total seats (if seat count is known or ask the user)
- Low utilization = risk signal; high utilization = expansion signal
Step 3: Feature Usage Analysis
Use Run-Query grouped by events or features, filtered to the account:
Feature Breadth:
- Query the top events by volume for this account
- Ask the user for 5-10 key features if not obvious from event names
- Compute adoption rate per feature (unique users using it / total active users)
Feature Trends:
- Usage over last 90 days per key feature
- Identify growing vs declining features
Focus based on health classification:
- If At-Risk/Critical: Find abandoned features — used 60-90 days ago but not in last 30 days. These may indicate friction or lost value.
- If Healthy: Find untapped features — available but not adopted by this account. These represent expansion and deeper adoption opportunities.
Step 4: Behavioral Deep-Dive
Session Replays (if available):
Call Get-User-Replays-Data for the account's power users and recently churned users. Look for:
- Friction points in core workflows
- Features attempted but abandoned
- Error states or confusion patterns
Retention:
Use Run-Query to build a retention curve for this account:
- What percentage of users return in week 2, 4, 8?
- Compare to product-wide retention benchmarks
Funnel Completion:
If the user identifies key workflows (e.g., onboarding, core action, upgrade flow):
- Query funnel completion rates for this account vs product-wide
- Identify where account users drop off relative to the average
Step 5: Present Account Health Report
Structure output as follows:
# Account Health Report: [Account Name]
## Executive Summary
[2-3 sentences: Health classification, key trend, primary recommendation]
## Health Score: [Healthy / At-Risk / Critical]
[One sentence rationale with the key metric that drives the classification]
Key Metrics:
| Metric |
Current |
Trend |
Status |
| MAU |
X |
+/-Y% MoM |
Healthy/At-Risk/Critical |
| DAU/MAU (Stickiness) |
X% |
+/-Y% |
Healthy/At-Risk/Critical |
| License Utilization |
X/Y (Z%) |
+/- |
Healthy/At-Risk/Critical |
| Features Adopted |
X/Y |
+/- |
Healthy/At-Risk/Critical |
| Week 4 Retention |
X% |
vs Z% product avg |
Healthy/At-Risk/Critical |
Risk Factors (if any):
- [Issue] — [Impact]
- Usage data: [metric/trend]
- Supporting evidence: [behavioral pattern from replays or funnel data]
Positive Signals:
- [What's working] — [Evidence from usage data]
User Intelligence:
Champions (Leverage):
- [User ID/Name]: [Activity summary] — Action: [Specific recommendation]
At Risk (Engage):
- [User ID/Name]: [Last active date / declining pattern] — Action: [Check-in recommendation]
Inactive (>30 days):
- [Count] users ([X]% of licenses)
Feature Adoption:
| Feature |
Users |
Adoption % |
Trend |
Note |
| [Feature] |
X |
Y% |
Growing |
Core strength |
| [Feature] |
X |
Y% |
Declining |
Investigate |
| [Feature] |
0 |
0% |
— |
Expansion opportunity |
Abandoned features: [Features used 60-90d ago but not in last 30d]
Untapped features: [Available features not yet adopted — expansion opportunity]
Recommendations:
This Week:
- [Specific action with user/contact name if available]
This Month:
- [Strategic action with context]
Expansion Opportunities:
- [Upsell signal with evidence from usage data]
Analysis Details:
- Analysis Date: [Date]
- Timeframe: Last [X] days
- Group Key: [property name] = [value]
- Confidence: [High/Medium/Low based on data volume]
Best Practices
- Always name users — CS needs who to contact, not aggregates
- Show trends, not snapshots — Direction matters more than point-in-time
- Be specific in recommendations — "Reach out to user X about feature Y" not "improve engagement"
- Connect behavior to business — Declining usage of a premium feature is a churn risk, not just a metric
- Flag data gaps — Note low volume, missing group properties, or incomplete data
- Prioritize by impact — Focus on issues affecting champions or blocking core workflows
Common Patterns
Churn Risks:
- Champion goes inactive + declining overall usage
- License utilization dropping + core feature usage declining
- Users attempting workflows but dropping off at the same step (funnel friction)
Expansion Signals:
- Hitting plan limits (users, events, API calls)
- High adoption of advanced features + growing user count
- New users being added consistently + strong retention
Health Recovery:
- Recently churned users returning after feature update
- Adoption of a new feature correlating with improved retention
- Power user count growing
Edge Cases
- No Group Analytics. If no group key exists, report this: "This project doesn't have Group Analytics configured. To use account-level analysis, set up a group key (e.g.,
company_id) in your Mixpanel project settings. See docs.mixpanel.com/docs/data-structure/group-analytics." Fall back to user-level analysis if the user provides specific user IDs.
- Very small account. If <5 active users, skip statistical analysis and provide a per-user narrative instead. Every user matters individually at this scale.
- No Session Replay data. Skip the behavioral deep-dive and note that enabling Session Replay would provide richer qualitative context.
- Account not found. If the group key value doesn't match any data, check for typos, alternate naming, and suggest using
Get-Property-Values to list available accounts.
- Multiple group keys. Some projects have hierarchical groups (workspace → team → user). Ask the user which level to analyze.
Examples
Example 1: QBR Preparation
User says: "Prepare account health for Acme Corp"
Actions:
- Discover group key and confirm Acme Corp exists in the data
- Run health triage — MAU trend, stickiness, user momentum
- Identify power users and churned users
- Analyze feature adoption breadth and trends
- Pull session replays for top users
- Present full health report with recommendations
Example 2: Renewal Risk Assessment
User says: "Is CustomerX at risk of churning?"
Actions:
- Find CustomerX in group data
- Focus on declining signals — MAU trend, churned users, abandoned features
- Compare current engagement to 90-day-ago baseline
- Identify specific friction points from funnel analysis
- Present risk assessment with concrete save actions
Example 3: Expansion Opportunity
User says: "Which accounts are ready for upsell?"
Actions:
- Query across multiple accounts — high utilization, growing user counts, premium feature adoption
- Rank accounts by expansion readiness
- For the top 3-5, provide specific evidence (hitting limits, feature requests, usage patterns)
- Present with recommended upsell approach per account
1---2name: analyze-account-health3description: Summarizes B2B account health by analyzing usage patterns, engagement trends, risk signals, and expansion opportunities using Mixpanel Group Analytics. Use for customer success reviews, renewal preparation, QBRs, or account prioritization.4---56# Analyze Account Health78Deep-dive into a B2B account's product usage to prepare for QBRs, assess renewal risk, identify expansion opportunities, or prioritize CS outreach. Uses Mixpanel Group Analytics to analyze account-level behavior.910## Prerequisites1112This skill requires **Group Analytics** to be configured in the Mixpanel project. The account must be identified by a group key (e.g., `company_id`, `org_id`, `account_id`). If Group Analytics is not set up, the skill will note this and suggest configuration steps.1314## Instructions1516### Step 0: Identify Account & Discover Context1718**Get the account identifier:**19- Company name, org ID, account ID, or group property value20- Ask user if not provided2122**Discover the data model:**231. Call `Get-Projects` to confirm the active project.242. Call `Get-Events` to list available events.253. Call `Get-Properties` to find group keys (look for properties that represent accounts/orgs/companies). Note the exact group key name.264. Call `Get-Property-Values` on the group key to verify the account exists in the data.275. Call `Search-Entities` with the account name to find existing reports, boards, or saved queries for this account. If found, ask user if they want fresh analysis or to review existing.2829---3031### Step 1: Quick Health Triage3233Call `Get-Query-Schema` to understand query structure. Then use `Run-Query` to run these queries in parallel:3435**Usage Trend:**36- Query active users (or a core engagement event) filtered to the account's group key value37- Time: Last 60 days, daily interval38- **Shows:** Is activity increasing or decreasing?3940**Engagement Quality:**41- Calculate DAU and MAU for the account42- Compute DAU/MAU ratio (stickiness)43- **Shows:** How engaged are active users?4445**User Momentum:**46- Active user count week-over-week for the last 8 weeks47- **Shows:** Is the team growing or shrinking?4849**Classify Health:**50- **Healthy**: Growing MAU, DAU/MAU >40%, positive WoW trend51- **At-Risk**: Flat/declining MAU, DAU/MAU 20-40%, negative WoW trend52- **Critical**: Steep decline, DAU/MAU <20%, sustained negative WoW trend5354---5556### Step 2: User-Level Analysis5758Use `Run-Query` with user-level breakdowns, filtered to the account:5960**Power Users:**61- Top 3-5 users by event volume — these are champions to leverage62- Note their most-used features6364**Churned Users:**65- Users active in the previous 30-day period but not in the current 30 days66- These are retention risks6768**License Utilization:**69- Active users in last 30 days vs total seats (if seat count is known or ask the user)70- Low utilization = risk signal; high utilization = expansion signal7172---7374### Step 3: Feature Usage Analysis7576Use `Run-Query` grouped by events or features, filtered to the account:7778**Feature Breadth:**79- Query the top events by volume for this account80- Ask the user for 5-10 key features if not obvious from event names81- Compute adoption rate per feature (unique users using it / total active users)8283**Feature Trends:**84- Usage over last 90 days per key feature85- Identify growing vs declining features8687**Focus based on health classification:**88- **If At-Risk/Critical:** Find abandoned features — used 60-90 days ago but not in last 30 days. These may indicate friction or lost value.89- **If Healthy:** Find untapped features — available but not adopted by this account. These represent expansion and deeper adoption opportunities.9091---9293### Step 4: Behavioral Deep-Dive9495**Session Replays (if available):**96Call `Get-User-Replays-Data` for the account's power users and recently churned users. Look for:97- Friction points in core workflows98- Features attempted but abandoned99- Error states or confusion patterns100101**Retention:**102Use `Run-Query` to build a retention curve for this account:103- What percentage of users return in week 2, 4, 8?104- Compare to product-wide retention benchmarks105106**Funnel Completion:**107If the user identifies key workflows (e.g., onboarding, core action, upgrade flow):108- Query funnel completion rates for this account vs product-wide109- Identify where account users drop off relative to the average110111---112113### Step 5: Present Account Health Report114115Structure output as follows:116117```118# Account Health Report: [Account Name]119120## Executive Summary121[2-3 sentences: Health classification, key trend, primary recommendation]122123## Health Score: [Healthy / At-Risk / Critical]124[One sentence rationale with the key metric that drives the classification]125```126127---128129**Key Metrics:**130131| Metric | Current | Trend | Status |132|--------|---------|-------|--------|133| MAU | X | +/-Y% MoM | Healthy/At-Risk/Critical |134| DAU/MAU (Stickiness) | X% | +/-Y% | Healthy/At-Risk/Critical |135| License Utilization | X/Y (Z%) | +/- | Healthy/At-Risk/Critical |136| Features Adopted | X/Y | +/- | Healthy/At-Risk/Critical |137| Week 4 Retention | X% | vs Z% product avg | Healthy/At-Risk/Critical |138139---140141**Risk Factors (if any):**1421431. **[Issue]** — [Impact]144 - Usage data: [metric/trend]145 - Supporting evidence: [behavioral pattern from replays or funnel data]146147**Positive Signals:**1481491. **[What's working]** — [Evidence from usage data]150151---152153**User Intelligence:**154155*Champions (Leverage):*156- **[User ID/Name]**: [Activity summary] — *Action: [Specific recommendation]*157158*At Risk (Engage):*159- **[User ID/Name]**: [Last active date / declining pattern] — *Action: [Check-in recommendation]*160161*Inactive (>30 days):*162- [Count] users ([X]% of licenses)163164---165166**Feature Adoption:**167168| Feature | Users | Adoption % | Trend | Note |169|---------|-------|------------|-------|------|170| [Feature] | X | Y% | Growing | Core strength |171| [Feature] | X | Y% | Declining | Investigate |172| [Feature] | 0 | 0% | — | Expansion opportunity |173174*Abandoned features:* [Features used 60-90d ago but not in last 30d]175*Untapped features:* [Available features not yet adopted — expansion opportunity]176177---178179**Recommendations:**180181*This Week:*1821. [Specific action with user/contact name if available]183184*This Month:*1851. [Strategic action with context]186187*Expansion Opportunities:*1881. [Upsell signal with evidence from usage data]189190---191192**Analysis Details:**193- Analysis Date: [Date]194- Timeframe: Last [X] days195- Group Key: [property name] = [value]196- Confidence: [High/Medium/Low based on data volume]197198---199200## Best Practices201202- **Always name users** — CS needs who to contact, not aggregates203- **Show trends, not snapshots** — Direction matters more than point-in-time204- **Be specific in recommendations** — "Reach out to user X about feature Y" not "improve engagement"205- **Connect behavior to business** — Declining usage of a premium feature is a churn risk, not just a metric206- **Flag data gaps** — Note low volume, missing group properties, or incomplete data207- **Prioritize by impact** — Focus on issues affecting champions or blocking core workflows208209## Common Patterns210211**Churn Risks:**212- Champion goes inactive + declining overall usage213- License utilization dropping + core feature usage declining214- Users attempting workflows but dropping off at the same step (funnel friction)215216**Expansion Signals:**217- Hitting plan limits (users, events, API calls)218- High adoption of advanced features + growing user count219- New users being added consistently + strong retention220221**Health Recovery:**222- Recently churned users returning after feature update223- Adoption of a new feature correlating with improved retention224- Power user count growing225226## Edge Cases227228- **No Group Analytics.** If no group key exists, report this: "This project doesn't have Group Analytics configured. To use account-level analysis, set up a group key (e.g., `company_id`) in your Mixpanel project settings. See docs.mixpanel.com/docs/data-structure/group-analytics." Fall back to user-level analysis if the user provides specific user IDs.229- **Very small account.** If <5 active users, skip statistical analysis and provide a per-user narrative instead. Every user matters individually at this scale.230- **No Session Replay data.** Skip the behavioral deep-dive and note that enabling Session Replay would provide richer qualitative context.231- **Account not found.** If the group key value doesn't match any data, check for typos, alternate naming, and suggest using `Get-Property-Values` to list available accounts.232- **Multiple group keys.** Some projects have hierarchical groups (workspace → team → user). Ask the user which level to analyze.233234## Examples235236### Example 1: QBR Preparation237238User says: "Prepare account health for Acme Corp"239240Actions:2411. Discover group key and confirm Acme Corp exists in the data2422. Run health triage — MAU trend, stickiness, user momentum2433. Identify power users and churned users2444. Analyze feature adoption breadth and trends2455. Pull session replays for top users2466. Present full health report with recommendations247248### Example 2: Renewal Risk Assessment249250User says: "Is CustomerX at risk of churning?"251252Actions:2531. Find CustomerX in group data2542. Focus on declining signals — MAU trend, churned users, abandoned features2553. Compare current engagement to 90-day-ago baseline2564. Identify specific friction points from funnel analysis2575. Present risk assessment with concrete save actions258259### Example 3: Expansion Opportunity260261User says: "Which accounts are ready for upsell?"262263Actions:2641. Query across multiple accounts — high utilization, growing user counts, premium feature adoption2652. Rank accounts by expansion readiness2663. For the top 3-5, provide specific evidence (hitting limits, feature requests, usage patterns)2674. Present with recommended upsell approach per account