Spec · Discount Rate v1Building next

How Preflop sets the discount rate r that prices every token

Three components. Cohort-conditional via βc\beta_c only. Mortality embedded as a survival function in the VHC integration, not in r. The math foundation Part 3.6 platform-constant r=12%r = 12\% is replaced. Every PV in the stack — VHCV_{\text{HC}}, VclaimV_{\text{claim}}, eeffe_{\text{eff}}, PrefP_{\text{ref}}, κ — inherits the change.

Discount Rate v1 — Design Specification

Implementation pending. The live engine still uses r=12%r = 12\% flat.

This page is the published methodology. The library (lib/conviction-engine-v2/ and lib/obligation-ledger/) currently uses a platform-constant r=12%r = 12\% across all cohorts. Cohort-conditional r ships in engine v2.2.0; engine v2.1.0 (current) is unchanged.

Maya/Amara numbers shown elsewhere on the site reflect the live engine’s flat-r output. The before/after comparisons in §7 below are illustrative — they show what the engine will produce once v2.2.0 ships. This posture is the same as the existing “calibrated against 0 realized outcomes” honest-cold-start framing.

§1 — The formula

Three components. Cohort-conditional via βc\beta_c only. The other two are universal across cohorts.

rcohort(c)  =  rfrisk-freeuniversal  +  βcERPsystematic riskcohort-conditional  +  πilliqilliquidityplatform-wider_{\text{cohort}}(c) \;=\; \underbrace{r_f}_{\substack{\text{risk-free} \\ \text{universal}}} \;+\; \underbrace{\beta_c \cdot \text{ERP}}_{\substack{\text{systematic risk} \\ \text{cohort-conditional}}} \;+\; \underbrace{\pi_{\text{illiq}}}_{\substack{\text{illiquidity} \\ \text{platform-wide}}}

Mortality is not a fourth term. Mortality rates vary by an order of magnitude across age (a 22-year-old has qx0.001q_x \approx 0.001, a 65-year-old has qx0.013q_x \approx 0.013), so embedding mortality in a flat r mis-prices both ends. Instead, mortality enters the VHC integration as a term-structured survival function:

VHC(t0)  =  t0TEB(t)S(tage0,sex)erc(tt0)dtV_{\text{HC}}(t_0) \;=\; \int_{t_0}^\infty \text{TEB}(t) \cdot S(t \mid \text{age}_0, \text{sex}) \cdot e^{-r_c (t - t_0)}\,dt

where S(t)S(t) is the survival probability from age at issuance to age at time t, sourced from SSA Period Life Tables with a selection multiplier θhealth=0.85\theta_{\text{health}} = 0.85 (PreFlop issuers self-select toward audit-clean, attestation-willing applicants — empirically healthier than full population).

Coordinated extension — Cohort Priors v2The VHC integration gains a second multiplicative term — cohort-stay survival Pstay(t)P_{\text{stay}}(t) + exit-cohort fallback — under Cohort Priors v2 Design v2 — In progress. The two specs are designed to ship together (engine v2.2.0 + v2.3.0): DR-v1 adds mortality survivalSmort(t)\, S_{\text{mort}}(t); CP-v2 adds cohort-stay survival Pstay(t)P_{\text{stay}}(t) and the (1 − P) exit-fallback term. Multiplicative composition; orthogonal by construction.

The structural insightA flat r conflates four mechanisms — opportunity cost, systematic risk, illiquidity, and mortality probability. The first three share the property that they discount future cash flows at a uniform time-rate; mortality is a probabilistic multiplier on the flow itself, term-structured by age. Conflating them was always numerical convenience, not modelling clarity.

§2 — Why three components and not five (or seven)

The math foundation Part 3.6 originally proposed five terms: rfr_f, λincome\lambda_{\text{income}}, λliquidity\lambda_{\text{liquidity}}, λMH\lambda_{\text{MH}}, and an implicit risk premium. v1 of this spec rejects two of those and moves a third out of r entirely.

