Calculate the funds from operations (FFO) to debt ratio, one of the two core ratios with which S&P Global Ratings assesses a company’s financial risk.

FFO is the cash a company generates from its operations before working capital and investment: EBITDA minus the interest and taxes paid in cash. As a share of the debt it shows how quickly the company could repay its debt from its recurring cash flow. S&P maps the ratio to its financial risk profiles: above 60% is minimal risk, 45% to 60% modest, 30% to 45% intermediate, 20% to 30% significant, 12% to 20% aggressive and below 12% highly leveraged (standard volatility table; companies with more volatile cash flows are held to stricter thresholds).

The formula is as follows:

\[\text{FFO} = \text{Operating Income} + \text{Depreciation and Amortization} + \text{Stock-Based Compensation} - \text{Interest Paid} - \text{Income Taxes Paid}\] \[\text{FFO to Debt} = \text{FFO} / \text{Total Debt}\]

S&P’s EBITDA excludes share-based compensation payable in shares, so it is added back, and impairments, which the operating income here includes. The debt is the reported total debt at the end of the period; S&P’s adjusted debt also adds leases, pension deficits and other debt-like items and deducts surplus cash, which the statements do not allow to repeat. FFO to debt is an annual measure, so with quarterly data the flows are those of the trailing twelve months by default. A total debt of zero or less gives NaN. So does an interest paid of zero: a company with debt pays interest, so zero means the interest paid is not reported, and counting it as zero would overstate the FFO by the whole interest bill.

Also known as: FFO/debt, FFO to total debt, funds from operations to debt.

Funds from Operations to Debt in Python or via the MCP

Install the Finance Toolkit with:

pip install financetoolkit -U

Then call get_funds_from_operations_to_debt_ratio as shown below.

from financetoolkit import Toolkit

toolkit = Toolkit(
    ["T", "UNP", "HSY"],
    api_key="FINANCIAL_MODELING_PREP_KEY",
    start_date="2021-01-01",
    end_date="2025-12-31",
)

toolkit.ratios.get_funds_from_operations_to_debt_ratio()

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

What were the funds from operations of AT&T, Union Pacific and Hershey relative to their debt from 2021 to 2025?

Which returns:

  2021 2022 2023 2024 2025
HSY 0.3762 0.4597 0.5067 0.5537 0.3053
T 0.1839 0.0361 0.2232 0.2502 nan
UNP 0.2823 0.2588 0.253 0.293 0.3285

Parameters

get_funds_from_operations_to_debt_ratio accepts the following parameters.

ParameterTypeDescriptionExample
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 ratios. Defaults to False.True
lagint | list[int]The lag to use for the growth calculation. Defaults to 1.4
compoundboolWhether the growth is the compound annual growth rate over the lag (e.g. lag=5 for the five-year CAGR) instead of the total change. Defaults to False.False
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
trailingintThe number of periods to sum the flows over; the total debt stays that at the end of the last period. Defaults to None, which uses the trailing twelve months (4 quarters) with quarterly data and single years with annual data.4
Share