Calculate the return on capital employed (ROCE), a profitability ratio that measures the amount of return a company generates from the capital it has invested in the business.

Return on capital employed (ROCE) is a crucial financial metric that evaluates the efficiency and profitability of a company’s utilization of both equity and debt capital to generate profits. It assesses how well the company generates earnings relative to the total capital invested in the business.

The formula is as follows:

\[\text{Return on Capital Employed} = \text{EBIT} / (\text{Total Assets} - \text{Current Liabilities})\]

EBIT is taken as operating income, so non-operating gains and losses such as interest income or investment results do not enter the return.

ROCE is widely used for capital-intensive industries such as oil and gas, mining, utilities and telecoms, because it measures the operating return on all long-term funding, equity and debt, regardless of the capital structure. It is compared with the cost of capital and with peers over a full cycle, since commodity producers show very high ROCE at the top of a price cycle. The capital employed is taken at the end of the period (averaged over the window when trailing is set), so a large acquisition late in the year lowers the ratio before the acquired earnings come in.

Also known as: ROCE.

Return on Capital Employed (RoCE) in Python or via the MCP

Install the Finance Toolkit with:

pip install financetoolkit -U

Then call get_return_on_capital_employed as shown below.

from financetoolkit import Toolkit

toolkit = Toolkit(
    ["XOM", "CVX", "SHEL", "BP"],
    api_key="FINANCIAL_MODELING_PREP_KEY",
    start_date="2021-01-01",
    end_date="2025-12-31",
)

toolkit.ratios.get_return_on_capital_employed()

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

How did the return on capital employed of ExxonMobil, Chevron, Shell and BP compare from 2021 to 2025?

Which returns:

  2021 2022 2023 2024 2025
BP 0.0516 0.2192 0.1599 0.0642 0.0781
CVX 0.0757 0.1787 0.1473 0.1332 0.0574
SHEL 0.0722 0.1962 0.0989 0.1025 0.0958
XOM 0.0851 0.2134 0.143 0.1035 0.0901

Parameters

get_return_on_capital_employed 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 flows (income and cash flow statement items) over, with balance sheet items averaged over the same number of period ends. E.g. 4 with quarterly data gives the trailing twelve months (TTM) and 3 with annual data a three-year cumulative figure. Defaults to None, which uses single-period flows (per quarter and not annualized with quarterly data).4
Share