Fund Manager

DCF Valuation of a Portfolio Company β€” Agent Says It's 40% Overvalued

5 min vs 2-4 weeks, €0 vs €15KStartup Finance4 min read

Key Takeaway

My AI agent built a full DCF model for a portfolio company in 5 minutes, flagged a 40% overvaluation against the current mark, and generated a sensitivity table that made the board conversation very uncomfortable.

The Problem

We hold stakes in early-stage companies. Valuations are set during funding rounds β€” then nobody touches them until the next round. For months, sometimes years, you're carrying a number on your books that's based on vibes and the last term sheet.

The traditional fix: hire a valuation analyst. That's $5-15K per company, 2-4 weeks turnaround, and you get a PDF that's already stale by the time it arrives. For a portfolio of 8+ companies, you're looking at $80K+ per year just to know if your marks are honest.

I needed honest marks. Fast. Updated whenever assumptions change.

The Solution

Warren, my CFO agent, runs a DCF Modeling skill paired with Risk Metrics calculation. Feed it the company's financials and assumptions β€” it builds a 5-year discounted cash flow model with a sensitivity table, flags deviations from current marks, and generates VaR/CVaR for the entire portfolio company book.

Five minutes. Not five weeks. And it doesn't round up to make anyone comfortable.

The Process

The input is straightforward β€” the same numbers you'd give an analyst:

yamlShow code
# dcf-valuation-input.yaml
company: "PortCo Alpha"
financials:
  revenue_ttm: 2_800_000        # €2.8M trailing twelve months
  revenue_growth_rate: 0.45      # 45% YoY
  gross_margin: 0.72             # 72%
  opex_as_pct_revenue: 0.85      # 85% β€” still burning
  capex_as_pct_revenue: 0.05     # 5%
  tax_rate: 0.25

assumptions:
  projection_years: 5
  growth_decay: 0.15             # Growth decelerates 15% per year
  terminal_growth_rate: 0.03     # 3% perpetuity
  wacc: 0.14                     # 14% β€” early stage risk premium

current_mark: 20_000_000         # €20M from last round

Warren builds the model step by step:

View details
Year        Revenue    EBITDA     FCF        Discount   PV(FCF)
───────────────────────────────────────────────────────────────
Year 1      €4.06M    -€0.53M   -€0.67M     0.877     -€0.59M
Year 2      €5.48M     €0.19M    €0.02M     0.769      €0.02M
Year 3      €6.99M     €0.98M    €0.73M     0.675      €0.49M
Year 4      €8.47M     €1.78M    €1.44M     0.592      €0.85M
Year 5      €9.79M     €2.53M    €2.11M     0.519      €1.10M
───────────────────────────────────────────────────────────────
Sum of PV(FCF):                                        €1.87M
Terminal Value (PV):                                  €10.04M
───────────────────────────────────────────────────────────────
Enterprise Value:                                     €11.91M

Then the sensitivity table β€” growth rate vs. discount rate:

View details
Fair Value (€M)    WACC 12%   WACC 14%   WACC 16%   WACC 18%
─────────────────────────────────────────────────────────────
Growth 55%          €16.2      €14.1      €12.4      €11.0
Growth 45%          €14.0      €11.9      €10.3       €9.1
Growth 35%          €11.9       €9.9       €8.5       €7.4
Growth 25%           €9.9       €8.1       €6.9       €5.9

The verdict:

Fair Value: €11.9M Current Mark: €20.0M Overvaluation: 40.5%

Even at the most generous assumptions (55% growth, 12% WACC), fair value reaches only €16.2M β€” still 19% below the current mark. The €20M valuation requires sustained 60%+ growth at a 10% discount rate, which implies near-zero execution risk. For an early-stage company burning cash, this is not defensible.

Warren then rolls this into the portfolio-level risk report:

pythonShow code
# Portfolio company book risk metrics
portfolio_book = {
    'PortCo Alpha': {'mark': 20e6, 'fair_value': 11.9e6},
    'PortCo Beta':  {'mark': 8e6,  'fair_value': 7.2e6},
    'PortCo Gamma': {'mark': 5e6,  'fair_value': 5.8e6},
    # ... remaining holdings
}

# VaR calculation for illiquid portfolio
var_95 = calculate_portfolio_var(
    portfolio_book,
    confidence=0.95,
    method='parametric',
    correlation_matrix=sector_correlations
)

The Results

MetricBefore AgentAfter Agent
Time to produce DCF2-4 weeks5 minutes
Cost per valuation€5-15K (analyst)€0 (compute only)
Update frequencyQuarterly at bestOn-demand, any time
Sensitivity scenarios2-3Full matrix (16+)
Portfolio VaR includedNoYes, auto-calculated
Board report formattingManualAuto-generated
Overvaluation detected€8.1M across bookβ€”

The board conversation was uncomfortable. But honest uncomfortable beats surprise write-down.

Try It Yourself

  1. Sign up for Mr.Chief and install the excel-dcf-modeler and risk-metrics-calculation skills
  2. Prepare your company financials in YAML or feed them interactively
  3. Warren builds the model, generates sensitivity tables, and flags marks that don't hold
  4. Run monthly β€” assumptions change, and your marks should change with them
  5. Export to Excel for board packs or keep in markdown for internal review

The model isn't magic. Garbage assumptions produce garbage valuations. But at least now the assumptions are explicit, testable, and updated in minutes instead of months.


A valuation is only as honest as the person who doesn't want to write it down.

DCFvaluationportfolio-companyfund-managementfinancial-modeling

Want results like these?

Start free with your own AI team. No credit card required.

DCF Valuation of a Portfolio Company β€” Agent Says It's 40% Overvalued β€” Mr.Chief