Working Capital Turnover Ratio
Calculate the working capital turnover ratio, an efficiency ratio that measures how effectively a company uses its working capital to generate revenue.
A high working capital turnover ratio indicates that a company is generating a large amount of revenue relative to the working capital it employs, which can signal an efficient (or, if extreme, undercapitalized) operation. A low ratio can indicate excess inventory, slow receivables collection, or otherwise underutilized working capital.
The formula is as follows:
\[\text{Working Capital Turnover Ratio} = \text{Revenue} / \text{Average Working Capital}\]The ratio only reads well when working capital is clearly positive. When current assets and current liabilities are close, a small change in either swings the ratio to very large or negative values, which says little about efficiency, so check get_working_capital alongside it. Companies that run on negative working capital, such as retailers paid by their customers before they pay their suppliers, show a negative ratio that reflects their business model rather than weak efficiency.
Working Capital Turnover Ratio in Python or via the MCP
Install the Finance Toolkit with:
pip install financetoolkit -U
Then call get_working_capital_turnover_ratio as shown below.
from financetoolkit import Toolkit
toolkit = Toolkit(
["FAST", "GWW", "MSM"],
api_key="FINANCIAL_MODELING_PREP_KEY",
start_date="2021-01-01",
end_date="2025-12-31",
)
toolkit.ratios.get_working_capital_turnover_ratio()
Or, after setting up the Finance Toolkit MCP, ask:
How much revenue did Fastenal, W.W. Grainger and MSC Industrial generate per dollar of working capital from 2021 to 2025?
Which returns:
| 2021 | 2022 | 2023 | 2024 | 2025 | |
|---|---|---|---|---|---|
| FAST | 2.9601 | 3.096 | 3.1299 | 3.0898 | 3.1055 |
| GWW | 5.2497 | 5.5883 | 5.1413 | 4.9943 | 5.1439 |
| MSM | 4.1018 | 4.7031 | 5.397 | 6.1099 | 6.9814 |
Parameters
get_working_capital_turnover_ratio 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 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 |