English

Data & spreadsheets · DCF Calculator

How the Perpetuity Formula Breaks When Growth Nears the Discount Rate

· How it works

dcf valuation cash-flow

A narrowing gap between discount and growth rates beside a rapidly expanding terminal value
Original ToolAcre vector illustration

The growing perpetuity formula divides by the gap between the discount rate and the growth rate. This post explains what happens as that gap shrinks, why the result turns negative past it, and how to sanity-check terminal assumptions.

A terminal value that is astronomically large or negative — how a small growth tweak produced an impossible result

An enormous terminal value can come from one small-looking input because Gordon growth divides next year’s cash flow by the gap between discount and growth rates. If growth crosses the discount rate, the formula yields zero division or a negative number. ToolAcre refuses both outcomes instead of formatting them as meaningful valuation results.

The denominator that does the damage — how (r − g) sits under the terminal cash flow and why halving the gap doubles the value

With next-year cash flow fixed at 102, an 8% discount rate and 2% growth produce 1,700. At 4% growth the value is 2,600; at 6% it is 5,300. Moving to 7% leaves a one-point denominator and gives 10,700. Halving that denominator approximately doubles value because the numerator changes only modestly.

What the formula assumes — a perpetual, constant growth rate below the discount rate, and why breaking that assumption breaks the maths, not just the answer

The equation is a convergent growing series only when discounting outruns perpetual growth. Constant growth forever and a stable discount rate are already strong simplifications; allowing growth to equal or exceed the rate removes convergence itself. The failure is not merely an aggressive answer but a formula whose required condition no longer holds.

Why perpetual growth must stay below the discount rate — the convergence condition the model enforces

The workbook heading asserted an economic cap near nominal economic growth, but the repository contains no sourced economy-wide rate or forecast. The verifiable rule is narrower: the engine enforces growth below the discount rate. Any additional plausibility judgement about a real business or economy must come from current external evidence that is outside this article.

Worked example — one terminal cash flow valued across a widening set of growth rates, showing the curve steepen and then flip sign

Holding a hypothetical next-year cash flow near 100 and an 8% rate, growth assumptions of 2%, 4%, 6%, 7% and 7.9% produce terminal values of 1,700, 2,600, 5,300, 10,700 and about 107,900. At 8% the tool throws TERMINAL_GROWTH_TOO_HIGH; above it, the same guard prevents a negative terminal result.

Sanity checks to run every time — implied terminal multiples and terminal value share as warning lights

Two useful warning lights are already present in the product: terminal value share shows how much enterprise value rests on the tail, and the sensitivity grid exposes rapid movement across nearby assumptions. The interface also warns when terminal value exceeds three quarters of total value, but that threshold is a presentation flag, not proof that a model is right or wrong.

What the calculator can and cannot judge — it rejects r ≤ g but cannot decide whether a valid rate is plausible

The original heading said the calculator accepts any growth rate. Source and tests contradict it: perpetuity calculations reject growth greater than or equal to the discount rate and identify the field. It still cannot judge whether a lower, mathematically valid number is defensible for a particular company; validation protects arithmetic, not forecasting quality.

Keep the gap wide and deliberate — how entering a range of growth rates in the ToolAcre DCF Calculator makes the instability visible

Keep a deliberate gap and show the sensitivity around it. ToolAcre preserves invalid grid cells rather than hiding them, so the boundary remains visible. A DCF is a model whose result is entirely conditional on supplied assumptions, and a value that rises sharply near a mathematical boundary should be reported as fragile rather than precise.