autodoc-agent-kit 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +362 -0
- package/package.json +49 -0
- package/src/core/module.yaml +5 -0
- package/src/modules/design/module.yaml +9 -0
- package/src/modules/design/skills/brand-guidelines/LICENSE.txt +202 -0
- package/src/modules/design/skills/brand-guidelines/SKILL.md +73 -0
- package/src/modules/design/skills/frontend-design/LICENSE.txt +177 -0
- package/src/modules/design/skills/frontend-design/SKILL.md +42 -0
- package/src/modules/design/skills/web-artifacts-builder/SKILL.md +229 -0
- package/src/modules/devops/module.yaml +10 -0
- package/src/modules/devops/skills/devops-helper/SKILL.md +60 -0
- package/src/modules/devops/skills/k8s-helm/SKILL.md +360 -0
- package/src/modules/devops/skills/monitoring-observability/SKILL.md +240 -0
- package/src/modules/devops/skills/security-auditor/SKILL.md +105 -0
- package/src/modules/engineering/module.yaml +22 -0
- package/src/modules/engineering/skills/ai-sdk/SKILL.md +314 -0
- package/src/modules/engineering/skills/api-designer/SKILL.md +77 -0
- package/src/modules/engineering/skills/code-reviewer/SKILL.md +71 -0
- package/src/modules/engineering/skills/db-architect/SKILL.md +50 -0
- package/src/modules/engineering/skills/debugger/SKILL.md +59 -0
- package/src/modules/engineering/skills/docs-generator/SKILL.md +51 -0
- package/src/modules/engineering/skills/git-workflow/SKILL.md +258 -0
- package/src/modules/engineering/skills/mcp-builder/LICENSE.txt +202 -0
- package/src/modules/engineering/skills/mcp-builder/SKILL.md +236 -0
- package/src/modules/engineering/skills/mcp-builder/reference/evaluation.md +602 -0
- package/src/modules/engineering/skills/mcp-builder/reference/mcp_best_practices.md +249 -0
- package/src/modules/engineering/skills/mcp-builder/reference/node_mcp_server.md +970 -0
- package/src/modules/engineering/skills/mcp-builder/reference/python_mcp_server.md +719 -0
- package/src/modules/engineering/skills/mcp-builder/scripts/connections.py +151 -0
- package/src/modules/engineering/skills/mcp-builder/scripts/evaluation.py +373 -0
- package/src/modules/engineering/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
- package/src/modules/engineering/skills/mcp-builder/scripts/requirements.txt +2 -0
- package/src/modules/engineering/skills/nextjs-15/SKILL.md +312 -0
- package/src/modules/engineering/skills/perf-optimizer/SKILL.md +60 -0
- package/src/modules/engineering/skills/react-19/SKILL.md +257 -0
- package/src/modules/engineering/skills/refactorer/SKILL.md +60 -0
- package/src/modules/engineering/skills/skill-authoring-workflow/SKILL.md +183 -0
- package/src/modules/engineering/skills/skill-creator/LICENSE.txt +202 -0
- package/src/modules/engineering/skills/skill-creator/SKILL.md +356 -0
- package/src/modules/engineering/skills/skill-creator/references/output-patterns.md +82 -0
- package/src/modules/engineering/skills/skill-creator/references/workflows.md +28 -0
- package/src/modules/engineering/skills/skill-creator/scripts/__pycache__/quick_validate.cpython-313.pyc +0 -0
- package/src/modules/engineering/skills/skill-creator/scripts/init_skill.py +303 -0
- package/src/modules/engineering/skills/skill-creator/scripts/package_skill.py +110 -0
- package/src/modules/engineering/skills/skill-creator/scripts/quick_validate.py +95 -0
- package/src/modules/engineering/skills/typescript/SKILL.md +231 -0
- package/src/modules/engineering/skills/zod-4/SKILL.md +223 -0
- package/src/modules/product/module.yaml +51 -0
- package/src/modules/product/skills/acquisition-channel-advisor/SKILL.md +643 -0
- package/src/modules/product/skills/acquisition-channel-advisor/examples/conversation-flow.md +531 -0
- package/src/modules/product/skills/ai-shaped-readiness-advisor/SKILL.md +923 -0
- package/src/modules/product/skills/altitude-horizon-framework/SKILL.md +250 -0
- package/src/modules/product/skills/altitude-horizon-framework/examples/sample.md +85 -0
- package/src/modules/product/skills/business-health-diagnostic/SKILL.md +783 -0
- package/src/modules/product/skills/company-research/SKILL.md +385 -0
- package/src/modules/product/skills/company-research/examples/sample.md +164 -0
- package/src/modules/product/skills/company-research/template.md +60 -0
- package/src/modules/product/skills/context-engineering-advisor/SKILL.md +763 -0
- package/src/modules/product/skills/customer-journey-map/SKILL.md +346 -0
- package/src/modules/product/skills/customer-journey-map/examples/meta-product-manager-skills.md +40 -0
- package/src/modules/product/skills/customer-journey-map/examples/sample.md +33 -0
- package/src/modules/product/skills/customer-journey-map/template.md +28 -0
- package/src/modules/product/skills/customer-journey-mapping-workshop/SKILL.md +523 -0
- package/src/modules/product/skills/director-readiness-advisor/SKILL.md +351 -0
- package/src/modules/product/skills/director-readiness-advisor/examples/conversation-flow.md +96 -0
- package/src/modules/product/skills/discovery-interview-prep/SKILL.md +410 -0
- package/src/modules/product/skills/discovery-process/SKILL.md +504 -0
- package/src/modules/product/skills/discovery-process/examples/sample.md +60 -0
- package/src/modules/product/skills/discovery-process/template.md +39 -0
- package/src/modules/product/skills/eol-message/SKILL.md +348 -0
- package/src/modules/product/skills/eol-message/examples/sample.md +87 -0
- package/src/modules/product/skills/eol-message/template.md +74 -0
- package/src/modules/product/skills/epic-breakdown-advisor/SKILL.md +665 -0
- package/src/modules/product/skills/epic-hypothesis/SKILL.md +277 -0
- package/src/modules/product/skills/epic-hypothesis/examples/sample.md +104 -0
- package/src/modules/product/skills/epic-hypothesis/template.md +30 -0
- package/src/modules/product/skills/executive-onboarding-playbook/SKILL.md +280 -0
- package/src/modules/product/skills/executive-onboarding-playbook/examples/sample.md +116 -0
- package/src/modules/product/skills/feature-investment-advisor/SKILL.md +639 -0
- package/src/modules/product/skills/feature-investment-advisor/examples/conversation-flow.md +538 -0
- package/src/modules/product/skills/finance-based-pricing-advisor/SKILL.md +763 -0
- package/src/modules/product/skills/finance-metrics-quickref/SKILL.md +309 -0
- package/src/modules/product/skills/jobs-to-be-done/SKILL.md +370 -0
- package/src/modules/product/skills/jobs-to-be-done/examples/sample.md +80 -0
- package/src/modules/product/skills/jobs-to-be-done/template.md +65 -0
- package/src/modules/product/skills/lean-ux-canvas/SKILL.md +561 -0
- package/src/modules/product/skills/lean-ux-canvas/examples/sample.md +88 -0
- package/src/modules/product/skills/lean-ux-canvas/template.md +32 -0
- package/src/modules/product/skills/opportunity-solution-tree/SKILL.md +420 -0
- package/src/modules/product/skills/opportunity-solution-tree/examples/sample.md +104 -0
- package/src/modules/product/skills/opportunity-solution-tree/template.md +33 -0
- package/src/modules/product/skills/pestel-analysis/SKILL.md +376 -0
- package/src/modules/product/skills/pestel-analysis/examples/sample.md +143 -0
- package/src/modules/product/skills/pestel-analysis/template.md +53 -0
- package/src/modules/product/skills/pol-probe/SKILL.md +217 -0
- package/src/modules/product/skills/pol-probe/examples/sample.md +136 -0
- package/src/modules/product/skills/pol-probe/template.md +59 -0
- package/src/modules/product/skills/pol-probe-advisor/SKILL.md +492 -0
- package/src/modules/product/skills/positioning-statement/SKILL.md +230 -0
- package/src/modules/product/skills/positioning-statement/examples/sample.md +51 -0
- package/src/modules/product/skills/positioning-statement/template.md +25 -0
- package/src/modules/product/skills/positioning-workshop/SKILL.md +424 -0
- package/src/modules/product/skills/prd-development/SKILL.md +655 -0
- package/src/modules/product/skills/prd-development/examples/sample.md +43 -0
- package/src/modules/product/skills/prd-development/template.md +55 -0
- package/src/modules/product/skills/press-release/SKILL.md +269 -0
- package/src/modules/product/skills/press-release/examples/sample.md +73 -0
- package/src/modules/product/skills/press-release/template.md +39 -0
- package/src/modules/product/skills/prioritization-advisor/SKILL.md +448 -0
- package/src/modules/product/skills/problem-framing-canvas/SKILL.md +466 -0
- package/src/modules/product/skills/problem-framing-canvas/examples/sample.md +58 -0
- package/src/modules/product/skills/problem-framing-canvas/template.md +22 -0
- package/src/modules/product/skills/problem-statement/SKILL.md +246 -0
- package/src/modules/product/skills/problem-statement/examples/sample.md +82 -0
- package/src/modules/product/skills/problem-statement/template.md +37 -0
- package/src/modules/product/skills/product-strategy-session/SKILL.md +426 -0
- package/src/modules/product/skills/product-strategy-session/examples/sample.md +67 -0
- package/src/modules/product/skills/product-strategy-session/template.md +38 -0
- package/src/modules/product/skills/proto-persona/SKILL.md +326 -0
- package/src/modules/product/skills/proto-persona/examples/sample.md +97 -0
- package/src/modules/product/skills/proto-persona/template.md +45 -0
- package/src/modules/product/skills/recommendation-canvas/SKILL.md +375 -0
- package/src/modules/product/skills/recommendation-canvas/examples/sample.md +94 -0
- package/src/modules/product/skills/recommendation-canvas/template.md +86 -0
- package/src/modules/product/skills/roadmap-planning/SKILL.md +505 -0
- package/src/modules/product/skills/roadmap-planning/examples/sample.md +62 -0
- package/src/modules/product/skills/roadmap-planning/template.md +30 -0
- package/src/modules/product/skills/saas-economics-efficiency-metrics/SKILL.md +694 -0
- package/src/modules/product/skills/saas-economics-efficiency-metrics/examples/cash-trap.md +365 -0
- package/src/modules/product/skills/saas-economics-efficiency-metrics/examples/healthy-unit-economics.md +279 -0
- package/src/modules/product/skills/saas-economics-efficiency-metrics/template.md +263 -0
- package/src/modules/product/skills/saas-revenue-growth-metrics/SKILL.md +630 -0
- package/src/modules/product/skills/saas-revenue-growth-metrics/examples/healthy-saas.md +131 -0
- package/src/modules/product/skills/saas-revenue-growth-metrics/examples/warning-signs.md +229 -0
- package/src/modules/product/skills/saas-revenue-growth-metrics/template.md +192 -0
- package/src/modules/product/skills/storyboard/SKILL.md +252 -0
- package/src/modules/product/skills/storyboard/examples/sample.md +71 -0
- package/src/modules/product/skills/storyboard/template.md +41 -0
- package/src/modules/product/skills/tam-sam-som-calculator/SKILL.md +392 -0
- package/src/modules/product/skills/tam-sam-som-calculator/examples/sample.md +142 -0
- package/src/modules/product/skills/tam-sam-som-calculator/scripts/market-sizing.py +95 -0
- package/src/modules/product/skills/tam-sam-som-calculator/template.md +35 -0
- package/src/modules/product/skills/user-story/SKILL.md +272 -0
- package/src/modules/product/skills/user-story/examples/sample.md +110 -0
- package/src/modules/product/skills/user-story/scripts/user-story-template.py +65 -0
- package/src/modules/product/skills/user-story/template.md +32 -0
- package/src/modules/product/skills/user-story-mapping/SKILL.md +285 -0
- package/src/modules/product/skills/user-story-mapping/examples/sample.md +77 -0
- package/src/modules/product/skills/user-story-mapping/template.md +41 -0
- package/src/modules/product/skills/user-story-mapping-workshop/SKILL.md +477 -0
- package/src/modules/product/skills/user-story-mapping-workshop/template.md +28 -0
- package/src/modules/product/skills/user-story-splitting/SKILL.md +303 -0
- package/src/modules/product/skills/user-story-splitting/examples/sample.md +147 -0
- package/src/modules/product/skills/user-story-splitting/template.md +37 -0
- package/src/modules/product/skills/vp-cpo-readiness-advisor/SKILL.md +409 -0
- package/src/modules/product/skills/vp-cpo-readiness-advisor/examples/conversation-flow.md +95 -0
- package/src/modules/product/skills/workshop-facilitation/SKILL.md +87 -0
- package/src/modules/productivity/module.yaml +9 -0
- package/src/modules/productivity/skills/doc-coauthoring/SKILL.md +375 -0
- package/src/modules/productivity/skills/internal-comms/LICENSE.txt +202 -0
- package/src/modules/productivity/skills/internal-comms/SKILL.md +32 -0
- package/src/modules/productivity/skills/internal-comms/examples/3p-updates.md +47 -0
- package/src/modules/productivity/skills/internal-comms/examples/company-newsletter.md +65 -0
- package/src/modules/productivity/skills/internal-comms/examples/faq-answers.md +30 -0
- package/src/modules/productivity/skills/internal-comms/examples/general-comms.md +16 -0
- package/src/modules/productivity/skills/technical-writing/SKILL.md +266 -0
- package/src/modules/qa/module.yaml +9 -0
- package/src/modules/qa/skills/test-strategy/SKILL.md +263 -0
- package/src/modules/qa/skills/test-writer/SKILL.md +57 -0
- package/src/modules/qa/skills/webapp-testing/LICENSE.txt +202 -0
- package/src/modules/qa/skills/webapp-testing/SKILL.md +96 -0
- package/src/modules/qa/skills/webapp-testing/examples/console_logging.py +35 -0
- package/src/modules/qa/skills/webapp-testing/examples/element_discovery.py +40 -0
- package/src/modules/qa/skills/webapp-testing/examples/static_html_automation.py +33 -0
- package/src/modules/qa/skills/webapp-testing/scripts/with_server.py +106 -0
- package/tools/autodoc-npx-wrapper.js +34 -0
- package/tools/cli/autodoc-cli.js +55 -0
- package/tools/cli/commands/install.js +36 -0
- package/tools/cli/commands/status.js +35 -0
- package/tools/cli/commands/uninstall.js +60 -0
- package/tools/cli/installers/lib/core/installer.js +164 -0
- package/tools/cli/installers/lib/core/manifest.js +49 -0
- package/tools/cli/installers/lib/ide/manager.js +112 -0
- package/tools/cli/installers/lib/ide/platform-codes.yaml +207 -0
- package/tools/cli/installers/lib/modules/manager.js +59 -0
- package/tools/cli/lib/ui.js +199 -0
- package/tools/cli/lib/welcome.js +82 -0
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
# Example: Healthy SaaS Metrics
|
|
2
|
+
|
|
3
|
+
**Company:** ProjectHub (mid-market project management SaaS)
|
|
4
|
+
**Stage:** Growth stage, Series B funded
|
|
5
|
+
**Customer Base:** 200 accounts, 20,000 users
|
|
6
|
+
**Period:** Monthly snapshot
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Revenue Metrics
|
|
11
|
+
|
|
12
|
+
### MRR/ARR
|
|
13
|
+
```
|
|
14
|
+
Starting MRR: $2,000,000
|
|
15
|
+
+ New MRR: $100,000 (10 new accounts)
|
|
16
|
+
+ Expansion MRR: $80,000 (upsells + usage growth)
|
|
17
|
+
- Churned MRR: $30,000 (5 accounts churned)
|
|
18
|
+
- Contraction MRR: $10,000 (3 accounts downgraded)
|
|
19
|
+
Ending MRR: $2,140,000
|
|
20
|
+
|
|
21
|
+
MRR Growth Rate: 7% MoM
|
|
22
|
+
ARR: $25.7M
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### ARPA/ARPU
|
|
26
|
+
```
|
|
27
|
+
ARPA = $2,140,000 / 200 accounts = $10,700/month
|
|
28
|
+
ARPU = $2,140,000 / 20,000 users = $107/month
|
|
29
|
+
Average seats per account = 100 users
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### Revenue Components
|
|
33
|
+
```
|
|
34
|
+
New MRR: $100K (5% of total)
|
|
35
|
+
Expansion MRR: $80K (4% of total)
|
|
36
|
+
Churned MRR: $30K (1.5% of total)
|
|
37
|
+
Contraction MRR: $10K (0.5% of total)
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Retention & Expansion Metrics
|
|
43
|
+
|
|
44
|
+
### Churn Rate
|
|
45
|
+
```
|
|
46
|
+
Logo Churn: 5 / 200 = 2.5% monthly (~26% annual)
|
|
47
|
+
Revenue Churn: $30K / $2M = 1.5% monthly (~17% annual)
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
**Analysis:** Revenue churn < logo churn = losing smaller customers, which is healthy.
|
|
51
|
+
|
|
52
|
+
### NRR
|
|
53
|
+
```
|
|
54
|
+
Starting ARR: $24M
|
|
55
|
+
Expansion: $960K (annual)
|
|
56
|
+
Churned: $360K (annual)
|
|
57
|
+
Contraction: $120K (annual)
|
|
58
|
+
Ending ARR: $24.48M
|
|
59
|
+
|
|
60
|
+
NRR = $24.48M / $24M = 102%
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### Quick Ratio
|
|
64
|
+
```
|
|
65
|
+
Gains = $100K + $80K = $180K
|
|
66
|
+
Losses = $30K + $10K = $40K
|
|
67
|
+
Quick Ratio = $180K / $40K = 4.5
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Analysis
|
|
73
|
+
|
|
74
|
+
### ✅ Strengths
|
|
75
|
+
|
|
76
|
+
**Strong growth:**
|
|
77
|
+
- 7% MoM MRR growth
|
|
78
|
+
- Healthy mix: 5% new + 4% expansion
|
|
79
|
+
|
|
80
|
+
**Excellent retention:**
|
|
81
|
+
- 2.5% logo churn (below 5% threshold)
|
|
82
|
+
- 1.5% revenue churn (better than logo)
|
|
83
|
+
- 102% NRR (growing without new logos)
|
|
84
|
+
|
|
85
|
+
**Efficient expansion:**
|
|
86
|
+
- $80K expansion MRR (4% of base)
|
|
87
|
+
- Expansion-driven NRR
|
|
88
|
+
- Average expansion per account: $400/month
|
|
89
|
+
|
|
90
|
+
**Sustainable growth:**
|
|
91
|
+
- Quick Ratio 4.5 (gains far exceed losses)
|
|
92
|
+
- Revenue churn declining (was 2% six months ago)
|
|
93
|
+
- Newer cohorts retain better than older cohorts
|
|
94
|
+
|
|
95
|
+
### 📊 Opportunities
|
|
96
|
+
|
|
97
|
+
**Expansion room:**
|
|
98
|
+
- NRR at 102% is good, but room to grow to 110-120%
|
|
99
|
+
- Only 40% of customers have expanded (could push to 60%)
|
|
100
|
+
- Cross-sell opportunity: 30% of customers don't use integrations add-on
|
|
101
|
+
|
|
102
|
+
**ARPU optimization:**
|
|
103
|
+
- $107/user is solid for mid-market, but enterprise segment shows $200/user potential
|
|
104
|
+
- Could introduce premium tier for advanced features
|
|
105
|
+
|
|
106
|
+
**Reduce churn:**
|
|
107
|
+
- 2.5% logo churn is acceptable but not excellent
|
|
108
|
+
- Analysis shows 70% of churn happens in first 90 days (onboarding problem)
|
|
109
|
+
- Fix: Improve onboarding, aim for <2% logo churn
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Actions Recommended
|
|
114
|
+
|
|
115
|
+
1. **Scale acquisition aggressively** — Unit economics are strong (see `saas-economics-efficiency-metrics` for CAC/LTV)
|
|
116
|
+
2. **Improve onboarding** — Reduce early churn from 5% to 3% in first 90 days
|
|
117
|
+
3. **Expand cross-sell** — Push integrations add-on to 30% of base without it (potential +$30K MRR)
|
|
118
|
+
4. **Test premium tier** — 20 enterprise customers show willingness to pay 2x for advanced features
|
|
119
|
+
5. **Monitor cohort retention** — Continue tracking that new cohorts retain better than old
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
## Cohort Retention Trend (Positive Signal)
|
|
124
|
+
|
|
125
|
+
| Cohort | Month 6 Retention | Month 12 Retention |
|
|
126
|
+
|--------|-------------------|---------------------|
|
|
127
|
+
| 12 months ago | 85% | 78% |
|
|
128
|
+
| 6 months ago | 88% | TBD |
|
|
129
|
+
| Current | 92% (on track) | TBD |
|
|
130
|
+
|
|
131
|
+
**Analysis:** Newer cohorts retaining better = product improvements working. Safe to scale acquisition.
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
# Example: Warning Signs (Leaky Bucket)
|
|
2
|
+
|
|
3
|
+
**Company:** MarketingFlow (SMB marketing automation SaaS)
|
|
4
|
+
**Stage:** Early growth, post-Seed
|
|
5
|
+
**Customer Base:** 2,000 accounts, 10,000 users
|
|
6
|
+
**Period:** Monthly snapshot
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Revenue Metrics
|
|
11
|
+
|
|
12
|
+
### MRR/ARR
|
|
13
|
+
```
|
|
14
|
+
Starting MRR: $500,000
|
|
15
|
+
+ New MRR: $100,000 (200 new accounts)
|
|
16
|
+
+ Expansion MRR: $5,000 (minimal upsells)
|
|
17
|
+
- Churned MRR: $50,000 (120 accounts churned)
|
|
18
|
+
- Contraction MRR: $10,000 (40 accounts downgraded)
|
|
19
|
+
Ending MRR: $545,000
|
|
20
|
+
|
|
21
|
+
MRR Growth Rate: 9% MoM (but driven entirely by new customer acquisition)
|
|
22
|
+
ARR: $6.5M
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### ARPA/ARPU
|
|
26
|
+
```
|
|
27
|
+
ARPA = $545,000 / 2,000 accounts = $272/month
|
|
28
|
+
ARPU = $545,000 / 10,000 users = $54.50/month
|
|
29
|
+
Average seats per account = 5 users
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### Revenue Components
|
|
33
|
+
```
|
|
34
|
+
New MRR: $100K (20% of base — very high)
|
|
35
|
+
Expansion MRR: $5K (1% of base — very low)
|
|
36
|
+
Churned MRR: $50K (10% of base — crisis level)
|
|
37
|
+
Contraction MRR: $10K (2% of base — concerning)
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Retention & Expansion Metrics
|
|
43
|
+
|
|
44
|
+
### Churn Rate
|
|
45
|
+
```
|
|
46
|
+
Logo Churn: 120 / 2,000 = 6% monthly (~50% annual)
|
|
47
|
+
Revenue Churn: $50K / $500K = 10% monthly (~69% annual)
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
**Analysis:** Revenue churn > logo churn = losing bigger customers. Crisis signal.
|
|
51
|
+
|
|
52
|
+
### NRR
|
|
53
|
+
```
|
|
54
|
+
Starting ARR: $6M
|
|
55
|
+
Expansion: $60K (annual)
|
|
56
|
+
Churned: $600K (annual)
|
|
57
|
+
Contraction: $120K (annual)
|
|
58
|
+
Ending ARR: $5.34M
|
|
59
|
+
|
|
60
|
+
NRR = $5.34M / $6M = 89%
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
**Analysis:** NRR <100% = contracting base. Losing revenue from existing customers faster than expanding them.
|
|
64
|
+
|
|
65
|
+
### Quick Ratio
|
|
66
|
+
```
|
|
67
|
+
Gains = $100K + $5K = $105K
|
|
68
|
+
Losses = $50K + $10K = $60K
|
|
69
|
+
Quick Ratio = $105K / $60K = 1.75
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
**Analysis:** Quick Ratio <2 = leaky bucket. Barely outpacing losses.
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## Cohort Retention Trend (Negative Signal)
|
|
77
|
+
|
|
78
|
+
| Cohort | Month 3 Retention | Month 6 Retention | Month 12 Retention |
|
|
79
|
+
|--------|-------------------|-------------------|---------------------|
|
|
80
|
+
| 12 months ago | 82% | 75% | 68% |
|
|
81
|
+
| 6 months ago | 75% | 65% | TBD |
|
|
82
|
+
| Current | 68% (on track) | TBD | TBD |
|
|
83
|
+
|
|
84
|
+
**Analysis:** Newer cohorts churning FASTER than older cohorts. Product-market fit is degrading.
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## Analysis
|
|
89
|
+
|
|
90
|
+
### 🚨 Critical Problems
|
|
91
|
+
|
|
92
|
+
**Unsustainable churn:**
|
|
93
|
+
- 6% monthly logo churn = ~50% annual (crisis level)
|
|
94
|
+
- 10% monthly revenue churn = ~69% annual (existential threat)
|
|
95
|
+
- Revenue churn > logo churn = losing high-value customers
|
|
96
|
+
- Churn rate increasing (was 4% six months ago)
|
|
97
|
+
|
|
98
|
+
**Cohort degradation:**
|
|
99
|
+
- Newer customers churn faster than older customers
|
|
100
|
+
- Month 6 retention: 75% → 65% → on track for 58%
|
|
101
|
+
- This signals product-market fit is getting WORSE, not better
|
|
102
|
+
|
|
103
|
+
**No expansion engine:**
|
|
104
|
+
- Expansion revenue only 1% of MRR (should be 10-30%)
|
|
105
|
+
- NRR at 89% (contracting, not expanding)
|
|
106
|
+
- Only 5% of customers have ever expanded
|
|
107
|
+
|
|
108
|
+
**Leaky bucket:**
|
|
109
|
+
- Quick Ratio 1.75 (barely exceeding losses)
|
|
110
|
+
- Losing $60K/month, only gaining $105K/month
|
|
111
|
+
- Running on a treadmill: need 200 new customers/month just to stay flat
|
|
112
|
+
|
|
113
|
+
**Revenue dependency:**
|
|
114
|
+
- 90% of growth from new customer acquisition
|
|
115
|
+
- If acquisition slows, revenue will shrink immediately
|
|
116
|
+
- Retention is broken—scaling will just accelerate the problem
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
### 📊 Root Cause Investigation Needed
|
|
121
|
+
|
|
122
|
+
**Why is churn increasing?**
|
|
123
|
+
- Product quality degrading?
|
|
124
|
+
- Wrong customer segment (poor fit)?
|
|
125
|
+
- Onboarding failures?
|
|
126
|
+
- Competitive pressure?
|
|
127
|
+
- Pricing too high for value delivered?
|
|
128
|
+
|
|
129
|
+
**Why are newer cohorts worse?**
|
|
130
|
+
- Customer acquisition quality degrading?
|
|
131
|
+
- Product changes breaking key use cases?
|
|
132
|
+
- Support quality declining as company scales?
|
|
133
|
+
|
|
134
|
+
**Why no expansion?**
|
|
135
|
+
- No upsell paths in packaging?
|
|
136
|
+
- Customers not reaching "aha moment" where they'd expand?
|
|
137
|
+
- Product doesn't grow with customer needs?
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
## Actions Recommended (URGENT)
|
|
142
|
+
|
|
143
|
+
### 🛑 STOP Scaling Acquisition
|
|
144
|
+
|
|
145
|
+
Do NOT increase marketing spend until retention is fixed. Scaling a leaky bucket just burns cash faster.
|
|
146
|
+
|
|
147
|
+
**Why:** At current churn rates, every dollar spent acquiring customers leaks out within 12 months. Fix the bucket first.
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
### 🔥 Priority 1: Fix Retention (Weeks 1-4)
|
|
152
|
+
|
|
153
|
+
**Investigate churn:**
|
|
154
|
+
1. Run churn interviews with 20-30 churned customers
|
|
155
|
+
2. Segment churn by cohort, use case, customer size
|
|
156
|
+
3. Identify top 3 churn reasons
|
|
157
|
+
|
|
158
|
+
**Quick wins:**
|
|
159
|
+
1. Improve onboarding (70% of churn happens in first 60 days)
|
|
160
|
+
2. Proactive support for at-risk accounts (identify usage drop-offs)
|
|
161
|
+
3. Re-engage dormant accounts before they churn
|
|
162
|
+
|
|
163
|
+
**Goal:** Reduce logo churn from 6% to 4% within 8 weeks, target 3% within 16 weeks.
|
|
164
|
+
|
|
165
|
+
---
|
|
166
|
+
|
|
167
|
+
### 🔥 Priority 2: Build Expansion Engine (Weeks 5-8)
|
|
168
|
+
|
|
169
|
+
**Create upsell paths:**
|
|
170
|
+
1. Introduce premium tier (advanced features)
|
|
171
|
+
2. Usage-based add-ons (additional seats, integrations)
|
|
172
|
+
3. Cross-sell complementary features
|
|
173
|
+
|
|
174
|
+
**Identify expansion candidates:**
|
|
175
|
+
1. Which customers use product heavily? (Target for upsell)
|
|
176
|
+
2. Which customers hit usage limits? (Offer expansion)
|
|
177
|
+
|
|
178
|
+
**Goal:** Increase expansion MRR from 1% to 5% of base within 12 weeks.
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
### 🔥 Priority 3: Improve Cohort Retention (Ongoing)
|
|
183
|
+
|
|
184
|
+
**Track cohorts rigorously:**
|
|
185
|
+
1. Weekly cohort retention dashboards
|
|
186
|
+
2. Compare new cohorts to baseline (75% at Month 6)
|
|
187
|
+
3. Don't scale until new cohorts retain BETTER than old cohorts
|
|
188
|
+
|
|
189
|
+
**Product improvements:**
|
|
190
|
+
1. Fix onboarding (time-to-value)
|
|
191
|
+
2. Improve core use cases (reduce churn reasons)
|
|
192
|
+
3. Add sticky features (integrations, data accumulation)
|
|
193
|
+
|
|
194
|
+
**Goal:** Reverse cohort degradation trend within 16 weeks. New cohorts should retain at 75%+ by Month 6.
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
### ✅ Success Criteria (Fix Before Scaling)
|
|
199
|
+
|
|
200
|
+
Do NOT scale acquisition until:
|
|
201
|
+
- [ ] Logo churn <4% monthly (ideally <3%)
|
|
202
|
+
- [ ] Revenue churn <5% monthly
|
|
203
|
+
- [ ] NRR >100% (expansion exceeds churn)
|
|
204
|
+
- [ ] Quick Ratio >2.5 (ideally >4)
|
|
205
|
+
- [ ] New cohorts retain same or better than old cohorts
|
|
206
|
+
- [ ] Expansion MRR >5% of total MRR
|
|
207
|
+
|
|
208
|
+
**Timeline:** 12-16 weeks to fix. Then reassess scaling.
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
## Financial Impact of Fixing Retention
|
|
213
|
+
|
|
214
|
+
**Current state (bad):**
|
|
215
|
+
- Need 200 new customers/month just to offset churn
|
|
216
|
+
- Net growth: only 80 customers/month after churn
|
|
217
|
+
- 90% of acquisition spend wasted on replacing churned customers
|
|
218
|
+
|
|
219
|
+
**If churn fixed to 3% (good):**
|
|
220
|
+
- Need 60 new customers/month to offset churn
|
|
221
|
+
- Net growth: 140 customers/month (75% more efficient)
|
|
222
|
+
- Acquisition budget goes 3x further
|
|
223
|
+
|
|
224
|
+
**If NRR fixed to 110% (great):**
|
|
225
|
+
- Existing base grows 10%/year without new customers
|
|
226
|
+
- All new acquisition is net growth
|
|
227
|
+
- Can afford higher CAC because LTV increases 2-3x
|
|
228
|
+
|
|
229
|
+
**Bottom line:** Fixing retention is worth 6-12 months of paused growth. Don't skip this.
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
# SaaS Revenue & Growth Metrics Calculator
|
|
2
|
+
|
|
3
|
+
Use this template to calculate your revenue and retention metrics. Fill in your numbers and calculate each metric.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Revenue Metrics
|
|
8
|
+
|
|
9
|
+
### Revenue
|
|
10
|
+
```
|
|
11
|
+
Period: [Month/Quarter/Year]
|
|
12
|
+
Total Customer Payments: $__________
|
|
13
|
+
Revenue = $__________
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
### ARPU (Average Revenue Per User)
|
|
17
|
+
```
|
|
18
|
+
Total Revenue: $__________
|
|
19
|
+
Total Users: __________
|
|
20
|
+
ARPU = Total Revenue / Total Users = $__________
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### ARPA (Average Revenue Per Account)
|
|
24
|
+
```
|
|
25
|
+
MRR: $__________
|
|
26
|
+
Active Accounts: __________
|
|
27
|
+
ARPA = MRR / Active Accounts = $__________
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
### ARPA/ARPU Analysis
|
|
31
|
+
```
|
|
32
|
+
ARPA: $__________
|
|
33
|
+
ARPU: $__________
|
|
34
|
+
Average Seats per Account = ARPA / ARPU = __________
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### ACV (Annual Contract Value)
|
|
38
|
+
```
|
|
39
|
+
Annual Recurring Revenue per Contract: $__________
|
|
40
|
+
(Exclude one-time fees like setup, professional services)
|
|
41
|
+
ACV = $__________
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### MRR/ARR
|
|
45
|
+
```
|
|
46
|
+
Starting MRR: $__________
|
|
47
|
+
|
|
48
|
+
MRR Components:
|
|
49
|
+
+ New MRR (new customers): $__________
|
|
50
|
+
+ Expansion MRR (upsells/cross-sells): $__________
|
|
51
|
+
- Churned MRR (lost customers): $__________
|
|
52
|
+
- Contraction MRR (downgrades): $__________
|
|
53
|
+
|
|
54
|
+
Ending MRR: $__________
|
|
55
|
+
ARR = MRR × 12 = $__________
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Gross vs. Net Revenue
|
|
59
|
+
```
|
|
60
|
+
Gross Revenue: $__________
|
|
61
|
+
- Discounts: $__________
|
|
62
|
+
- Refunds: $__________
|
|
63
|
+
- Credits: $__________
|
|
64
|
+
Net Revenue = $__________
|
|
65
|
+
|
|
66
|
+
Discount Rate = Discounts / Gross Revenue = __________%
|
|
67
|
+
Refund Rate = Refunds / Gross Revenue = __________%
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Retention & Expansion Metrics
|
|
73
|
+
|
|
74
|
+
### Churn Rate (Monthly)
|
|
75
|
+
```
|
|
76
|
+
Logo Churn:
|
|
77
|
+
Starting Customers: __________
|
|
78
|
+
Customers Lost: __________
|
|
79
|
+
Logo Churn Rate = Customers Lost / Starting Customers = __________%
|
|
80
|
+
|
|
81
|
+
Revenue Churn:
|
|
82
|
+
Starting MRR: $__________
|
|
83
|
+
MRR Lost: $__________
|
|
84
|
+
Revenue Churn Rate = MRR Lost / Starting MRR = __________%
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
**Convert to Annual Churn:**
|
|
88
|
+
```
|
|
89
|
+
Monthly Churn Rate: __________%
|
|
90
|
+
Annual Churn Rate = 1 - (1 - Monthly Churn)^12 = __________%
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### NRR (Net Revenue Retention)
|
|
94
|
+
```
|
|
95
|
+
Starting ARR: $__________
|
|
96
|
+
+ Expansion Revenue: $__________
|
|
97
|
+
- Churned Revenue: $__________
|
|
98
|
+
- Contraction Revenue: $__________
|
|
99
|
+
Ending ARR (from cohort): $__________
|
|
100
|
+
|
|
101
|
+
NRR = Ending ARR / Starting ARR × 100 = __________%
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### Expansion Revenue
|
|
105
|
+
```
|
|
106
|
+
Upsells (tier upgrades): $__________
|
|
107
|
+
Cross-sells (add-ons): $__________
|
|
108
|
+
Usage growth: $__________
|
|
109
|
+
Total Expansion Revenue: $__________
|
|
110
|
+
|
|
111
|
+
Expansion as % of MRR = Expansion / Total MRR = __________%
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Quick Ratio
|
|
115
|
+
```
|
|
116
|
+
New MRR: $__________
|
|
117
|
+
Expansion MRR: $__________
|
|
118
|
+
Churned MRR: $__________
|
|
119
|
+
Contraction MRR: $__________
|
|
120
|
+
|
|
121
|
+
Quick Ratio = (New MRR + Expansion MRR) / (Churned MRR + Contraction MRR)
|
|
122
|
+
Quick Ratio = __________
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## Analysis Frameworks
|
|
128
|
+
|
|
129
|
+
### Revenue Mix Analysis
|
|
130
|
+
```
|
|
131
|
+
Product/Segment A Revenue: $__________
|
|
132
|
+
Product/Segment B Revenue: $__________
|
|
133
|
+
Product/Segment C Revenue: $__________
|
|
134
|
+
Total Revenue: $__________
|
|
135
|
+
|
|
136
|
+
Product A % = __________
|
|
137
|
+
Product B % = __________
|
|
138
|
+
Product C % = __________
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
### Cohort Retention Analysis
|
|
142
|
+
```
|
|
143
|
+
Cohort: [Month/Quarter]
|
|
144
|
+
Starting Customers: __________
|
|
145
|
+
|
|
146
|
+
Month 0: 100%
|
|
147
|
+
Month 1: __________%
|
|
148
|
+
Month 2: __________%
|
|
149
|
+
Month 3: __________%
|
|
150
|
+
Month 6: __________%
|
|
151
|
+
Month 12: __________%
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
## Benchmarks & Quality Checks
|
|
157
|
+
|
|
158
|
+
### Revenue Metrics
|
|
159
|
+
- [ ] Gross vs. net revenue clearly labeled
|
|
160
|
+
- [ ] Revenue growth rate > cost growth rate
|
|
161
|
+
- [ ] ARPU/ARPA tracked by cohort (not just blended)
|
|
162
|
+
- [ ] Revenue concentration: Top customer <10%, Top 10 <40%
|
|
163
|
+
|
|
164
|
+
### Retention Metrics
|
|
165
|
+
- [ ] Monthly churn <5% (ideally <2%)
|
|
166
|
+
- [ ] Revenue churn vs. logo churn compared
|
|
167
|
+
- [ ] NRR >100% (ideally >120%)
|
|
168
|
+
- [ ] Quick Ratio >2 (ideally >4)
|
|
169
|
+
|
|
170
|
+
### Cohort Analysis
|
|
171
|
+
- [ ] Recent cohorts perform same or better than older cohorts
|
|
172
|
+
- [ ] Revenue retention tracked, not just logo retention
|
|
173
|
+
- [ ] Expansion analyzed by cohort
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## Red Flags
|
|
178
|
+
|
|
179
|
+
Check if any of these apply:
|
|
180
|
+
|
|
181
|
+
- [ ] Revenue churn > logo churn (losing big customers)
|
|
182
|
+
- [ ] ARPU growing but customer count shrinking (mix shift, not improvement)
|
|
183
|
+
- [ ] Newer cohorts churn faster than older cohorts (PMF degradation)
|
|
184
|
+
- [ ] NRR <100% (contracting, not expanding)
|
|
185
|
+
- [ ] Quick Ratio <2 (leaky bucket)
|
|
186
|
+
- [ ] Discounts >20% or refunds >10% (pricing/product problems)
|
|
187
|
+
- [ ] Revenue concentration >50% in top 10 customers (risk)
|
|
188
|
+
- [ ] Expansion revenue <10% of total MRR (monetization problem)
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
**If you checked any red flags, see SKILL.md Common Pitfalls section for fixes.**
|