Startup CFO

PyratzLabs Runway Simulator β€” What the Board Sees Every Quarter

P10/P50/P90 runway ranges vs single-point estimates, 15 min generationStartup Finance5 min read

Key Takeaway

A Monte Carlo runway simulation with 10,000 scenarios replaced our back-of-napkin estimates and gave the board probabilistic forecasts they actually trust.

The Problem

Every startup has the runway conversation. "How many months do we have?" And every startup answers it the same way: take current cash, divide by monthly burn, get a number. Maybe adjust for revenue. Maybe not.

This is dangerously naive. It treats the future like a straight line. But burn rate isn't constant β€” it fluctuates with hiring, seasonal costs, and one-off expenses. Revenue isn't constant β€” it has churn, growth variation, and payment delays. And the interactions between these variables create outcomes that simple division can't capture.

PyratzLabs is a holding company. Zama. Artificial-Lab. Billy β€” which just hit €5.5M GMV in Q1. Each entity has its own burn profile, revenue curve, and risk factors. The consolidated runway depends on how all three perform simultaneously. One bad quarter at Billy combined with a Zama hiring push could compress runway by months. Simple math misses these correlations entirely.

Our board deserved better than "about 18 months, give or take." They deserved ranges, probabilities, and scenario analysis.

The Solution

Monte Carlo Financial Simulation paired with Startup Financial Modeling on Mr.Chief. Warren β€” our CFO agent β€” runs the simulation quarterly and generates the board presentation automatically.

The Process

The Monte Carlo engine runs 10,000 simulations with randomized inputs:

yamlShow code
# runway-simulator.yaml
entities:
  pyratzlabs_holdco:
    monthly_burn: { base: 85000, std_dev: 12000 }
    revenue: { base: 15000, growth_rate: 0.03, std_dev: 3000 }
  zama:
    monthly_burn: { base: 320000, std_dev: 45000 }
    revenue: { base: 0, grant_income: { quarterly: 180000, probability: 0.85 }}
  billy:
    monthly_burn: { base: 62000, std_dev: 8000 }
    gmv: { base: 1800000, growth_rate: 0.08, std_dev: 200000 }
    take_rate: 0.12
    payment_delay_days: { mean: 45, std_dev: 15 }

scenarios:
  base: {}
  hire_3_engineers:
    zama.monthly_burn.base: 365000
  billy_2x_growth:
    billy.gmv.growth_rate: 0.15
  major_client_churn:
    billy.gmv.base: 1400000
  fundraise_q3:
    inject_cash: { amount: 5000000, timing: "month_7", probability: 0.6 }

simulation:
  runs: 10000
  horizon_months: 36
  output: [percentiles, distribution_chart, scenario_comparison]

Warren generates the output:

pythonShow code
# Simplified simulation core
for run in range(10000):
    cash = current_cash
    for month in range(36):
        # Each variable drawn from its distribution
        burn = sum(draw_normal(e.burn.base, e.burn.std_dev) for e in entities)
        revenue = sum(calc_revenue(e, month) for e in entities)
        # Payment delays modeled as receivables
        cash_in = collect_receivables(month, payment_delays)
        cash += cash_in - burn
        if cash <= 0:
            runway_months[run] = month
            break
    else:
        runway_months[run] = 36  # Survived full horizon

Board output format:

View details
╔══════════════════════════════════════════════════╗
β•‘  PYRATZLABS CONSOLIDATED RUNWAY β€” Q1 2026       β•‘
╠══════════════════════════════════════════════════╣
β•‘                                                  β•‘
β•‘  Current Cash: €4.2M                             β•‘
β•‘  Monthly Net Burn (P50): €147K                   β•‘
β•‘                                                  β•‘
β•‘  Runway Forecast:                                β•‘
β•‘  β”œβ”€β”€ P10 (worst case):  14 months (May 2027)     β•‘
β•‘  β”œβ”€β”€ P25:               16 months (Jul 2027)     β•‘
β•‘  β”œβ”€β”€ P50 (base case):   18 months (Sep 2027)     β•‘
β•‘  β”œβ”€β”€ P75:               21 months (Dec 2027)     β•‘
β•‘  └── P90 (best case):   24 months (Mar 2028)     β•‘
β•‘                                                  β•‘
β•‘  Probability of <12 months runway: 4.2%          β•‘
β•‘  Probability of cash-flow positive: 12.8%        β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•

The scenario overlays show the board exactly what each decision costs:

View details
Scenario Impact on P50 Runway:
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Scenario               β”‚ P50 Monthsβ”‚ Delta    β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Base case              β”‚ 18        β”‚ β€”        β”‚
β”‚ Hire 3 engineers       β”‚ 15        β”‚ -3 mo    β”‚
β”‚ Billy 2x growth        β”‚ 22        β”‚ +4 mo    β”‚
β”‚ Major client churn     β”‚ 15.5      β”‚ -2.5 mo  β”‚
β”‚ Hire + churn (combo)   β”‚ 12.5      β”‚ -5.5 mo  β”‚
β”‚ Fundraise Q3 (if hit)  β”‚ 28        β”‚ +10 mo   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

The Results

MetricBefore (Manual)After (Monte Carlo)
Calculation methodCash Γ· burn10,000 randomized simulations
Scenario analysis1-2 napkin scenarios5+ overlays with probability
Board confidenceLow β€” "roughly 18 months"High β€” P10/P50/P90 ranges
Preparation time2-3 days per quarter15 minutes generation + review
Payment delay modelingIgnoredFully modeled
Cross-entity correlationNot capturedSimultaneous simulation
Decision support"Can we afford this?""This costs 3 months at P50"

The board's reaction was immediate. Instead of debating whether we "have enough runway," they now ask "what's the P10 scenario if we do X and Y simultaneously?" That's a fundamentally different β€” and better β€” conversation.

Try It Yourself

Install the Monte Carlo Financial Simulator and Startup Financial Modeling skills. Input your actual financials: cash balance, burn breakdown by category, revenue streams with variability. The simulator needs honest standard deviations β€” garbage in, garbage out.

Start with the base case. Get that right. Then add scenarios one at a time. The power is in the combinations β€” most startups die from 2-3 things going wrong simultaneously, not one catastrophic event.


Your board doesn't want a number. They want a distribution. Give them one.

runwayMonte-Carloboard-reportingstartup-financescenario-analysis

Want results like these?

Start free with your own AI team. No credit card required.

PyratzLabs Runway Simulator β€” What the Board Sees Every Quarter β€” Mr.Chief