Methodology

Two engines, both deterministic. A rules-based kill-list produces your score and gap list; a convertible-instrument model computes your dilution from your own cap table. No opinion, no black box. The arithmetic below is exactly what runs.

DiligenceKit is an educational preparation template. It performs no individualized evaluation of your company, and nothing on this page or in the report is legal, investment, tax, financial, or accounting advice, a valuation opinion, or a securities solicitation. The dilution figures are illustrative arithmetic from the inputs you provide — verify every number with your own counsel and accountant.

1 · The kill-list rubric

The kill-list is drawn from general capital-markets diligence practice — the same categories that appear in public model documents (NVCA), accelerator resources (YC's SAFE materials), and law-firm data-room lists (e.g. Cooley GO). Every line is written fresh in plain English. It contains no jurisdiction-specific regulatory language and no employer-confidential material.

Items span seven categories:

How the score is computed

Each item carries a weight: 3 = a deal-killer or re-pricer if found late, 2 = material cleanup, 1 = hygiene. Each item lists the rounds where it's expected (a Series A diligence checks more than a pre-seed). Your score:

expected = items where your round is in item.rounds
score = round( 100 × Σ(weight of items you have) ÷ Σ(weight of all expected items) )
grade = A+ ≥ 90 · A ≥ 80 · B ≥ 65 · C ≥ 50 · D ≥ 35 · F otherwise

The LLM writes nothing here. The score, the gap list, and the ordering are pure rules — the same code runs client-side on the homepage and server-side in your report, so the grades match.

2 · The dilution engine

The engine takes your existing fully-diluted shares, your convertible stack (SAFEs / notes with their terms), and a priced round (new money, pre-money valuation, optional pool refresh), and solves the post-round cap table by fixed point. The finance, from first principles:

SAFE conversion — lowest price wins

Each SAFE converts at whichever term gives the holder the most shares — i.e. the lowest price per share among:

round price    = pre-money ÷ (shares before the new money)
discount price = round price × (1 − discount)
cap price     = cap ÷ (share base the cap is measured against)
shares = investment ÷ min(round, discount, cap price)

Post-money vs. pre-money SAFE

MFN (Most-Favored-Nation)

A bare SAFE with an MFN right and no cap/discount of its own inherits the best terms granted to any other SAFE — the lowest cap and the highest discount on offer — since "best" means whatever yields the lowest conversion price. In the sample report, the MFN angel inherits the $6M cap and converts identically to the capped seed SAFE.

The option-pool shuffle

When investors require a target post-round option pool, it is created pre-money. Because it's carved before the new money, its entire dilution lands on existing holders (founders + converting SAFEs), not the incoming investor. The report shows the points of ownership this quietly moves:

pool shares = poolTarget% × (pre-new base + new-investor shares) ÷ (1 − poolTarget%)
pre-money drag ≈ poolTarget% × (pre-money ÷ post-money)  (pts off existing holders)

Pro-rata

For holders with a pro-rata side letter, the report shows the dollars they'd need to invest in a same-sized next round to hold their converted stake — the industry framing ownership% × next-round size — so you can see the follow-on reserve your existing investors can claim.

Verification. The dilution engine ships with an executable check (dilution.test.ts) that hand-derives 2–4 scenarios from first principles and asserts the code matches — a cap-bound post-money SAFE, a discount-beats-cap case, an MFN + pool-shuffle case, and the pool-shuffle helper. It is arithmetic, not a valuation, and it only reflects the inputs you give it.

See the full sample report →  ·  Get your own →