Degree of Financial Leverage (DFL)
Calculate the degree of financial leverage (DFL), the percentage change in net income for each percentage change in operating income.
Financial leverage comes from fixed financing costs, mostly interest: when operating income rises, the interest stays the same, so net income rises faster, and the reverse when it falls. A company without debt has a DFL of about 1; the more of its operating income goes to interest, the higher the DFL and the financial risk.
The formula is as follows:
\[\text{DFL} = \%\Delta \;\text{Net Income} / \%\Delta \;\text{Operating Income}\]The changes are period over period with annual data and year over year with quarterly data (a quarter against the same quarter a year earlier), so seasonality does not enter. Each change is (Value - Previous Value) / |Previous Value|, so a change from a negative base keeps its sign. The ratio is unstable when the denominator barely changes: a small change in it gives a very large degree, and no change gives NaN.
Net income also moves with one-off items (non-operating gains, tax changes, discontinued operations), which enter the DFL as well.
Also known as: DFL, financial leverage, financial gearing.
Degree of Financial Leverage (DFL) in Python or via the MCP
Install the Finance Toolkit with:
pip install financetoolkit -U
Then call get_degree_of_financial_leverage as shown below.
from financetoolkit import Toolkit
toolkit = Toolkit(
["AAPL", "F", "DAL"],
api_key="FINANCIAL_MODELING_PREP_KEY",
start_date="2021-01-01",
end_date="2025-12-31",
)
toolkit.ratios.get_degree_of_financial_leverage()
Or, after setting up the Finance Toolkit MCP, ask:
What was the degree of financial leverage of Apple, Ford and Delta Air Lines from 2021 to 2025?
Which returns:
| 2021 | 2022 | 2023 | 2024 | 2025 | |
|---|---|---|---|---|---|
| AAPL | 1.0087 | 0.5621 | 0.6543 | -0.4308 | 2.4427 |
| DAL | 0.8883 | 3.939 | 4.9147 | -2.9113 | -15.5172 |
| F | 7.1557 | -4.0617 | -19.857 | -6.6974 | 4.7545 |
Parameters
get_degree_of_financial_leverage accepts the following parameters.
| Parameter | Type | Description | Example |
|---|---|---|---|
rounding | int | None | The number of decimals to round the results to. Defaults to None, which uses the rounding of the Toolkit (4 unless set otherwise). | 2 |
growth | bool | Whether to calculate the growth of the ratios. Defaults to False. | True |
lag | int | list[int] | The lag to use for the growth calculation. Defaults to 1. | 4 |
compound | bool | Whether 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 |
standardize | bool | Whether to standardize (Z-Score) the result. When combined with growth=True, standardizes the growth values instead of the raw values. Defaults to False. | True |
trailing | int | The number of periods to sum the flows over before their changes are compared, e.g. 4 with quarterly data compares trailing twelve months with those a year earlier. Defaults to None, which uses single-period flows. | 4 |