Tutorials Finance

Sensitivity Analysis with AI: Which Lever Moves Your Startup's Runway More, Churn or CAC?

What is sensitivity analysis?

Sensitivity analysis is a quantitative method for measuring how changes in a single input parameter affect a target output metric while all other variables are held constant. In SaaS financial modeling, the output is typically runway (months until cash runs out) and inputs include churn rate, CAC, ARPU, burn rate, and new customer acquisition rate. The analysis produces an elasticity ranking — a tornado diagram — showing which parameter has the highest leverage on business survival and therefore deserves the most focused investment.

TL;DR

  • -Reducing monthly churn from 7% to 5% increases customer LTV by 40% — the same percentage reduction in CAC has a linear, not exponential, effect
  • -In the model example (B2B SaaS, $45K MRR, 14-month runway), churn rate has a spread of 15+ months vs only 7 months for CAC at ±40% deviation
  • -Churn acts through two mechanisms simultaneously: direct revenue loss plus compounding base contraction — CAC has no compounding effect
  • -Monte Carlo simulation across 10,000 runs shows 28% probability of runway under 12 months even at median base parameters — invisible in single-point forecasts
  • -Strategy A (reduce churn 6%→4% via customer success) beats CAC reduction and growth spending: +6 months runway, LTV/CAC ratio 1.95→3.51 at month 12

Reducing monthly churn from 7% to 5% increases customer LTV by 40%. Reducing CAC by the same 28% increases the LTV/CAC ratio linearly. Churn affects revenue exponentially; CAC affects it linearly. Sensitivity analysis reveals this difference in numbers and helps you decide where to allocate a limited budget.

This article walks through sensitivity analysis methodology for SaaS startups, provides formulas, ready-made AI modeling prompts, and scenario tables. Everything is illustrated with a concrete example: a B2B SaaS with $45K MRR, 320 customers, and a 14-month runway.

What Sensitivity Analysis Is and Why Startups Need It

Sensitivity analysis is a method for assessing how changing one input parameter affects an output metric while holding everything else constant. For a startup, the output metric is runway (months until cash runs out). Input parameters include churn rate, CAC, ARPU, burn rate, and conversion.

Startups operate under uncertainty. Financial models rest on assumptions: “churn will be 5%,” “we’ll bring CAC down to $800.” Sensitivity analysis tests what happens when those assumptions turn out wrong. Which parameter, if it deviates by 20%, kills runway fastest?

Three practical applications:

Investment prioritization. Budget is finite. Should you put $50K into reducing churn (better onboarding, customer success) or into lowering CAC (funnel optimization, new channels)? Sensitivity analysis gives a quantitative answer.

Stress-testing the model. An investor asks: “What happens if churn grows by 50%?” Instead of an intuitive guess, you hand them a table with exact runway, MRR, and cash balance figures.

Finding points of no return. At what churn level does runway drop below 6 months, the critical threshold for raising the next round?

The Base Model: Inputs and Formulas

Sensitivity analysis requires a working financial model. Here is a typical early-stage B2B SaaS.

Input Parameters

ParameterValueDescription
MRR$45,000Monthly Recurring Revenue
Customers320Active base
ARPU$140.63MRR / Customers
Monthly Churn6%Percentage of customers lost per month
CAC$1,200Cost of Acquisition
New customers/mo25Organic + paid channels
Monthly Burn$72,000Operating expenses
Cash Balance$520,000Cash on hand

Runway Calculation Formulas

Runway in its simplest form:

Runway = Cash Balance / Net Burn
Net Burn = Monthly Burn - MRR

For a static model (MRR unchanged): $520,000 / ($72,000 - $45,000) = 19.3 months.

But MRR changes every month. A dynamic model accounts for growth and churn:

MRR(t+1) = MRR(t) x (1 - Churn) + New_Customers x ARPU
Net_New_MRR = New_Customers x ARPU - MRR(t) x Churn
Cash(t+1) = Cash(t) + MRR(t) - Burn - New_Customers x CAC

Runway is the month when Cash(t) first goes negative.

