Calculate the deferred revenue ratio, an efficiency ratio that measures the size of a company’s deferred revenue (payments collected for goods or services not yet delivered) relative to its revenue.

This ratio is a common leading indicator for subscription and SaaS businesses, where a growing deferred revenue balance relative to revenue can signal accelerating future revenue recognition.

The formula is as follows:

\[\text{Deferred Revenue Ratio} = \text{Deferred Revenue} / \text{Revenue}\]

Without trailing, the deferred revenue balance at the end of the period is used, so the ratio shows the backlog of prepaid revenue at that date. With trailing, the balance is averaged over the trailing period ends to match the summed revenue.

Also known as: deferred revenue intensity, unearned revenue ratio.

Deferred Revenue Ratio in Python or via the MCP

Install the Finance Toolkit with:

pip install financetoolkit -U

Then call get_deferred_revenue_ratio as shown below.

from financetoolkit import Toolkit

toolkit = Toolkit(
    ["ORCL", "ADBE", "WDAY"],
    api_key="FINANCIAL_MODELING_PREP_KEY",
    start_date="2021-01-01",
    end_date="2025-12-31",
)

toolkit.ratios.get_deferred_revenue_ratio()

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

How large was the deferred revenue of Oracle, Adobe and Workday relative to their revenue from 2021 to 2025?

Which returns:

  2021 2022 2023 2024 2025
ADBE 0.2998 0.3009 0.3007 0.2851 0.2905
ORCL 0.1969 0.1796 0.1758 0.1635 0.1472
WDAY 0.6054 0.5726 0.5589 0.5289 0.5245

Parameters

get_deferred_revenue_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 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