Complete technical specification of our financial modeling engine. How we calculate projections, IRR, TVPI, and forecasts for private fund portfolios.
What it measures: Total value created per dollar invested. A 2.5x TVPI means you've generated $2.50 for every $1.00 called.
Example: Capital called: $10M, Current NAV: $15M, Distributions: $5M → TVPI = ($15M + $5M) / $10M = 2.0x
→ Why you care: Quick snapshot of fund performance. Compare across funds, vintages, strategies.
What it measures: Cash returned per dollar invested. Shows realized returns (not just paper gains).
Typical progression: Early years: Low (0.1-0.3x), Mid-life: Growing (0.5-1.2x), Mature: High (1.5-3.0x)
→ Why you care: Know how much cash you've actually received. Plan liquidity based on realized distributions.
Solve for r where:
Σ CF(t) / (1 + r)^(t/12) = 0
Where:
• t = months since fund inception
• CF(t) = cashflow at month t (negative for calls, positive for distributions)
• r = annual IRR (what we're solving for)
What it measures: Time-weighted return accounting for timing of cashflows. Industry standard for comparing private market performance.
Calculation Method (Newton-Raphson):
1. Start with guess: r₀ = 0.20 (20%)
2. Calculate NPV: f(r) = Σ CF(t)/(1+r)^(t/12)
3. Calculate derivative: f'(r) = Σ -t·CF(t)/(12·(1+r)^(t/12+1))
4. Update: r₁ = r₀ - f(r₀)/f'(r₀)
5. Repeat until |f(r)| < 0.0001
Converges in 5-10 iterations for typical funds
Real example: Fund with $10M calls over 3 years, $25M distributions over years 5-8. IRR calculation finds r = 24.3% (the discount rate that makes NPV = 0).
→ Why you care: Compare funds across vintages and strategies. Benchmark against industry (top quartile VC: 25%+, median buyout: 15-18%). Evaluate GP performance.
Current NAV = Last Mark + Actual Cashflows + Projected Growth
Where:
• Last Mark = GP-reported NAV as of mark date
• Actual Cashflows = Σ(Capital Calls - Distributions + Fees) since mark
• Projected Growth = Growth Rate × Elapsed Time × Current Capital
The problem: Q1 marks arrive in October showing March 31 data. You need current NAV for Q4 decisions.
Our approach: Start with latest mark, add all actual transactions since mark date, project forward using fund-level growth assumptions.
Real Example:
Last Mark (Q1): $50.0M (as of March 31)
Actual Cashflows (Q2-Q4):
+ Capital Call Q2: $5.0M
- Distribution Q3: $2.0M
- Management Fees: $0.5M
= Net Cashflow Impact: +$2.5M
Projected Growth (6 months @ 12% annual):
$50M × 0.06 = +$3.0M
→ Current NAV (Oct): ~$55.5M
→ Why you care: Make decisions based on current position (not 9-month-old data). Know your real NAV before committing to new funds.
Expected Call(quarter) = Unfunded Commitment × Schedule(quarter)
Schedule varies by fund type:
• VC: Front-loaded (40%, 30%, 20%, 10% over 4 years)
• Buyout: Steady (25%, 25%, 25%, 25% over 4 years)
• Credit: Immediate (80%, 20% over 2 years)
How it works: Each fund type has a typical deployment pattern based on historical data. We apply this to unfunded commitments to forecast when capital will be called.
Example: $10M VC Fund (2024 Vintage)
Unfunded: $10M
Year 1 (2024): $10M × 40% = $4.0M
Year 2 (2025): $10M × 30% = $3.0M
Year 3 (2026): $10M × 20% = $2.0M
Year 4 (2027): $10M × 10% = $1.0M
→ Why you care: Plan liquidity 2+ years out. Know when multiple funds will call capital simultaneously. Avoid cash crunches.
Distribution(t) = NAV × Exit Rate(t)
Exit Rate(t) ~ Weibull(k, λ)
k = shape parameter (exit pattern)
λ = scale parameter (timing in months)
Calibrated to industry data: We use Cambridge Associates and Preqin benchmarks to set shape and scale parameters by fund type.
Typical Parameters by Strategy:
Growth Equity: k=2.1, λ=39.6 months (median exit at 3.3 years)
Venture Capital: k=1.8, λ=54 months (median exit at 4.5 years)
Buyout: k=2.4, λ=33 months (median exit at 2.75 years)
Real Estate: k=2.0, λ=36 months (median exit at 3 years)
→ Why you care: Forecast when distributions will arrive. Plan reinvestment or consumption. Model different exit timing scenarios.
Step 1: Return of Capital
First $10M → 100% to LPs (return their money)
LPs get their capital back before GP sees any carry.
Step 2: Preferred Return (Hurdle)
Next $0.8M → 100% to LPs (8% hurdle on $10M)
LPs get preferred return (typically 8% compounded) before GP participates.
Step 3: Catch-Up
Next $4M → 100% to GP (until GP has 20% of total profits)
GP "catches up" to their 20% share of profits above hurdle.
Step 4: Pro-Rata Split
Remaining → 80% LPs, 20% GP
After catch-up, ongoing 80/20 split.
Full Example ($25M fund with 2.5x TVPI):
Total Value: $25M
Step 1 (Return of Capital): $10M → LPs
Step 2 (8% Hurdle): $0.8M → LPs
Step 3 (Catch-Up): $4.2M → GP
Step 4 (Pro-Rata): $10M × 80/20 → $8M LPs, $2M GP
LPs net: $18.8M (1.88x net TVPI)
GP carry: $6.2M (20% of profits above hurdle)
→ Why you care: Understand net vs gross returns. Model carry impact on distributions. Forecast actual LP proceeds.
Portfolio NAV(USD) = Σ Fund NAV(native) × FX Rate(native→USD)
Where FX rates snapshot at calculation date (not historical averages)
Our approach: Store each fund in its native currency. Convert on-the-fly using daily FX rates. This preserves source data and allows recalculation with different FX assumptions.
Example (3-fund portfolio):
Fund A (USD): $50M × 1.00 = $50M
Fund B (EUR): €40M × 1.08 = $43.2M
Fund C (GBP): £30M × 1.27 = $38.1M
Total Portfolio NAV: $131.3M
→ Why you care: Accurate cross-currency aggregation. See total portfolio value in your reporting currency. Model FX scenarios.
Schedule a technical discussion or try the platform free to see the calculations in action.