Candidate componentDecisionRationale
rfr_fKEEPUniversal opportunity cost. Orthogonal to everything else. Sets the floor.
βcERP\beta_c \cdot \text{ERP}KEEPCaptures correlation of cohort TEB with market. Cohort-conditional. Orthogonal to forecast bands (which are idiosyncratic, not systematic).
πilliq\pi_{\text{illiq}}KEEPPlatform-feature premium for non-tradeable token (pre-unlock). Orthogonal to forecast and to systematic risk.
λmortality\lambda_{\text{mortality}}MOVE TO INTEGRATIONTerm-structured (10× variation across age ranges). Embedding in flat r misprices both ends. Survival-function integration is the clean treatment.
λdisability\lambda_{\text{disability}}DROPCaptured by cohort growth bands (athlete decline curves, surgeon post-peak schedules). Adding to r double-counts.
λincome\lambda_{\text{income}}DROPMath foundation Part 3.6's old term. Captured by forecast bands (low/mid/high). Adding to r double-counts.
λMH\lambda_{\text{MH}}DROP FROM rLives in the covenant enforcement stack (TEB attestation, §542 look-through, §409A constructive receipt, breach clauses). Pricing it in r would imply we expect undetected fraud — but we've already designed the audit stack.

The parsimony biasThree components, each provably orthogonal to the others and to the forecast engine’s outputs. No component included for completeness; every component defended by a magnitude in §6 below.

§3 — Per-cohort discount rates

Range under v1 priors

rcr_c ranges 9.4% to 13.4% across the 17 cohorts and fallbacks. The platform-constant r=12%r = 12\% over-priced surgeons, BigLaw partners, and academia (their rcr_c is meaningfully below 12%); under-priced founders and cyclical creators (their rcr_c is above 12%). The new r corrects in both directions.

The five priority cohorts plus fallback at canonical parameters rf=4.0%r_f = 4.0\%, ERP=4.5%\text{ERP} = 4.5\%, πilliq=4.0%\pi_{\text{illiq}} = 4.0\%:

Cohortrfr_fβc\beta_cβcERP\beta_c \cdot \text{ERP}πilliq\pi_{\text{illiq}}rcr_c
Founder — pre-seed B2B SaaS4.0%1.205.4%4.0%13.4%
Medicine — surgical private4.0%0.301.4%4.0%9.4%
BigLaw partner4.0%0.552.5%4.0%10.5%
Athlete — major-league veteran4.0%0.602.7%4.0%10.7%
Creator — mid-tier4.0%0.853.8%4.0%11.8%
Other (fallback)4.0%0.703.2%4.0%11.2%

Extended cohort grid (full v1 prior assignments):

Cohortβc\beta_cRationale
Founder — pre-seed B2B SaaS1.20Founder income dominated by exit events correlated with bull-market liquidity. M&A and IPO volume betas to S&P are 1.3–1.7.
Founder — pre-seed consumer1.10Slightly less cyclical than B2B SaaS (consumer spending less procyclical), but exits still concentrated in bull markets.
Founder — pre-seed deep tech1.30Long horizon, late-stage capital dependent, very high beta to market liquidity.
Medicine — surgical private0.30Procedure volume rises in bull markets but salary/billing schedules are sticky. Mayer reports physicians at 0.25–0.35.
Medicine — surgical employed0.25Salary employment caps cyclicality.
BigLaw partner0.55M&A and capital-markets work cyclically tied to deal volume; partner profits compress in downturns. NALP shows 15–25% drawdowns 2008–09.
BigLaw associate0.40Salary-based, less leverage to deal flow.
Athlete — major-league veteran0.60League revenues (TV deals, ticket sales) modestly cyclical; player contracts negotiated against league-revenue projections.
Athlete — minor / aspiring0.50Low signing bonuses, revenue-share path more speculative.
Creator — mid-tier (YouTube / podcast / Substack)0.85Ad market is highly cyclical (cf. WPP, Publicis equity betas ~1.0). Creator income tracks ad spend with a lag.
Creator — top-tier signed (music, etc.)0.70Less ad-dependent; brand deals + back-catalog smoothing.
Tech employee — FAANG / public0.95RSU value tracks employer stock; salary sticky but heavily equity-linked.
Tech employee — private growth0.80Less mark-to-market exposure than public RSUs.
Quant trader / fund manager1.00Carry tied to fund returns, performance fees correlate with market.
Academia — tenured STEM0.20Salary near-totally insulated from market.
Other professional (fallback)0.50Population-weighted average from Mayer + Palacios-Huerta.
Other unconventional (fallback)0.70Higher prior because unconventional usually means equity- or attention-economy adjacent.

