Valuation

Work out the WACC

valuation_wacc · Reads only · Markdown

The WACC from the risk-free rate, the market premium and a beta relevered from peers, with each step written out.

Free*

*Free up to 1,000,000 reads a month for the whole account, then $0.50 per 10,000 reads.

An example

What discount rate should we use for Kuechentechnik Nord if it is financed 40% with debt at 5.2%? Use Rational, Middleby and Welbilt as peers.

Your agent callsvaluation_waccFree*

The example business is Hansen & Voss, a restaurant-equipment wholesaler in Hamburg with 60 staff. The reply is the one the tool really gives.

With these arguments
{
  "risk_free_rate": 0.0339,
  "equity_risk_premium": 0.055,
  "tax_rate": 0.3,
  "pre_tax_cost_of_debt": 0.052,
  "target_debt_to_equity": 0.4,
  "peers": [
    {
      "name": "Rational AG",
      "levered_beta": 0.92,
      "debt": 12,
      "equity": 7200,
      "tax_rate": 0.28
    },
    {
      "name": "Middleby",
      "levered_beta": 1.21,
      "debt": 2400,
      "equity": 7600,
      "tax_rate": 0.24
    },
    {
      "name": "Welbilt",
      "levered_beta": 1.35,
      "debt": 1500,
      "equity": 3100,
      "tax_rate": 0.24
    }
  ]
}
What comes back
{
  "beta": {
    "relevering": "hamada",
    "target_debt_to_equity": 0.4,
    "peers": [
      {
        "name": "Rational AG",
        "levered_beta": 0.92,
        "debt_to_equity": 0.001667,
        "tax_rate": 0.28,
        "unlevered_beta": 0.918897
      },
      {
        "name": "Middleby",
        "levered_beta": 1.21,
        "debt_to_equity": 0.315789,
        "tax_rate": 0.24,
        "unlevered_beta": 0.975806
      }
    ],
    "statistic": "median",
    "unlevered_beta": 0.975806,
    "levered_beta": 1.249032
  },
  "cost_of_equity": 0.102597,
  "cost_of_debt_after_tax": 0.0364,
  "weights": {
    "equity": 0.714286,
    "debt": 0.285714
  },
  "premiums": 0,
  "wacc": 0.083683,
  "steps": [
    "Unlevered beta: the median of 3 peers, each unlevered at its own debt to equity (hamada) = 0.9758",
    "Relevered at a debt to equity of 0.4000: 1.2490"
  ]
}

Use it when

Before a DCF, to set the discount rate.

What it does

The cost of capital: CAPM cost of equity from the risk-free rate, the equity risk premium and a beta (given levered, given unlevered, or from peers, each unlevered at its own debt to equity and the median or mean relevered at the target's), plus any premiums; the cost of debt after tax; and the WACC at the target capital structure. Hamada (with the tax shield) or Harris-Pringle. Each step is written out. valuation_rates gives today's risk-free rates.

What comes back

beta (peers with their unlevered_beta, statistic, unlevered_beta, levered_beta, relevering, target_debt_to_equity), cost_of_equity, cost_of_debt_after_tax, weights (equity, debt), premiums, wacc and steps, each calculation in words. Every reply also carries cost_usd and balance_usd.

Inputs

NameTypeWhat it is
risk_free_rateRequirednumberThe risk-free rate. A decimal: 0.09 is 9%. -0.05 to 0.3.
equity_risk_premiumRequirednumberThe market risk premium. A decimal: 0.09 is 9%. 0 to 0.3.
tax_rateRequirednumberThe target's tax rate. A decimal: 0.09 is 9%. 0 to 0.9.
pre_tax_cost_of_debtRequirednumberWhat the target pays on debt, before tax. A decimal: 0.09 is 9%. 0 to 1.
target_debt_to_equitynumberDebt / equity at the target capital structure. Or give target_debt_weight. 0 to 20.
target_debt_weightnumberDebt / (debt + equity). A decimal: 0.09 is 9%. 0 to 0.95.
levered_betanumberUse this beta as it is. -5 to 10.
unlevered_betanumberRelevered at the target capital structure. -5 to 10.
peersarray of objects1 to 50 items.
peers[].nameRequiredstring1 to 200 characters.
peers[].levered_betaRequirednumber-5 to 10.
peers[].debtRequirednumberAt least 0.
peers[].equityRequirednumberMarket value of equity.
peers[].tax_ratenumberThe peer's own; the target's when left out. A decimal: 0.09 is 9%. 0 to 0.9.
peer_statisticstringOne of: median,mean. Default: median.
releveringstringOne of: hamada,harris_pringle. Default: hamada.
debt_betanumber-1 to 3. Default: 0.
size_premiumnumberAdded to the cost of equity. A decimal: 0.09 is 9%. -0.2 to 0.5.
country_risk_premiumnumberAdded to the cost of equity. A decimal: 0.09 is 9%. -0.2 to 0.5.
other_premiumnumberAny other premium added to the cost of equity. A decimal: 0.09 is 9%. -0.2 to 0.5.

The call

Over MCP, call valuation_wacc on https://api.conecto.chat/mcp/valuation. Over REST:

Terminal
curl -X POST https://api.conecto.chat/v1/tools/valuation_wacc \
  -H "Authorization: Bearer $CONECTO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"risk_free_rate":0.0339,"equity_risk_premium":0.055,"tax_rate":0.3,"pre_tax_cost_of_debt":0.052,"target_debt_to_equity":0.4,"peers":[{"name":"Rational AG","levered_beta":0.92,"debt":12,"equity":7200,"tax_rate":0.28},{"name":"Middleby","levered_beta":1.21,"debt":2400,"equity":7600,"tax_rate":0.24},{"name":"Welbilt","levered_beta":1.35,"debt":1500,"equity":3100,"tax_rate":0.24}]}'

When it refuses

A refused call costs nothing and says what to do next.

CodeWhenWhat to do
invalid_input400Not exactly one beta (levered, unlevered or peers), not exactly one capital structure, or a peer with no equity.Give one beta source and one of target_debt_to_equity or target_debt_weight.

Give this to your agent.

Set up Conecto from https://conecto.chat/SKILL.md