1. Scope
Projects personal runway for a solo founder drawing on savings plus side income while MRR compounds. It does not model taxes precisely, investment returns on idle cash, or category-level cost-of-living inflation.
2. Inputs and outputs
Inputs
- savings number (currency)
Liquid runway at month zero.
- monthlyExpenses number (currency)
Personal living expenses plus any business costs not covered by MRR.
- sideIncome number (currency) default: 0
Steady side income (freelance, part-time).
- startingMrr number (currency) default: 0
- mrrGrowthRate percent default: 0
Month-over-month compounding growth.
Outputs
- monthsToRamen
Months until MRR + side income covers monthlyExpenses.
- monthsToFullyProfitable
Months until MRR alone covers monthlyExpenses.
- runwayMonths
Months before savings hits zero, net of shortfall each month.
- monthlyTrajectory
Array of per-month savings balance, MRR, net shortfall.
Engine source: src/lib/bootstrapped-runway-calculator/engine.ts
3. Formula / scoring logic
for month m = 1..horizon:
mrr_m = starting_mrr * (1 + growth) ^ m
shortfall = max(0, monthly_expenses - side_income - mrr_m)
savings_m = savings_{m-1} - shortfall
stop when mrr_m + side_income >= monthly_expenses (ramen-profitable)
stop when mrr_m >= monthly_expenses (fully profitable)
stop when savings_m <= 0 (cash-out) 4. Assumptions
- MRR growth compounds monthly at a constant rate — no seasonality.
- Side income is steady. Irregular income should be averaged before entry.
- Taxes and one-offs (insurance, quarterly estimated tax) are captured inside monthlyExpenses or ignored.
5. Data sources
6. Known limitations
- Constant-growth MRR is optimistic past month 12. For longer horizons, consider a staged growth assumption (ramp → plateau) outside the tool.
- No tax engine: rough rule of thumb is to pre-tax expenses by 20–30% before entry, or use the Freelance Tax Estimator for the side-income line.
- Cash-out logic assumes savings are liquid. Home equity, retirement accounts, and locked instruments are not runway.
7. Reproducibility
Input
savings = 20000, monthlyExpenses = 3500, sideIncome = 1500, startingMrr = 200, mrrGrowthRate = 10%.
Expected output
Ramen-profitable at ~month 13 (MRR + side ≥ expenses); runway to cash-out ~month 14 at baseline.
8. Change log
- 2026-04-24 methodology page first published.
Worked example
Run live against the same engine this site ships
(/engines/bootstrapped-runway-calculator.js).
The inputs and outputs below are recomputed on every build and
independently re-verified in CI — they are never hand-authored.
Input
- tool
- bootstrapped_runway_calculator
- personal_savings
- 30000
- monthly_personal_expenses
- 3000
- side_income
- 0
- current_mrr
- 500
- monthly_mrr_growth
- 10
- monthly_business_costs
- 200
Output
- personalRunwayMonths
- 14
- monthsToRamenProfitable
- 19
- monthsToFullyProfitable
- 20
- breakEvenMrr
- 3200
- ramenMrr
- 3000
- timeline[0].month
- 0
- timeline[0].savings
- 30000
- timeline[0].mrr
- 500
- timeline[0].netCashFlow
- -2700
- timeline[1].month
- 1
- timeline[1].savings
- 27300
- timeline[1].mrr
- 550
- timeline[1].netCashFlow
- -2650
- timeline[2].month
- 2
- timeline[2].savings
- 24650
- timeline[2].mrr
- 605
- timeline[2].netCashFlow
- -2595
- timeline[3].month
- 3
- timeline[3].savings
- 22055
- timeline[3].mrr
- 665.5
- timeline[3].netCashFlow
- -2534.5
- timeline[4].month
- 4
- timeline[4].savings
- 19520.5
- timeline[4].mrr
- 732.05
- timeline[4].netCashFlow
- -2467.95
- timeline[5].month
- 5
- timeline[5].savings
- 17052.55
- timeline[5].mrr
- 805.26
- timeline[5].netCashFlow
- -2394.74
- timeline[6].month
- 6
- timeline[6].savings
- 14657.81
- timeline[6].mrr
- 885.78
- timeline[6].netCashFlow
- -2314.22
- timeline[7].month
- 7
- timeline[7].savings
- 12343.59
- timeline[7].mrr
- 974.36
- timeline[7].netCashFlow
- -2225.64
- timeline[8].month
- 8
- timeline[8].savings
- 10117.94
- timeline[8].mrr
- 1071.79
- timeline[8].netCashFlow
- -2128.21
- timeline[9].month
- 9
- timeline[9].savings
- 7989.74
- timeline[9].mrr
- 1178.97
- timeline[9].netCashFlow
- -2021.03
- timeline[10].month
- 10
- timeline[10].savings
- 5968.71
- timeline[10].mrr
- 1296.87
- timeline[10].netCashFlow
- -1903.13
- timeline[11].month
- 11
- timeline[11].savings
- 4065.58
- timeline[11].mrr
- 1426.56
- timeline[11].netCashFlow
- -1773.44
- timeline[12].month
- 12
- timeline[12].savings
- 2292.14
- timeline[12].mrr
- 1569.21
- timeline[12].netCashFlow
- -1630.79
- timeline[13].month
- 13
- timeline[13].savings
- 661.36
- timeline[13].mrr
- 1726.14
- timeline[13].netCashFlow
- -1473.86
- timeline[14].month
- 14
- timeline[14].savings
- -812.51
- timeline[14].mrr
- 1898.75
- timeline[14].netCashFlow
- -1301.25
- timeline[15].month
- 15
- timeline[15].savings
- -2113.76
- timeline[15].mrr
- 2088.62
- timeline[15].netCashFlow
- -1111.38
- timeline[16].month
- 16
- timeline[16].savings
- -3225.14
- timeline[16].mrr
- 2297.49
- timeline[16].netCashFlow
- -902.51
- timeline[17].month
- 17
- timeline[17].savings
- -4127.65
- timeline[17].mrr
- 2527.24
- timeline[17].netCashFlow
- -672.76
- timeline[18].month
- 18
- timeline[18].savings
- -4800.41
- timeline[18].mrr
- 2779.96
- timeline[18].netCashFlow
- -420.04
- timeline[19].month
- 19
- timeline[19].savings
- -5220.45
- timeline[19].mrr
- 3057.95
- timeline[19].netCashFlow
- -142.05
- timeline[20].month
- 20
- timeline[20].savings
- -5362.5
- timeline[20].mrr
- 3363.75
- timeline[20].netCashFlow
- 163.75
- timeline[21].month
- 21
- timeline[21].savings
- -5198.75
- timeline[21].mrr
- 3700.12
- timeline[21].netCashFlow
- 500.12
- timeline[22].month
- 22
- timeline[22].savings
- -4698.63
- timeline[22].mrr
- 4070.14
- timeline[22].netCashFlow
- 870.14
- timeline[23].month
- 23
- timeline[23].savings
- -3828.49
- timeline[23].mrr
- 4477.15
- timeline[23].netCashFlow
- 1277.15
- timeline[24].month
- 24
- timeline[24].savings
- -2551.34
- timeline[24].mrr
- 4924.87
- timeline[24].netCashFlow
- 1724.87
- timeline[25].month
- 25
- timeline[25].savings
- -826.47
- timeline[25].mrr
- 5417.35
- timeline[25].netCashFlow
- 2217.35
- timeline[26].month
- 26
- timeline[26].savings
- 1390.88
- timeline[26].mrr
- 5959.09
- timeline[26].netCashFlow
- 2759.09
- insight
- With $30000 in savings and $3000/mo net personal burn, you have 14 months to make this work. Every month without MRR growth shortens your window.
Frequently asked questions
- What does the Bootstrapped Runway Calculator calculate?
- Projects personal runway for a solo founder drawing on savings plus side income while MRR compounds. It does not model taxes precisely, investment returns on idle cash, or category-level cost-of-living inflation.
- What inputs does the Bootstrapped Runway Calculator need?
- It takes 5 inputs: savings, monthlyExpenses, sideIncome (default 0), startingMrr (default 0), mrrGrowthRate (default 0). Outputs returned: monthsToRamen, monthsToFullyProfitable, runwayMonths, monthlyTrajectory.
- What formula does the Bootstrapped Runway Calculator use?
- The exact computation is: for month m = 1..horizon:; mrr_m = starting_mrr * (1 + growth) ^ m; shortfall = max(0, monthly_expenses - side_income - mrr_m); savings_m = savings_{m-1} - shortfall; stop when mrr_m + side_income >= monthly_expenses (ramen-profitable); stop when mrr_m >= monthly_expenses (fully profitable); stop when savings_m <= 0 (cash-out)
- Can I verify the Bootstrapped Runway Calculator with a worked example?
- Yes. With savings = 20000, monthlyExpenses = 3500, sideIncome = 1500, startingMrr = 200, mrrGrowthRate = 10%. the tool returns Ramen-profitable at ~month 13 (MRR + side ≥ expenses); runway to cash-out ~month 14 at baseline.
- Where does the Bootstrapped Runway Calculator get its benchmark data?
- Reference data is sourced from: US BLS Consumer Expenditure Survey (for users anchoring monthlyExpenses to benchmarks) (as of 2024).
- What can the Bootstrapped Runway Calculator not tell me?
- Known limitations: Constant-growth MRR is optimistic past month 12. For longer horizons, consider a staged growth assumption (ramp → plateau) outside the tool. No tax engine: rough rule of thumb is to pre-tax expenses by 20–30% before entry, or use the Freelance Tax Estimator for the side-income line. Cash-out logic assumes savings are liquid. Home equity, retirement accounts, and locked instruments are not runway.