The Weighted Average Cost of Capital (WACC) is a financial metric used to estimate the cost of capital for a company. It represents the average rate of return a company must pay to its investors for using their capital. WACC takes into account the cost of both equity and debt, weighted by their respective proportions in the company’s capital structure.

The formula is as follows:

\[\text{Market Value of Equity} = \text{Share Price} \cdot \text{Total Shares Outstanding}\] \[\text{Market Value of Debt} = \text{Total Debt}\] \[\text{Total Market Value} = \text{Market Value of Equity} + \text{Market Value of Debt}\] \[\text{Cost of Equity} = \text{Risk Free Rate} + \text{Beta} \cdot \text{Market Risk Premium}\] \[\text{Cost of Debt} = \text{Interest Expense} / \text{Total Debt}\] \[\text{WACC} = (\text{Market Value of Equity} / \text{Total Market Value}) \cdot \text{Cost of Equity} + (\text{Market Value of Debt} / \text{Total Market Value}) \cdot \text{Cost of Debt} \cdot (1 - \text{Corporate Tax Rate})\]

Cost of Equity (Re): The cost of equity represents the return required by the company’s shareholders or equity investors. It is the cost of raising funds by selling equity (such as common stock). The cost of equity is often estimated using methods like the Capital Asset Pricing Model (CAPM) or the Dividend Discount Model (DDM).

Cost of Debt (Rd): The cost of debt is the interest rate the company pays on its outstanding debt. It is the cost of raising funds through borrowing, such as issuing bonds or taking loans. The cost of debt is typically based on the prevailing interest rates in the market and the company’s creditworthiness.

Corporate Tax Rate (Tc): The corporate tax rate is the percentage of a company’s profits that is paid in taxes. It is used to calculate the tax shield on interest payments. Interest expenses on debt reduce taxable income, and the tax shield represents the tax savings resulting from these deductions.

Market Value of Equity (E): The market value of equity is the total value of the company’s outstanding shares of common stock. It is calculated by multiplying the current stock price by the number of shares outstanding.

Market Value of Debt (D): The market value of debt is the total value of the company’s outstanding debt obligations, such as bonds and loans. It represents the current market price of the debt instruments.

Total Market Value of Capital (V): The total market value of capital is the sum of the market value of equity and the market value of debt (V = E + D). It represents the total value of the company’s financing, both through equity and debt.

The WACC is the discount rate for the free cash flow to the firm and the hurdle rate for new investments, so analysts usually build it from forward-looking inputs: a long-term government bond yield, an equity risk premium of a few percent, a beta measured over several years and the yield on the company’s debt. Small changes matter: in a DCF with 2.5% perpetual growth, moving the WACC from 8% to 9% lowers the terminal value by about 15%.

Also known as: WACC, blended cost of capital, discount rate.

Weighted Average Cost of Capital (WACC) in Python or via the MCP

Install the Finance Toolkit with:

pip install financetoolkit -U

Then call get_weighted_average_cost_of_capital as shown below.

from financetoolkit import Toolkit

toolkit = Toolkit(
    ["VZ", "T", "TMUS"],
    api_key="FINANCIAL_MODELING_PREP_KEY",
    start_date="2022-01-01",
    end_date="2025-12-31",
)

toolkit.models.get_weighted_average_cost_of_capital().xs(
    "Weighted Average Cost of Capital", level=1
)

Or, after setting up the Finance Toolkit MCP, ask:

What was the weighted average cost of capital of Verizon, AT&T and T-Mobile US from 2022 to 2025?

Which returns:

  2022 2023 2024 2025
T 0.0453 0.0457 0.0358 0.0411
TMUS 0.047 0.0437 0.0447 0.0425
VZ 0.0304 0.0406 0.036 0.0358

Parameters

get_weighted_average_cost_of_capital accepts the following parameters.

ParameterTypeDescriptionExample
show_full_resultsboolWhether to show the full results or just the WACC values. Defaults to True.False
dilutedboolWhether to use diluted shares in the calculation. Defaults to True.False
roundingint | NoneThe number of decimals to round the results to. Defaults to None, which uses the rounding of the Toolkit (4 unless set otherwise).2
growthboolWhether to calculate the growth of the values. Defaults to False.True
lagint | list[int]The lag to use for the growth calculation. Defaults to 1.4
standardizeboolWhether to standardize (Z-Score) the result. When combined with growth=True, standardizes the growth values instead of the raw values. Defaults to False.True
trailingint | NoneThe trailing period to use for the calculation. Defaults to None.4
market_risk_premiumfloat | NoneThe annual equity risk premium the Cost of Equity uses. Defaults to None, which takes the equity risk premium of each company’s country (Damodaran’s Total Equity Risk Premium, see get_market_risk_premium) and, where that is not available, the benchmark’s average return above the risk-free rate over the data.None, which takes the equity risk premium of each company's country (Damodaran's Total Equity Risk Premium, see get_market_risk_premium) and, where that is not available, the benchmark's average return above the risk-free rate over the data
show_columnslist[str] | NoneRestrict the result to these columns. Defaults to None, which shows all columns.["Cost of Equity", "Weighted Average Cost of Capital"]
Share