With base parameters, the dynamic model gives a runway of 14 months. The gap from the static estimate (19.3) comes from acquisition costs: 25 customers x $1,200 = $30,000/month in additional burn.

Prompt for Building the Base Model

A prompt for Claude or another LLM that generates a month-by-month financial model:

Build a 24-month month-by-month financial model for a SaaS startup.

Input parameters:
- Current MRR: $45,000
- Number of customers: 320
- ARPU: $140.63
- Monthly churn rate: 6%
- CAC: $1,200
- New customers per month: 25 (constant)
- Monthly burn rate: $72,000 (fixed)
- Cash balance: $520,000
- Marketing spend is included in burn rate

For each month, calculate:
1. Customers at start of month
2. Churned customers (Churn x base)
3. New customers
4. Customers at end of month
5. MRR
6. Revenue - Burn - (New_Customers x CAC) = Net Cash Flow
7. Cash Balance (cumulative)

Identify the month when Cash Balance goes negative (runway).

Format: table, round to nearest dollar.

Result: a 24-row table with monthly detail. Runway at base parameters: month 14.

One-Way Sensitivity Analysis: One Parameter at a Time

One-way analysis varies one parameter at a time, holding everything else constant. The goal is to measure runway’s elasticity to each parameter.

Prompt for One-Way Sensitivity Analysis

Based on the base model, run a one-way sensitivity analysis.

Vary each parameter independently, holding all others at base values.
Range: -40% to +40% in 10% increments.

Parameters to analyze:
1. Monthly Churn Rate (base: 6%)
2. CAC (base: $1,200)
3. ARPU (base: $140.63)
4. New Customers per Month (base: 25)
5. Monthly Burn Rate (base: $72,000)

For each combination, calculate runway (month when cash = 0).

Format: table with parameters in rows and deviations in columns.
Add a "Delta Runway" column: difference from the base scenario (14 months).

Results: Runway Elasticity Table

Parameter-40%-20%Base+20%+40%Spread
Churn Rate24+181411915+
CAC18161412117
ARPU91114172112
New Customers11121416187
Burn Rate211714121011

Spread is the difference between runway at -40% and +40%. The larger the spread, the stronger the parameter’s impact on runway.

Churn rate leads with a spread of 15+ months. Reducing churn by 40% (from 6% to 3.6%) pushes runway beyond 24 months. Increasing it by 40% (to 8.4%) cuts runway to 9 months. CAC comes in last with a spread of 7 months.

Why Churn Has a Non-Linear Effect

Churn operates through two mechanisms simultaneously:

  1. Direct revenue effect. Every churned customer takes their ARPU away permanently. At 6% churn with 320 customers, 19 customers leave per month ($2,672 MRR). At 8.4%, 27 leave ($3,797 MRR).

  2. Compounding effect on the base. Lost customers shrink the base from which next month’s churn is calculated. At high churn, the base contracts faster than it replenishes, creating a negative Net New MRR.

Formula for how customer base evolves over time:

Customers(t) = Customers(0) x (1 - Churn)^t + New/Churn x (1 - (1 - Churn)^t)

When Churn < New/Customers(0), the base grows. When Churn > New/Customers(0), it shrinks. The threshold for our model: 25/320 = 7.8%. Current churn of 6% sits below the threshold, so the base grows slowly, but the margin is thin.

CAC, by contrast, has a linear effect: each additional dollar of CAC increases monthly burn by a fixed amount (New_Customers x delta_CAC). No compounding, no non-linearity.

Two-Way Sensitivity Analysis: Churn x CAC

Two-way analysis varies two parameters simultaneously. The result is a matrix where each cell contains runway for a specific combination.

Prompt for Two-Way Sensitivity Analysis

Build a two-way sensitivity analysis: Churn Rate x CAC.

Churn Rate values (rows): 3%, 4%, 5%, 6%, 7%, 8%, 9%
CAC values (columns): $600, $800, $1,000, $1,200, $1,400, $1,600

All other parameters fixed at base values.
For each combination, calculate runway (months until cash = 0).

Format: matrix. Highlight zones:
- Green: runway > 18 months
- Yellow: 12-18 months
- Red: < 12 months