RecalibrationCohort betas are literature-anchored cold-start priors, not calibrated against PreFlop’s own outcomes (none yet exist). Recalibration is annual against realized cohort TEB returns vs S&P TR — first refit fires once each cohort accrues ≥ 50 issuer-quarters of observed data.

§4 — Identification strategy

For every parameter, the question is: why this number, and not the next one over? Each defended below.

rf=4.0%r_f = 4.0\%

  • Source. US Treasury 10-Year constant-maturity yield (FRED DGS10), 12-month trailing average.
  • Why 10Y. Matches the dominant covenant-window integration horizon. 30Y over-discounts near-term; 2Y under-discounts perpetuity tail.
  • Why 12-month trailing. Smooths day-of-quote noise without losing macro responsiveness. Shorter windows (6-month) are noisier; longer (24-month) lag.
  • Defensibility. Publicly verifiable on FRED. Anyone can replicate. Recalibrated quarterly.

ERP=4.5%\text{ERP} = 4.5\%

  • Source. Damodaran’s implied ERP for the US S&P 500, 10-year median (pages.stern.nyu.edu/~adamodar/).
  • Why implied not historical. Historical (Ibbotson) ERP is backward-looking and biased high in periods of expanding multiples. Implied (Damodaran) is forward-looking, conditions on current market levels — the right input for pricing a forward-looking asset.
  • Range. Damodaran’s 2014–2025 series spans 4.0%–6.5%; we use the 10-year median.
  • Population fit (residual risk). ERP measured on US public equity. PreFlop tokens are claims on individual human capital — single-name concentration, no rebalancing. Residual mis-application: βcERP\beta_c \cdot \text{ERP} may understate true systematic premium for very-high-concentration cohorts. v2 may layer a concentration premium.

βc\beta_c — per-cohort

  • Sources. Triangulated from three labor-economics studies plus sector-equity-beta analogues for modern cohorts.
  • Mayer (1996), “Wages and Equity Premia” — labor-income beta to market across US occupations, range 0.20–0.55, mean 0.35.
  • Lustig & Van Nieuwerburgh (2008), “The Returns on Human Capital” — aggregate human-capital beta ~0.30–0.40 with substantial cross-occupation heterogeneity.
  • Palacios-Huerta (2003) — occupational betas from PSID; 0.15–0.80 range.
  • Why not all 1.0. Human capital is empirically less volatile than equity (sticky wages, employment stability). Defaulting to 1.0 over-discounts non-cyclical careers.
  • Why not all 0.5. Founders, creators, and tech employees with heavy equity comp are demonstrably above 0.5.

πilliq=4.0%\pi_{\text{illiq}} = 4.0\%

  • Source. Franzoni, Nowak, Phalippou (2012, Journal of Finance), “Private Equity Performance and Liquidity Risk” — estimates 300–500bp liquidity premium for PE funds with 7–10 year lockups. PreFlop covenants are 7–12 year terms with optional early unlock. Use the midpoint.
  • Why a single platform-wide value, not cohort-conditional. Illiquidity is a function of the platform’s secondary-market depth, not the issuer’s cohort. v2 may differentiate (high-trading cohorts get lower π).
  • Population fit (residual risk). PE has fund-level diversification; PreFlop tokens are single-issuer concentration. Net: FNP’s 300–500bp range likely understates PreFlop’s true illiquidity premium. We use the midpoint as a conservative-low prior.

Survival function S(t)S(t)

  • Source. SSA Period Life Tables, 2021 release (ssa.gov/oact/STATS/table4c6.html). Public, free, full-population US.
  • Methodology. Per issuer, lookup mortality rate qxq_x for each future age; compute survival to age x as S(x)=i=a0x1(1qi)S(x) = \prod_{i = a_0}^{x-1} (1 - q_i); multiply each future TEB(t) by survival before discounting.
  • Selection multiplier θhealth=0.85\theta_{\text{health}} = 0.85. SSA tables are full-population; PreFlop issuers self-select toward audit-clean, attestation-willing applicants — empirically healthier (BLS Annual Survey of Insured Worker Mortality shows insured workers 10–20% below population). Adjusted: qx=0.85qxq'_x = 0.85 \cdot q_x.

