SaaS
startup_valuation.saas
¶
SaaS-specific valuation metrics and methods.
Chapter 11: Industry-Specific Valuation Frameworks — SaaS
Classes¶
Functions¶
arr(subscription_values)
¶
Calculate Annual Recurring Revenue.
Formula: ARR = Σ Annual Subscription Valueᵢ
Source code in src/startup_valuation/saas.py
mrr(arr_value)
¶
Calculate Monthly Recurring Revenue.
Formula: MRR = ARR / 12
cac(sales_marketing_expense, new_customers)
¶
Calculate Customer Acquisition Cost.
Formula: CAC = Sales & Marketing Expenses / New Customers
Source code in src/startup_valuation/saas.py
ltv_saas(arpu, gross_margin, churn_rate)
¶
Calculate SaaS Lifetime Value.
Formula: LTV = (ARPU × Gross Margin) / Churn Rate
Example
result = ltv_saas(100, 0.80, 0.05) result.value 1600.0
Source code in src/startup_valuation/saas.py
net_revenue_retention(starting_revenue, ending_revenue, expansion_revenue=0)
¶
Calculate Net Revenue Retention.
Formula: NRR = (Revenue_end - Churn + Expansion) / Revenue_start
Source code in src/startup_valuation/saas.py
cac_payback_period(cac, mrr_per_customer, gross_margin)
¶
Calculate CAC Payback Period.
Formula: CAC Payback = CAC / (MRR per Customer × Gross Margin)
Source code in src/startup_valuation/saas.py
magic_number(net_new_arr, sm_expense_prior)
¶
Calculate SaaS Magic Number.
Formula: Magic Number = Net New ARR_quarter / S&M Expense_prior_quarter
Source code in src/startup_valuation/saas.py
rule_of_40(growth_rate, profit_margin)
¶
Calculate Rule of 40 metric.
Formula: Growth Rate + Profit Margin ≥ 40%
Example
result = rule_of_40(1.18, 0.01) round(result.value, 2) 1.19
Source code in src/startup_valuation/saas.py
saas_revenue_multiple_valuation(arr, multiple)
¶
Value a SaaS company using ARR multiple.
Formula: Valuation = ARR × Multiple
Example
result = saas_revenue_multiple_valuation(400_000_000, 23) result.value 9200000000.0