Churn x CAC Matrix

Churn \ CAC$600$800$1,000$1,200$1,400$1,600
3%24+24+24+24+2219
4%24+24+22191715
5%24+2118161413
6%201715141211
7%16141311109
8%1312111098
9%11109887

The base scenario (Churn 6%, CAC $1,200) is bolded: 14 months.

The pattern is clear: moving up the table (lower churn) adds more runway than moving left (lower CAC). Going from Churn 6% to 4% at CAC $1,200 adds 5 months. Going from CAC $1,200 to $600 at Churn 6% adds 6 months. But halving CAC is an unrealistic scenario, while reducing churn by 2 percentage points is achievable through product improvements.

Tornado Diagram: Visualizing Parameter Impact

A tornado diagram ranks parameters by impact strength. Each parameter is represented as a horizontal bar: the left edge shows runway at -20%, the right edge at +20%.

Prompt for Generating the Tornado Diagram

Based on the one-way sensitivity analysis results, build the data
for a tornado diagram.

For each parameter at +/-20% deviation from base value, specify:
- Runway at -20%
- Runway at +20%
- Absolute spread (difference)

Sort by spread descending.

Then generate Python code (matplotlib) for a tornado diagram with:
- Horizontal bars for each parameter
- A vertical line at the base value (14 months)
- Labels at bar endpoints
- Color coding: blue (favorable deviation), red (unfavorable)

Tornado Diagram Data

RankParameterRunway at -20%Runway at +20%Spread
1Churn Rate18117
2Burn Rate17125
3ARPU11176
4New Customers12164
5CAC16124

Churn Rate is the top parameter. A 20% deviation swings runway by 7 months. CAC has a 4-month spread at the same deviation, nearly half.

Python Code for the Tornado Diagram

import matplotlib.pyplot as plt
import numpy as np

params = ['CAC', 'New Customers', 'ARPU', 'Burn Rate', 'Churn Rate']
low = [16, 12, 11, 17, 18]   # runway at favorable deviation
high = [12, 16, 17, 12, 11]  # runway at unfavorable deviation
base = 14

fig, ax = plt.subplots(figsize=(10, 5))

for i, (param, lo, hi) in enumerate(zip(params, low, high)):
    favorable = max(lo, hi)
    unfavorable = min(lo, hi)
    ax.barh(i, favorable - base, left=base, height=0.5,
            color='#2196F3', alpha=0.8)
    ax.barh(i, unfavorable - base, left=base, height=0.5,
            color='#F44336', alpha=0.8)
    ax.text(favorable + 0.2, i, str(favorable), va='center', fontsize=10)
    ax.text(unfavorable - 0.5, i, str(unfavorable), va='center', fontsize=10)

ax.axvline(x=base, color='black', linewidth=1.5, linestyle='--')
ax.set_yticks(range(len(params)))
ax.set_yticklabels(params, fontsize=11)
ax.set_xlabel('Runway (months)', fontsize=12)
ax.set_title('Tornado Diagram: Sensitivity of Runway to +/-20% Change',
             fontsize=13)
plt.tight_layout()
plt.savefig('tornado_runway.png', dpi=150, bbox_inches='tight')
plt.show()

Scenario Analysis: Three Growth Strategies

The sensitivity analysis showed that churn is the primary lever. Three strategies for deploying a $50,000 budget:

Prompt for Scenario Analysis

Compare three $50,000 investment strategies for a SaaS startup.
Base parameters: MRR $45K, 320 customers, ARPU $140.63,
churn 6%, CAC $1,200, 25 new customers/month,
burn $72K, cash $520K.

Strategy A - "Churn Reduction":
- $50K on customer success (hire CSM, improve onboarding)
- Expected effect: churn drops from 6% to 4% within 2 months
- Burn increases by $4,200/month (CSM salary)

Strategy B - "CAC Reduction":
- $50K on funnel optimization and content marketing
- Expected effect: CAC drops from $1,200 to $900 within 3 months
- Burn increases by $2,000/month (content specialist)

