# SaaS Metrics Reference

> Standard definitions for SaaS reporting metrics.
> Use these as defaults in the glossary — override only with explicit stakeholder agreement.

---

## Revenue Metrics

### MRR (Monthly Recurring Revenue)
**Definition:** The normalised monthly value of all active subscriptions at a point in time.
**Calculation:** Sum of (subscription_value / billing_period_months) for all active accounts
**Additivity:** Semi-additive — sum across accounts at a point in time; do NOT sum across months (use period-end balance)
**Common variants:**
- New MRR: from accounts that started in the period
- Expansion MRR: from existing accounts who upgraded or added units
- Contraction MRR: from existing accounts who downgraded or removed units (negative)
- Churned MRR: from accounts that cancelled (negative)
- Net New MRR: New + Expansion + Contraction + Churned

**Conflict to watch:** Annual contracts — some teams divide by 12 (normalised MRR), others recognise the full amount upfront. Agree on one approach before modelling.

---

### ARR (Annual Recurring Revenue)
**Definition:** MRR × 12. The annualised run rate of recurring revenue.
**Note:** Not the same as contracted annual value — it's a run-rate metric, not a billing metric.

---

### ARPA (Average Revenue Per Account)
**Definition:** MRR / number of active accounts
**Additivity:** Non-additive (ratio) — store MRR and account count separately

---

## Retention Metrics

### Net Revenue Retention (NRR)
**Definition:** Of the MRR from a cohort of accounts at the start of a period, what percentage remains at the end (including expansions, contractions, and churn)?
**Calculation:** (Opening MRR + Expansion - Contraction - Churn) / Opening MRR × 100
**Benchmark:** >100% means the business grows even without new customers. World-class SaaS = 120%+
**Additivity:** Non-additive — store the components (opening MRR, expansion, contraction, churn)

---

### Gross Revenue Retention (GRR)
**Definition:** Of the MRR from a cohort at the start of a period, what percentage remains (contractions and churn only — expansions excluded, capped at 100%)
**Calculation:** (Opening MRR - Contraction - Churn) / Opening MRR × 100

---

### Logo Churn Rate
**Definition:** Percentage of accounts that cancelled in a period
**Calculation:** Churned accounts / accounts at start of period
**Additivity:** Non-additive — store churned account count and opening account count separately

---

### Revenue Churn Rate
**Definition:** Percentage of MRR lost in a period (from contractions and churn only)
**Calculation:** (Contraction MRR + Churned MRR) / Opening MRR

---

## Acquisition Metrics

### CAC (Customer Acquisition Cost)
**Definition:** Total sales and marketing spend in a period / number of new paying customers acquired
**Additivity:** Non-additive — store spend and new customers separately
**Conflict:** What counts as "sales and marketing spend"? Include/exclude salaries, tools, events?

---

### LTV (Customer Lifetime Value)
**Definition:** Expected total revenue from a customer over their lifetime
**Calculation (simplified):** ARPA / monthly churn rate
**Note:** For modelling purposes, store actual cumulative revenue per account cohort rather than predicted LTV

---

### Payback Period
**Definition:** How many months of revenue are needed to recover the CAC
**Calculation:** CAC / (ARPA × gross margin)
**Additivity:** Non-additive

---

### Trial-to-Paid Conversion Rate
**Definition:** Percentage of trials that convert to a paid subscription
**Calculation:** New paid accounts from trial / trial starts in the same cohort
**Additivity:** Non-additive — store trial starts and conversions separately

---

## Product Metrics

### DAU / MAU (Daily / Monthly Active Users)
**Definition:** Accounts or users who performed at least one meaningful action in the period
**Conflict:** Definition of "meaningful action" varies widely — agree per feature

### Feature Adoption Rate
**Definition:** Percentage of active accounts using a given feature
**Calculation:** Accounts using feature / total active accounts
**Additivity:** Non-additive — store account counts per feature separately

---

## Modelling notes for SaaS

- MRR events should be stored in the subscription fact with an event_type dimension (new / expansion / contraction / churn) to support the MRR waterfall natively
- An accumulating snapshot fact table tracking trial → paid → expanded → churned enables cohort analysis
- Feature usage fact should fire per feature interaction (not per session) to support granular adoption analysis
- Always store components, not ratios — NRR, churn rate, conversion rate are all derived