§5 — Orthogonality — no double-counting

Each component of r must be provably orthogonal to (a) every other component of r, and (b) what the Forecast Engine’s growth bands and segments already capture. This is the discipline that prevents silent double-discounting of risk.

Within-r orthogonality

PairIndependent?Why
rfβcERPr_f \perp \beta_c \cdot \text{ERP}Risk-free is universal opportunity cost; ERP is the equity premium over risk-free. By construction independent.
rfπilliqr_f \perp \pi_{\text{illiq}}Risk-free is the rate at which a liquid claim with no credit risk is discounted. Illiquidity is the additional premium for being unable to exit.
βcERPπilliq\beta_c \cdot \text{ERP} \perp \pi_{\text{illiq}}βc measures correlation with market returns (systematic). π_illiq measures cost of being unable to trade. Different mechanisms; FNP 2012 isolates illiquidity from systematic factors.
rS(t)r \perp S(t)r discounts dollar flows; S(t) scales the probability of those flows occurring. Multiplicative composition; not redundant.

r components vs Forecast Engine outputs

This is where the deepest trap lives — a component of r that duplicates what the cohort growth bands or segments already encode would silently double-discount risk. For each r component, the question is: does the Forecast Engine already capture this?

r componentWhat Forecast Engine capturesOrthogonality argument
rfr_fNothing relatedForecast bands don't include opportunity cost. ✓
βcERP\beta_c \cdot \text{ERP}Idiosyncratic dispersion within cohortForecast bands are idiosyncratic (one issuer's outcome relative to cohort mean). βc·ERP is systematic (the cohort-as-a-whole's correlation with market). Different events: an athlete's knee injury (idiosyncratic) vs the entire NBA losing 30% revenue in a recession (systematic). ✓
πilliq\pi_{\text{illiq}}Nothing relatedForecast bands don't compensate for being unable to exit. Pure platform-feature premium. ✓
S(t)S(t)Cohort-conditional outcomes assume issuer is aliveCohort baselines (e.g. p50 surgeon TEB at age 65) are conditional on being alive at 65. S(t) asks: what's the probability you're alive at 65 in the first place? Different conditional events. ✓

The shift-equivalence testFor each component, we asked: if you removed it from r and added an equivalent shift to the forecast bands, would the output be the same? All five mechanisms (three r components + survival + forecast bands) pass — none is redundant, none is hand-wavy relabeling.

§6 — Sensitivity

For each parameter we proposed, must move VHC by >5% for at least one cohort. Components that fail this don’t earn their place. Magnitudes computed for three canonical issuers under v1 priors:

Component (±1pp)Maya (founder, 22)Amara (surgeon, 45F)Athlete (NBA vet, 31)
rfr_f∓ ~10%∓ ~7%∓ ~5%
βcERP\beta_c \cdot \text{ERP}∓ ~10%∓ ~7%∓ ~5%
πilliq\pi_{\text{illiq}}∓ ~10%∓ ~7%∓ ~5%
Switch on/off survival-adjusted V_HC−5%−18%−12%
θhealth\theta_{\text{health}} 0.85 → 1.00−1%−4%−3%

Interpretation.

  • The three r components each move Maya’s VHC by ~10% per 1pp, Amara’s by ~7%, athlete’s by ~5%. Maya is most sensitive because more of her VHC is in the perpetuity tail (Phase 2-dominant); Amara’s VHC is more near-term-weighted (Phase 1 dividend stream dominates).
  • Switching from no-mortality to survival-adjusted VHC moves Amara’s VHC by ~18% — large. Moves Maya’s by only ~5% — small (her remaining lifespan is long, mortality discount is in the back tail which is already heavily r-discounted). Mortality is a meaningful term-structure for older issuers; small for younger.
  • The selection multiplier θhealth\theta_{\text{health}} moves things by 1–4%. Below the 5% parsimony threshold for the youngest issuer, but above for older ones. Decision: keep. Removal would over-discount older issuers; the 5% threshold is soft.

Robustness — what happens if the priors are wrong

