Arte SheetsLearn. Try. Understand.

Venture Capital & Startup Cap Tables

Broad-Based Weighted Average vs Full Ratchet Formula

Calculate Down-Round Preferred Conversion Price under Broad-Based Weighted Average CP_new = CP_0 * (A + B) / (A + C), Narrow-Based Weighted Average, and Full Ratchet anti-dilution.

Compare Broad-Based Weighted Average against punitive Full Ratchet down-round repricing!

When a startup raises a down round at P_down < Initial_Conversion_Price CP_0, NVCA charter anti-dilution clauses reprice prior Preferred Stock downward so each Series A share converts into CP_0 / CP_new Common shares! Under standard Broad-Based Weighted Average, CP_BB = CP_0 * (A + B) / (A + C), where A = Issued_Common_and_Preferred + Unallocated_Option_Pool (fully diluted pre-money shares), B = New_Money / CP_0 (shares that WOULD have been issued at old price CP_0), and C = New_Money / P_down (actual down-round shares issued). A Narrow-Based clause strips the unallocated option pool out of A (shrinking numerator & denominator equally so CP_NB < CP_BB), while a Full Ratchet reprices 100% of Series A all the way down to P_down regardless of whether the startup raised $100,000 or $50,000,000!

Try it on Issued_Pre_Shares S_iss = 9.00M (B2), Unallocated_Option_Pool S_pool = 1.00M (B3 -> Broad-Based A = 10.00M), Series_A_Invested I_A = $10.00M (B4), Initial_CP_0 = $2.00/sh (B5 -> 5.00M initial Series A shares), Down_Round_Cash M_new = $6.00M (B6), and Down_Round_Price P_down = $1.00/sh (B7): B = 6.00 / 2.00 = 3.00M, C = 6.00 / 1.00 = 6.00M, so Broad-Based CP_BB = 2.00 * (10 + 3) / (10 + 6) = $1.6250/sh (converting Series A into 10.00 / 1.6250 = 6.1538M shares, +1.1538M anti-dilution bonus shares); Narrow-Based CP_NB = 2.00 * (9 + 3) / (9 + 6) = $1.6000/sh; and Full Ratchet slashes CP_FR to $1.0000/sh (10.00M shares, +5.00M bonus shares)! A classic cap-table mistake is forgetting MIN(CP_0, ...) so an UP round (P_down = $2.50 > $2.00) accidentally raises CP_BB above $2.00! In a shared Arte Sheets cap table, have a suggester propose the clamped formula and ask the in-app Pro Assistant for a hint: "Check E2 when B7 exceeds B5—why must anti-dilution clamp at initial conversion price CP_0?"

Anti-Dilution Regime ($10M Series A @ $2.00, $6M Down Round @ $1.00)FormulaVerified Output
Broad-Based Conversion Price CP_BBMIN(CP_0, CP_0 * (A_broad + B) / (A_broad + C))$1.6250 / sh (6.1538M sh)
Narrow-Based Conversion Price CP_NBMIN(CP_0, CP_0 * (A_narrow + B) / (A_narrow + C))$1.6000 / sh (6.2500M sh)
Broad-Based Bonus Shares Issued (M)I_A / CP_BB - I_A / CP_0+1.1538M shares
Full Ratchet Bonus Shares Issued (M)I_A / MIN(CP_0, P_down) - I_A / CP_0+5.0000M shares (+3.8462M harsher)

Clamped Broad-Based Weighted Average Conversion Price Formula

Wrap CP_0 * (A + B) / (A + C) inside MIN(CP_0, ...) so up-rounds at P_down >= CP_0 leave CP_BB unchanged at CP_0!

=LET(sh_is, B2, sh_pl, B3, inv_a, B4, cp_in, B5, mn_nw, B6, px_dn, B7, IF(OR(sh_is <= 0, sh_pl < 0, inv_a <= 0, cp_in <= 0, mn_nw <= 0, px_dn <= 0), "Invalid Anti-Dilution Input", LET(a_br, sh_is + sh_pl, b_sh, mn_nw / cp_in, c_sh, mn_nw / px_dn, ROUND(MIN(cp_in, cp_in * (a_br + b_sh) / (a_br + c_sh)), 4))))

Full Ratchet vs Broad-Based Incremental Founder Dilution Formula

Compare Series A converted shares under Full Ratchet I_A / MIN(CP_0, P_down) minus initial shares I_A / CP_0!

=IF(ISTEXT(E2), E2, ROUND(B4 / MIN(B5, B7) - B4 / B5, 4))

Try the example

Use the original values or change them to test your understanding.

Further reading