Strategy C - "Acquisition Growth":
- $50K on paid advertising
- Expected effect: new customers grow from 25 to 35 within 1 month
- Burn increases by $12,000/month (ad spend)
- CAC rises to $1,400 (less efficient channels)

For each strategy, build a month-by-month model for 24 months.
Compare: runway, MRR at month 12, cumulative revenue,
customer base at month 12.

Strategy Comparison Results

MetricBaseA: Churn downB: CAC downC: Growth up
Runway14 mo20 mo16 mo13 mo
MRR (mo 12)$48,200$62,400$50,100$53,800
Customers (mo 12)343444357383
Cumulative Revenue (12 mo)$554K$638K$572K$589K
LTV/CAC (mo 12)1.953.512.341.53

Strategy A wins across all metrics. Runway increases by 6 months. MRR by month 12 is 29% above the base. The LTV/CAC ratio nearly doubles, from 1.95 to 3.51. This is the threshold above which investors consider unit economics healthy.

Strategy C paradoxically shrinks runway by one month. More customers means more acquisition spend. At high churn, new customers leave before recovering their CAC. The growth looks like progress but burns cash faster.

Breakeven Analysis: Critical Parameter Thresholds

Breakeven analysis identifies the parameter values at which runway hits critical thresholds.

Prompt for Breakeven Analysis

For the base model, identify critical thresholds for each parameter.

Calculate the value of each parameter at which:
1. Runway = 6 months (critical minimum for fundraising)
2. Runway = 12 months (minimum comfort zone)
3. Runway = 24 months (target)
4. Runway = infinity (Net Burn <= 0, break-even)

Parameters: Churn Rate, CAC, ARPU, New Customers, Burn Rate.
All other parameters at base values.
Format: table with thresholds.

Critical Threshold Table

ParameterRunway = 6 moRunway = 12 moRunway = 24 moBreak-even
Churn Rate10.2%7.1%3.8%2.1%
CAC$2,100$1,500$800$480
ARPU$95$120$165$195
New Customers8183545
Burn Rate$105K$82K$58K$47K

Current churn of 6% sits between the 12-month and 24-month thresholds. Buffer to the critical threshold (6-month runway): 4.2 percentage points. CAC buffer: $900. Churn is closer to the danger zone in relative terms.

To reach break-even, churn needs to fall to 2.1%. That is an ambitious but achievable target for a B2B SaaS with solid product-market fit. Median churn for B2B SaaS runs 3-5% according to industry benchmarks (Benchmark Signal, SaaS Capital Index).

Monte Carlo Simulation: Accounting for Uncertainty

Deterministic sensitivity analysis assumes all parameters except the one being varied are fixed. In reality, all parameters fluctuate simultaneously. Monte Carlo simulation models thousands of scenarios with random deviations across all parameters.

Prompt for Monte Carlo Simulation

Write Python code for a Monte Carlo simulation of SaaS startup runway.

Base parameters:
- MRR: $45,000, Customers: 320, ARPU: $140.63
- Churn: 6%, CAC: $1,200, New Customers: 25/month
- Burn: $72,000, Cash: $520,000

Parameter distributions (normal, truncated):
- Churn: mean=0.06, std=0.015, min=0.01, max=0.15
- CAC: mean=1200, std=300, min=400, max=3000
- New Customers: mean=25, std=5, min=5, max=50
- ARPU: mean=140.63, std=20, min=80, max=250
- Burn: mean=72000, std=8000, min=50000, max=100000

Number of simulations: 10,000
Horizon: 24 months