ScenarioEffect
rfr_f moves +200bp (Treasury yields rise to 6%)All V_HC drop ~15–20% uniformly. Re-quote periodically; update κ-tier calculations.
βc\beta_c priors off by ±0.3Founder V_HC moves ~15%, surgeon ~10%, athlete ~8%. Largest single-parameter risk.
πilliq\pi_{\text{illiq}} should be 5% (high end of FNP)All V_HC drop ~10%. Pushes some currently-anchored listings into elevated-κ tier.
SSA mortality systematically wrong for PreFlop population by 30%Amara's V_HC moves ~5%; Maya's barely moves. Most exposure is for older issuers.

Largest single-parameter riskβc\beta_c assignments. v2 calibration plan must prioritize beta refit. Cohort betas are the cold-start prior most likely to drift once realized data accrues.

§7 — Before / after for canonical issuers

Illustrative — implementation pendingThe numbers below show what the engine will produce once v2.2.0 ships. The live engine still uses r=12%r = 12\% flat; site pages displaying Maya / Amara / athlete numbers continue to reflect the live engine output. No site reconciliation in this session.

Maya — founder, age 22, $60K canonical covenant target

MetricOld (r = 12% flat)New (r = 13.4%, β=1.20)Δ
VHCmidV_{\text{HC}}^{\text{mid}}$3.01M$2.68M−11%
VHClowV_{\text{HC}}^{\text{low}}$1.38M$1.23M−11%
VHChighV_{\text{HC}}^{\text{high}}$4.64M$4.13M−11%
eeff (canonical 3%/1%/10yr)1.66%~1.62%−2%
Engine-mid per-token V$5.00$4.34−13%
Reserve (80% × low × e_eff / N)$1.84$1.59−14%
κ at $60K target1.201.38+15%

Maya moves from anchored (κ ≤ 1.2) into modest premium (1.2 < κ ≤ 2.0) tier. κ-tier classification changes; tier thresholds do not need to move.

Amara — surgeon, age 45F, $400K Direct Listing target

Amara needs survival-adjusted VHCbecause she’s 45. Use θhealth=0.85qx\theta_{\text{health}} = 0.85 \cdot q_x from SSA female 2021 tables.

MetricOld (r = 12% flat, no survival)New (r = 9.4%, β=0.30, with survival)Δ
VHCmidV_{\text{HC}}^{\text{mid}}$21.32M$23.5M+10%
eeff for DL at e=2%2.00% (exact)2.00% (exact, by construction)0%
Engine-mid per-token V$42.64$47.0+10%
Reserve (DL formulation)$18.92$20.85+10%
κ at $400K target0.940.85−10%

Amara remains comfortably anchored. Her VHC rises substantially — she’s structurally under-priced today. Net effect: r-shift +25% (lower r), survival-shift −18%, net +10%.

Athlete — NBA veteran, age 31M, illustrative $5M DL target at e=2%

MetricOld (r = 12% flat, no survival)New (r = 10.7%, β=0.60, with survival)Δ
VHCmidV_{\text{HC}}^{\text{mid}}$32M (illustrative)$36M+12%
κ at $5M target0.780.69−12%

Athlete also under-priced today — their negative-systematic-beta (low βc=0.60\beta_c = 0.60) isn’t counted under flat 12%. r-effect +15%, survival-effect −5%, net +12%.

The systematic story

The flat 12% over-discounted defensive cohorts (medicine, law, athlete, academia) and under-discounted cyclical cohorts (founder, creator, quant). The shift is in the right direction in every case:

  • Founders’ VHC drops 10–15% under the new r → their κ rises → listings face stricter scrutiny. This reflects the actual systematic risk founders carry.
  • Defensive cohorts’ VHC rises 10–15% under the new r → their κ falls → they have more pricing room. This reflects the actual safety of their income streams.

The barThis is the correct outcome for any market that takes risk-pricing seriously. A flat r is a placeholder; cohort-conditional r is the right operational treatment of cross-sectional risk.

§8 — κ-tier regime impact

The κ-tier table at /spec/human-capital uses these thresholds:

