SaaS Metrics Dashboard Skill
Calculate every critical SaaS metric from raw subscription data and produce an investor-ready health snapshot. This skill guides Sam Ledger through computing MRR/ARR, churn, retention, unit economics (LTV/CAC), growth efficiency, and Rule of 40 scoring — then formats the output for board decks, investor updates, or feeding into kpi-alert-system threshold monitoring.
When to Use This Skill
Trigger phrases:
- - "What's our MRR / ARR?"
- "Calculate churn rate for last quarter"
- "Give me our LTV:CAC ratio"
- "Build a SaaS metrics snapshot"
- "Are we Rule of 40 compliant?"
- "Show net revenue retention"
- "Prepare metrics for the investor update"
- "What's our quick ratio / magic number?"
- "Track cohort retention"
Fits between:
- -
startup-financial-model — feeds historical actuals into the 3-statement model - INLINECODE1 — outputs threshold-ready metric values for alert monitoring
- INLINECODE2 — supplies the metrics section of investor memos
NOT for:
- - Businesses without recurring subscription revenue
- Real-time live dashboards (needs a BI tool like Metabase/Looker)
- Revenue recognition accounting (use
revenue-recognition-agent) - QBO bookkeeping entries (use
qbo-automation)
Core Metric Definitions
Revenue Metrics
| Metric | Formula | Benchmark |
|---|
| MRR | Sum of all monthly recurring charges | — |
| ARR |
MRR × 12 | — |
| New MRR | MRR from new customers this period | — |
| Expansion MRR | Upsells + seat adds from existing customers | — |
| Churned MRR | MRR lost from cancellations | — |
| Contraction MRR | Downgrades from existing customers | — |
| Net New MRR | New + Expansion − Churned − Contraction | Positive = growing |
Retention Metrics
| Metric | Formula | Benchmark |
|---|
| Logo Churn | Customers churned / Customers at start | <5%/yr for SMB, <2% enterprise |
| Revenue Churn (GRR) |
Churned+Contraction MRR / MRR at start | >80% GRR good |
| Net Revenue Retention (NRR) | (Start MRR + Expansion − Churn − Contraction) / Start MRR | >110% excellent, >100% good |
| Quick Ratio | (New + Expansion) / (Churned + Contraction) | >4 = excellent, >2 = healthy |
Unit Economics
| Metric | Formula | Benchmark |
|---|
| LTV | ARPU / Monthly Churn Rate | 3× CAC minimum |
| CAC |
(S&M Spend) / New Customers | — |
| LTV:CAC | LTV / CAC | >3:1 healthy, >5:1 strong |
| CAC Payback | CAC / (ARPU × Gross Margin%) | <12mo excellent, <18mo good |
| Magic Number | Net New ARR / Prior Quarter S&M Spend | >1.5 = efficient |
Growth Efficiency
| Metric | Formula | Benchmark |
|---|
| MoM Growth | (MRR This Mo − Prior Mo) / Prior Mo | Top decile: 15%+ early stage |
| Rule of 40 |
ARR Growth Rate % + FCF Margin % | ≥40 = healthy |
| Burn Multiple | Net Burn / Net New ARR | <1 = excellent, <2 = good |
Data Inputs Required
Minimum viable inputs:
CODEBLOCK0
Optional (for deeper analysis):
Cohort data (monthly signup + retention by cohort)
Plan-level MRR breakdown
Customer segment breakdown (SMB / Mid-Market / Enterprise)
NPS or CSAT scores
Computation Walkthrough
Step 1: Validate Inputs
- - Confirm all required fields are present
- Check: New MRR + Expansion − Churn − Contraction = Net New MRR
- Flag negative MRR values or impossible churn rates (>100%)
Step 2: Calculate Revenue Metrics
CODEBLOCK2
Step 3: Retention Metrics
CODEBLOCK3
Step 4: Unit Economics
CODEBLOCK4
Step 5: Growth Efficiency
CODEBLOCK5
Step 6: Score & Grade
Apply benchmark thresholds and assign health grades:
- - 🟢 Green: At or above benchmark
- 🟡 Yellow: Within 20% of benchmark
- 🔴 Red: Below benchmark threshold
Output Format
Snapshot Output (Markdown/Structured)
CODEBLOCK6
CSV/JSON Output (for kpi-alert-system)
When feeding downstream systems, output as:
{
"period": "2026-Q1",
"mrr": 125000,
"arr": 1500000,
"nrr": 118,
"grr": 87,
"logo_churn_annual": 4.2,
"quick_ratio": 3.1,
"ltv_cac": 4.5,
"cac_payback_months": 11,
"magic_number": 1.8,
"rule_of_40": 52,
"burn_multiple": 0.9
}
Cohort Retention Analysis
When cohort data is available, build a retention table:
CODEBLOCK8
Key outputs:
- - Average Day-30 retention (target: >85% for SMB, >90% enterprise)
- 12-month retention (logo) — critical for LTV calculation
- Revenue cohort retention (expansion often offsets logo churn)
Segment Benchmarks
By Stage
| Stage | ARR | NRR Target | Logo Churn | Rule of 40 |
|---|
| Pre-Seed | <$1M | >100% | <10% | N/A |
| Seed |
$1-5M | >105% | <8% | Growth-driven |
| Series A | $5-20M | >110% | <5% | ≥20 |
| Series B+ | $20M+ | >120% | <3% | ≥40 |
By Customer Segment
| Segment | NRR Target | Logo Churn | CAC Payback |
|---|
| SMB | >100% | <10%/yr | <6 months |
| Mid-Market |
>110% | <5%/yr | <12 months |
| Enterprise | >120% | <2%/yr | <18 months |
Integration with Other Skills
→ startup-financial-model
Pass current-period actuals as seed inputs for the 3-statement model:
- - Use NRR to project expansion revenue
- Use logo churn to model customer count trajectory
- CAC payback informs S&M budget efficiency
→ kpi-alert-system
Register thresholds for automated alerts:
CODEBLOCK9
→ investor-memo-generator
Feed the snapshot JSON into the metrics section of investor memos. Include MoM/QoQ trends, not just point-in-time values.
Examples
Example 1: Quick Snapshot
Input: "Our MRR is $125K. We added $18K new, $12K expansion, lost $8K churn, $3K contraction. 210 customers, lost 7. Spent $45K on S&M. 75% gross margin. YoY growth 85%. Burning $80K/mo."
Output: Full snapshot with grades, flagging Rule of 40 and burn multiple.
Example 2: Investor Prep
Input: "Prepare Q1 2026 SaaS metrics for our Series A data room"
Output: Formatted snapshot + cohort table + segment breakdown + narrative summary with investor framing.
Example 3: Board Deck Metrics Slide
Input: "Give me the 6 most important metrics for our board deck"
Output: MRR/ARR, NRR, Logo Churn, LTV:CAC, CAC Payback, Rule of 40 — each with prior period comparison and trend indicator.
Red Flags to Surface
Always flag proactively:
- - NRR < 100% — losing more than you're gaining from existing customers
- Quick Ratio < 1 — churn eating new growth
- LTV:CAC < 2 — acquiring customers unprofitably
- CAC Payback > 24 months — severe capital efficiency problem
- Burn Multiple > 3 — burning too much per dollar of new ARR
- Logo churn > 15%/yr — product-market fit concern
Precision. Integrity. Results. — PrecisionLedger
SaaS 指标仪表盘技能
从原始订阅数据计算每一项关键SaaS指标,并生成一份可供投资者使用的健康状态快照。本技能引导Sam Ledger完成MRR/ARR、流失率、留存率、单位经济学(LTV/CAC)、增长效率及40法则评分的计算——然后将输出格式化为董事会演示文稿、投资者更新报告,或输入kpi-alert-system进行阈值监控。
何时使用本技能
触发短语:
- - 我们的MRR/ARR是多少?
- 计算上一季度的流失率
- 给我我们的LTV:CAC比率
- 构建一份SaaS指标快照
- 我们是否符合40法则?
- 显示净收入留存率
- 为投资者更新准备指标
- 我们的速动比率/魔法数字是多少?
- 追踪群组留存率
适用于以下技能之间:
- - startup-financial-model — 将历史实际数据输入三报表模型
- kpi-alert-system — 输出可供阈值监控的指标值
- investor-memo-generator — 为投资者备忘录提供指标部分
不适用于:
- - 没有经常性订阅收入的企业
- 实时仪表盘(需要Metabase/Looker等BI工具)
- 收入确认会计(使用revenue-recognition-agent)
- QBO记账分录(使用qbo-automation)
核心指标定义
收入指标
| 指标 | 公式 | 基准值 |
|---|
| MRR | 所有月度经常性费用之和 | — |
| ARR |
MRR × 12 | — |
| 新增MRR | 本期来自新客户的MRR | — |
| 扩展MRR | 现有客户的增购+席位增加 | — |
| 流失MRR | 因取消而损失的MRR | — |
| 收缩MRR | 现有客户的降级 | — |
| 净新增MRR | 新增+扩展−流失−收缩 | 正数=增长 |
留存指标
| 指标 | 公式 | 基准值 |
|---|
| 客户流失率 | 流失客户数/期初客户数 | 中小企业<5%/年,企业<2% |
| 收入流失率(GRR) |
(流失+收缩)MRR/期初MRR | GRR>80%为良好 |
| 净收入留存率(NRR) | (期初MRR+扩展−流失−收缩)/期初MRR | >110%优秀,>100%良好 |
| 速动比率 | (新增+扩展)/(流失+收缩) | >4=优秀,>2=健康 |
单位经济学
| 指标 | 公式 | 基准值 |
|---|
| LTV | ARPU/月度流失率 | 最低为CAC的3倍 |
| CAC |
(销售与市场支出)/新客户数 | — |
| LTV:CAC | LTV/CAC | >3:1健康,>5:1强劲 |
| CAC回收期 | CAC/(ARPU×毛利率%) | <12个月优秀,<18个月良好 |
| 魔法数字 | 净新增ARR/上季度销售与市场支出 | >1.5=高效 |
增长效率
| 指标 | 公式 | 基准值 |
|---|
| 月环比增长 | (本月MRR−上月MRR)/上月MRR | 早期阶段前10%:15%+ |
| 40法则 |
ARR增长率%+自由现金流利润率% | ≥40=健康 |
| 烧钱倍数 | 净烧钱额/净新增ARR | <1=优秀,<2=良好 |
所需数据输入
最低可行输入:
期间:[月/季度]
期初MRR:$_
新增MRR:$_
扩展MRR:$_
流失MRR:$_
收缩MRR:$_
新增客户数:_
流失客户数:_
期初总客户数:_
销售与市场支出(期间):$_
毛利率%:_
ARR增长率(同比%):_
自由现金流或经营现金流:$_
可选(用于更深入分析):
群组数据(月度注册+按群组留存)
按计划级别的MRR细分
客户细分(中小企业/中端市场/企业)
NPS或CSAT评分
计算流程
步骤1:验证输入
- - 确认所有必填字段已提供
- 检查:新增MRR+扩展−流失−收缩=净新增MRR
- 标记负值MRR或不可能的流失率(>100%)
步骤2:计算收入指标
python
net
newmrr = new
mrr + expansionmrr - churned
mrr - contractionmrr
arr = (mrr
start + netnew_mrr) * 12
步骤3:留存指标
python
logo
churn = customerschurned / customers_start
grr = 1 - ((churned
mrr + contractionmrr) / mrr_start)
nrr = (mrr
start + expansionmrr - churned
mrr - contractionmrr) / mrr_start
quick
ratio = (newmrr + expansion
mrr) / (churnedmrr + contraction_mrr)
步骤4:单位经济学
python
arpu = (mrr
start + netnew
mrr) / (customersstart + new
customers - customerschurned)
ltv = arpu / (logo_churn / 12) # 年化转为月度流失率
cac = sm
spend / newcustomers
ltv_cac = ltv / cac
cac
paybackmonths = cac / (arpu * gross_margin)
magic
number = (netnew
arr) / priorsm_spend
步骤5:增长效率
python
rule
of40 = arr
growthpct + fcf
marginpct
burn
multiple = abs(netburn) / net
newarr # 仅当烧钱时
步骤6:评分与评级
应用基准阈值并分配健康等级:
- - 🟢 绿色:达到或超过基准
- 🟡 黄色:在基准的20%以内
- 🔴 红色:低于基准阈值
输出格式
快照输出(Markdown/结构化)
═══════════════════════════════════════
SaaS指标快照 — [期间]
公司:[名称] | 截至:[日期]
═══════════════════════════════════════
收入
MRR: $,
ARR: $,
净新增MRR: $, (新增:$X | 扩展:$X | 流失:-$X)
月环比增长: X.X% [🟢/🟡/🔴]
留存
NRR: XXX% [🟢/🟡/🔴] (基准:>110%)
GRR: XX% [🟢/🟡/🔴] (基准:>80%)
客户流失率: X.X% [🟢/🟡/🔴] (基准:<5%/年)
速动比率: X.X [🟢/🟡/🔴] (基准:>2)
单位经济学
LTV:CAC: X.Xx [🟢/🟡/🔴] (基准:>3:1)
CAC回收期: XX个月 [🟢/🟡/🔴] (基准:<18个月)
魔法数字: X.X [🟢/🟡/🔴] (基准:>1.5)
效率
40法则: XX [🟢/🟡/🔴] (基准:≥40)
烧钱倍数: X.X [🟢/🟡/🔴] (基准:<2)
总体健康状态: 🟢 强劲 / 🟡 关注 / 🔴 风险
主要风险: [1-3个需要关注的指标]
CSV/JSON输出(用于kpi-alert-system)
当输入下游系统时,输出为:
json
{
period: 2026-Q1,
mrr: 125000,
arr: 1500000,
nrr: 118,
grr: 87,
logo
churnannual: 4.2,
quick_ratio: 3.1,
ltv_cac: 4.5,
cac
paybackmonths: 11,
magic_number: 1.8,
rule
of40: 52,
burn_multiple: 0.9
}
群组