For each simulation, sample parameters once and calculate
runway (or 24+ if cash doesn't run out).

Output:
1. Histogram of runway distribution
2. Median, P10, P25, P75, P90
3. Probability of runway < 6 months
4. Probability of runway < 12 months
5. Probability of runway > 24 months

Typical Monte Carlo Results (10,000 Simulations)

PercentileRunway
P108 mo
P2511 mo
Median (P50)14 mo
P7519 mo
P9024+ mo
  • Probability of runway < 6 months: ~4%
  • Probability of runway < 12 months: ~28%
  • Probability of runway > 24 months: ~18%

The median matches the deterministic estimate (14 months). But the spread is significant: in 28% of simulations, runway is less than a year. This risk is invisible in a single-point forecast.

Correlation analysis within the simulation confirms the sensitivity analysis findings: the correlation between churn and runway is -0.72 (strong negative); between CAC and runway: -0.34 (moderate). Churn explains twice as much runway variation as CAC.

How to Make Decisions from Sensitivity Analysis

Step 1. Rank parameters by impact. The tornado diagram provides the ranking. In our example: Churn > Burn > ARPU > New Customers ~ CAC.

Step 2. Assess controllability of each parameter. Not all parameters are equally controllable. Burn rate changes with a decision (cut costs). Churn requires product changes, which take longer but produce a stronger effect. ARPU depends on market willingness to pay.

Step 3. Build an Impact x Controllability matrix.

High controllabilityLow controllability
High impactChurn, Burn RateARPU
Low impactCAC, New CustomersMarket factors

Priority: upper-left quadrant, high impact and high controllability.

Step 4. Set target values. From the breakeven table: for runway of 18+ months, churn must be at or below 4.5%. Current: 6%. Goal: reduce by 1.5 pp in 3 months.

Step 5. Choose a strategy and monitor. Launch churn-reduction initiatives. Re-run sensitivity analysis monthly with updated data. Track whether the runway distribution is shifting in the right direction.

Connection to Unit Economics

Sensitivity analysis complements unit economics calculations. Unit economics answers the question “are we making money on each customer?” Sensitivity analysis answers “which unit economics parameter most affects business survival?”

LTV depends directly on churn: LTV = ARPU / Churn. At 6% churn, LTV = $2,344. At 4% churn, LTV = $3,516. A 50% difference. LTV/CAC at 4% churn: 2.93 vs 1.95 at 6% churn. One parameter moves unit economics from the danger zone into healthy territory.

Checklist: Sensitivity Analysis for a Startup

  1. Build a base month-by-month model with current parameters
  2. Run one-way sensitivity analysis for 5-7 key parameters
  3. Build a tornado diagram to rank parameters
  4. Run two-way analysis for the two most influential parameters
  5. Identify breakeven thresholds for each parameter
  6. Run Monte Carlo simulation (10,000 iterations) for probability estimates
  7. Build the Impact x Controllability matrix
  8. Choose 1-2 parameters for focused work
  9. Set target values based on the breakeven table
  10. Repeat the analysis monthly with current data

All prompts work with Claude, GPT-5.4, and Gemini. Monte Carlo simulation requires a Python environment (local or Google Colab). AI generates the code; running and interpreting it is up to the analyst.


Need help with financial modeling for your startup? I help startups build AI products and automate processes — belov.works.

FAQ

How often should a SaaS startup rerun sensitivity analysis?

Monthly, with actual data replacing forecasts. The value compounds over time: the first run establishes baseline elasticity rankings, subsequent runs reveal whether the levers you targeted are actually moving. If churn is your top lever and you’ve invested in customer success for 60 days, the updated analysis should show the tornado bar narrowing — confirming the intervention is working before the impact shows up in revenue.

Can sensitivity analysis be applied before a product has paying customers?

Yes, as a hypothesis-testing tool. Replace actual metrics with research-based assumptions (industry benchmarks, comparable company data) and treat results as scenario maps rather than forecasts. The key output is the same: understanding which parameter, if wrong, creates the biggest risk. A pre-launch startup discovering it’s sensitive to CAC can prioritize organic channels before spending on paid acquisition.

What’s the difference between sensitivity analysis and scenario analysis?

Sensitivity analysis varies one parameter at a time to measure elasticity — it answers “which variable matters most?” Scenario analysis varies multiple parameters simultaneously to model coherent futures — it answers “what does the business look like if we pursue strategy A vs B?” Both are in this article: the one-way and tornado diagram sections are sensitivity analysis; the three-strategy comparison (churn reduction vs CAC reduction vs growth spending) is scenario analysis. They complement each other and should both be used before making capital allocation decisions.