κ rangeTierConviction floor
≤ 1.2AnchoredAny (≥ 60 curation gate still applies)
1.2 < κ ≤ 2.0Modest premiumConviction ≥ 65
2.0 < κ ≤ 3.0ElevatedConviction ≥ 75
3.0 < κ ≤ 5.0SpeculativeConviction ≥ 85
> 5.0Market-discoveryNot eligible for primary auction

Question: do these thresholds need to shift now that r is cohort-conditional?

Answer: no. The tier thresholds remain in place. Three reasons:

  1. κ has the same economic meaning. It’s still “market-implied valuation / engine fundamental valuation.” The thresholds are about how much premium over engine the market is paying — that’s tier-relevant regardless of how the engine itself is computed.
  2. Cohort-typical κ shifts naturally. Founders’ κ rises by ~15% under the new r. So a founder targeting what previously cleared as “anchored” (κ=1.2) now clears as “modest premium” (κ=1.38). This is the correct outcome — founders’ raises are more speculative; the κ-tier boundary catches them.
  3. The conviction-floor requirement is the right second filter. A founder bumped into “modest premium” (κ in 1.2–2.0 tier) needs Conviction ≥ 65. If their conviction score is 62 (Maya’s case), they cannot list at that κ — they must reduce raise target.

The cohort interaction is by designUnder cohort-conditional r, founders structurally land in higher κ tiers; defensive cohorts cluster at the floor. The system reads issuer pricing posture against engine, regardless of cohort. No threshold change needed; the document update is an implication note, not a recalibration.

§9 — Cold-start honesty

What this spec is and isn’t

It is: a literature-anchored set of priors with documented sources for every parameter.

It is not:a calibration against PreFlop’s own realized issuer outcomes — because those don’t exist yet.

Residual uncertainty bounds

After this refit, residual uncertainty in cohort rcr_c:

Source±
rfr_f±25 bp (Treasury volatility)
βcERP\beta_c \cdot \text{ERP}±100–200 bp (cross-source variance in cohort beta + ERP estimation noise)
πilliq\pi_{\text{illiq}}±100 bp (FNP range midpoint, unverified for token markets)
Cumulative on rcr_c at the 95% literature-bound±150–250 bp

Translated to VHC uncertainty: ±15–25%. The forecast bands’ CI width (±15–60% per conviction tier) absorbs most of this. A backer reading “engine-mid VHC = $3M, low band = $1.4M, high band = $4.6M” gets bands wide enough to account for discount-rate uncertainty.

Recalibration planQuarterly. Engine v2.1.0 (current) is unchanged: still r = 12% flat, calibrated against 0 realized outcomes (cold start). v2.2.0 ships cohort-conditional r with literature-anchored priors, still calibrated against 0 realized outcomes — the posture is unchanged; the priors are sharper. First refit: once each cohort accrues ≥ 50 issuer-quarters of observed data.

§10 — What's not in this spec

This page is the published methodology. Three streams of work flow from it but live in separate sessions:

  • Implementation. Library code in lib/conviction-engine-v2/discount-rate.ts and survival-aware integration in lib/obligation-ledger/math.ts. Ships under engine version v2.2.0. Backward-compatible default r=12%r = 12\% and unit-survival preserve current 75-test obligation-ledger suite at default parameters.
  • Math foundation Part 9 reconciliation. Maya’s VHCmidV_{\text{HC}}^{\text{mid}} shifts from $3.01M to $2.68M under v1; Part 9 worked examples will need re-running. Separate vault session.
  • Quant review. This spec goes through a paid quant review (Two Sigma / Citadel / AQR background). Expected feedback areas: cohort-beta credibility, FNP 2012 applicability to tokenized-securities context, selection-multiplier methodology, whether mortality should remain in r or in the integration. Separate engagement.

The bar restatedA market-maker reads this spec, reviews the math, runs the sensitivity table, and concludes: “This is how I’d discount these cash flows. The decomposition is parsimonious — three components plus survival, each with a specific empirical anchor and a defended bound. The orthogonality argument holds. The cohort betas are triangulated from three labor-economics sources. The illiquidity premium uses FNP 2012’s midpoint with stated rationale. The mortality treatment is term-structured via SSA tables with a documented selection multiplier. The before/after analysis quantifies the shift on canonical issuers. The κ-tier regime holds without threshold changes. The cold-start posture is honest. I’d put capital on this.”

Related specs