Calculate · Assess & Decide · Analysis & Finance
Pre/post-money valuation and dilution
The pre-money and post-money valuation, the new shares issued, and the new-investor and existing-holder ownership percentages after the round.
You receive: A reviewed dilution calculator + the passing test report, run on your cap table and round terms.
Part of Pitch Investors
Opens soon
Cost20 credits
AcceptanceAutomated check against your inputs
ProtectionHeld until verified delivery
This objective is verified and ready. It opens soon, once sign-in and payments are live.
Deliverable interface
The exact vocabulary the automated check enforces: keys, tokens, entry points, and worked examples. Generated from the verification source.
{
"constants": {},
"entryName": "compute_premoney_postmoney_dilution",
"expectNote": "expect is the comparison-space value (your return value goes through normalize first when one is published)",
"hiddenCaseCount": 5,
"hiddenCaseNames": [
"third_dilution",
"uneven",
"small_round",
"custom_rounding",
"invalid_zero_price"
],
"inputKeys": [
"amountRaised",
"pricePerShare",
"roundingDecimals",
"sharesOutstandingFD"
],
"normalizeSource": "def _premoney_normalize(r):\n if isinstance(r, str):\n return r\n try:\n return {\"preMoney\": round(float(r[\"preMoney\"]), 2), \"postMoney\": round(float(r[\"postMoney\"]), 2),\n \"newSharesIssued\": int(r[\"newSharesIssued\"]), \"postRoundShares\": int(r[\"postRoundShares\"]),\n \"newInvestorPct\": round(float(r[\"newInvestorPct\"]), 4), \"existingPct\": round(float(r[\"existingPct\"]), 4)}\n except Exception:\n return repr(r)\n",
"returnShapes": [
[
"existingPct",
"newInvestorPct",
"newSharesIssued",
"postMoney",
"postRoundShares",
"preMoney"
],
"invalid_input"
],
"signature": "def compute_premoney_postmoney_dilution(inp):",
"submission": "python exposing the entry function; inp is one input object; graded on held-out cases",
"tier": "calculator",
"visibleCases": [
{
"expect": {
"existingPct": 80,
"newInvestorPct": 20,
"newSharesIssued": 2500000,
"postMoney": 25000000,
"postRoundShares": 12500000,
"preMoney": 20000000
},
"input": {
"amountRaised": 5000000,
"pricePerShare": 2,
"sharesOutstandingFD": 10000000
},
"name": "standard_20pct"
}
],
"vocabulary": [
"amountRaised",
"existingPct",
"invalid_input",
"newInvestorPct",
"newSharesIssued",
"postMoney",
"postRoundShares",
"preMoney",
"pricePerShare",
"roundingDecimals",
"sharesOutstandingFD"
]
}Get early access to STUD the day it goes live.