spaghettiwires calc

VC method calculator

A startup has no track record, so you can't value it by discounting cash flows. The VC method works backwards from the exit: what the company will be worth when investors cash out, and what each investment has to earn by then. From that you get the stake each investor asks for today, the valuation it implies and the price per share. Add as many rounds as you need, and a stock option pool.

Exit
years

How many years from today until the exit. Usually 5 to 10.

%

Leave it at 100% if the required return already prices in the risk, which is what VCs almost always do. Lower it to work with the expected value instead.

Funding rounds

Amount in millions, year from today (0 is today, the start of year 3 is 2) and the yearly return the investors in that round require.

[[ roundName(i) ]]

Stock options
%

The share of the company managers should be able to own at exit through their options. Enter 0 if there are none.

year

When the option shares are created. At the years to exit (the default) they dilute everyone at the end; at 0 the pool comes before the first round and only the founders pay for it.

Shares and currency
shares

What the founders hold today. Only used for the number of new shares and the price per share.

[[ t.error_title ]]

[[ errorText ]]

[[ fmt(t.out_head, { name: roundName(result.first.round), when: yearText(result.first.year) }) ]]

[[ pct(result.first.stake) ]]

[[ fmt(t.out_summary, { amount: money(result.first.amount), pre: money(result.first.preMoney), post: money(result.first.postMoney) }) ]]

[[ fmt(t.out_price, { shares: int(result.first.newShares), price: price(result.first.price) }) ]]

[[ fmt(t.out_founders, { share: pct(result.founders), value: money(result.foundersValue) }) ]]

[[ t.rounds_title ]]

[[ t.rounds_table_help ]]

[[ t.metric ]] [[ roundName(e.round) ]]
[[ t['row_' + row.k] ]] [[ t['row_' + row.k + '_help'] ]] [[ c ]]
[[ t.cap_title ]]

[[ t.cap_help ]]

[[ st.label ]][[ fmt(t.cap_total, { n: int(st.total) }) ]]
[[ t.cap_holder ]] [[ st.short ]]
[[ h.name ]] [[ st.own[h.key] === undefined ? '–' : pct(st.own[h.key]) ]] [[ int(st.own[h.key] * st.total) ]]

How it works

The VC method looks at the startup through the investor's eyes. The question is: how much equity do I have to give up, and for how much cash? The investor doesn't try to price the company today, which is close to impossible for a startup. They look at what their stake will be worth on the day they sell it. That has to pay back a high required return, because many of the startups they back will never get to an exit.

Step by step

  1. Estimate the company's value at exit (V), usually with a multiple from similar companies: users, revenue or earnings times a market multiple.
  2. Grow each investment at its required return for the years left until the exit. That's what the investor's stake must be worth on exit day.
  3. Divide by the exit value to get the share the investor must own at exit.
  4. Later rounds and the option pool will dilute them. Retention is the part of their stake that survives: to end up with the right share, they have to buy more today.
  5. The stake gives the number of new shares to issue, the price per share and the pre-money and post-money valuations.

FV = I · (1 + r)T − t

F = FV / (p · V)

R = 1 − s − Σ Flater rounds

d = F / R

new = d / (1 − d) · shares_before

price = I / new    post-money = I / d

Stock options and later rounds

Good managers expect stock options, and when they're exercised new shares appear and everyone already there gets diluted. Every later round does the same. So the maths runs backwards: the last event before the exit is diluted by nobody, the one before it only by the last, and so on. The pie at exit is the management's share, each round's share, and whatever is left for the founders. If the pool is created before a round, that round doesn't pay for it: that's why investors often ask for the pool to sit in the pre-money.

An example

A social media startup is raising $5 million today. In 5 years it's expected to have 6 million active users, and similar companies trade at $20 per user: $120 million at exit. A VC who wants 50% a year needs those $5 million to become 5 · 1.55 = $37.97 million, which is 31.6% of the company. With the founders holding 1 million shares, that's 462,857 new shares at $10.80 each. At 30% the VC would settle for 15.5%. If management must be able to reach 15%, and another $3 million at 30% is needed at the start of year 3, the first VC has to ask for 39.8% and the second for 6.5%. These are the page's starting values: add a round of 3 million in year 2 at 30% to see it.

A few tips

  • Required returns are high on purpose: 50-70% at seed, 40-60% for a first round, 30-40% later on, 20-30% close to the exit. Actual VC returns are much lower, because the risk of failure is baked into that number.
  • The exit value is the input that matters most and the one you know least. Try a lower multiple: if the deal falls apart, you know where the risk is.
  • If you use the chance of success, lower the required return too. Otherwise you count the risk twice.
  • The result is the investor's view. In a real negotiation the round size matters too, as does the stake the investor wants going in (often 10-25%) and the minimum stake at exit that still makes the deal worth their time.
  • The model assumes plain common shares: no liquidation preferences, dividends, conversion ratios other than 1:1, or investors taking their pro-rata in later rounds. All the maths runs in your browser.

New here?