acalculator

What is my exponential growth?

Pick what to find, then type the other three of the initial value, the rate per period, the time, and the final value. The calculator finds the fourth and draws the curve.

Your numbers

Growth
Find
Final value (x(t))
162.889463

100 growing at 5% per period (Once per period) for 10 periods becomes 162.889463.

Doubling time (periods)
14.206699
Growth factor per period
1.05
Total change
62.8895%

Final value (x(t)): 162.889463. 100 growing at 5% per period (Once per period) for 10 periods becomes 162.889463.

How the amount changes over time

How to calculate

Finds the final value of exponential growth or decay from the initial value, the rate per period, and the time, or any one of them from the other three, with the doubling time or half-life.

Example with the default inputs (Growth Once per period, Find Final value, Initial value (x₀) 100, Growth rate per period (r) 5%, Time (periods) 10): 100 growing at 5% per period (Once per period) for 10 periods becomes 162.889463.

Method: Once per period: x(t) = x₀ × (1 + r)^t. Continuous: x(t) = x₀ × e^(r × t). Doubling time = ln 2 ÷ ln(1 + r) (continuous: ln 2 ÷ r); half-life = ln 2 ÷ −ln(1 + r) (continuous: ln 2 ÷ −r).

  • r is the percent change per period (5% is 0.05); a negative r is decay. r is more than −100% and at most 1,000%.
  • Time is counted in periods and may be a fraction of a period; the rate and the time use the same period.
  • The initial and final values are from 10^-300 to 10^300; the time is from 0 to 1,000 periods.

Machine-readable copies: Markdown, JSON.

Worked examples

Each example is checked against the calculator on every build.

  1. Growth Once per period, Find Final value, Initial value (x₀) 100, Growth rate per period (r) 5%, Time (periods) 10 gives Final value (x(t)) 162.889463, Doubling time (periods) 14.206699, Growth factor per period 1.05, Total change 62.889463%.Source: Formula from OpenStax College Algebra 2e, section 6.1: https://openstax.org/books/college-algebra-2e/pages/6-1-exponential-functions
  2. Growth Continuous, Find Final value, Initial value (x₀) 100, Growth rate per period (r) 5%, Time (periods) 10 gives Final value (x(t)) 164.872127, Doubling time (periods) 13.862944.
  3. Growth Once per period, Find Rate, Initial value (x₀) 1,000, Final value (x(t)) 250, Time (periods) 2 gives Growth rate per period (r) -50%, Half-life (periods) 1.
  4. Growth Once per period, Find Time, Initial value (x₀) 500, Growth rate per period (r) 3%, Final value (x(t)) 1,000 gives Time (periods) 23.449772.
  5. Growth Once per period, Find Initial value, Growth rate per period (r) 10%, Time (periods) 3, Final value (x(t)) 1,331 gives Initial value (x₀) 1,000.
  6. Growth Once per period, Find Final value, Initial value (x₀) 1,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000, Growth rate per period (r) -99%, Time (periods) 162 gives Final value (x(t)) 0.

How it works

The calculator uses one of two models, with x₀ the initial value, r the rate per period (typed as a percent, so 5% means r = 0.05), t the time in periods, and x(t) the final value:

  • Once per period: x(t) = x₀ × (1 + r)^t
  • Continuous: x(t) = x₀ × e^(r × t)

Pick what to Find (the final value, the initial value, the rate, or the time) and type the other three. Let L be the natural log of the growth per period: L = ln(1 + r) once per period, and L = r continuous, so that x(t) = x₀ × e^(L × t) in both models. Then:

  • final value: x(t) = x₀ × e^(L × t);
  • initial value: x₀ = x(t) × e^(−L × t);
  • rate: L = ln(x(t) ÷ x₀) ÷ t, and r = e^L − 1 once per period, or r = L continuous;
  • time: t = ln(x(t) ÷ x₀) ÷ L.

The calculator works these out in logarithms (ln(x(t) ÷ x₀) is computed so that it keeps its digits when x(t) is close to x₀, and e^(L × t) is never formed on its own when it would be too large or too small for a float), so an answer that is a normal number never fails because a step overflows.

It also shows, from r and the model:

  • Doubling time (when r > 0): ln 2 ÷ L periods, which is ln 2 ÷ ln(1 + r) once per period and ln 2 ÷ r continuous.
  • Half-life (when r < 0): ln 2 ÷ (−L) periods.
  • Growth factor per period: 1 + r once per period, e^r continuous.
  • Total change: (e^(L × t) − 1) × 100%, the same as (x(t) ÷ x₀ − 1) × 100%.

Numbers are shown to at most 6 decimal places (percents to 4). The chart draws x₀ × (x(t) ÷ x₀)^(s ÷ t) for s from 0 to t (to 1 when t is 0), with a marker at t.

Limits and rules

  • x₀ and x(t) are from 10^-300 to 10^300; r is more than −100% and at most 1,000% per period; t is from 0 to 1,000 periods. These limits hold for typed and found values alike (a found value within float rounding of a limit counts as inside it).
  • A found value outside the limits has no answer, with a message: a final or initial value over 10^300 or below 10^-300, a rate over 1,000% or at most −100%, or a time over 1,000 periods.
  • A doubling time, half-life, growth factor, or total change too large for a 64-bit float (a change beyond about 10^306 %) is left out.
  • With t = 0 no rate fits. With r = 0 no time fits. A positive rate needs x(t) larger than x₀, and a negative rate needs x(t) smaller than x₀, to find a time (otherwise the time would be negative).

Worked examples by hand

100 at 5% for 10 periods, once per period. 1.05^10 = 1.628894627, so x(10) = 162.889463. The total change is 62.889463%, the growth factor 1.05, and the doubling time ln 2 ÷ ln 1.05 = 0.693147 ÷ 0.048790 = 14.206699 periods.

100 at 5% for 10 periods, continuous. e^(0.05 × 10) = e^0.5 = 1.648721, so x(10) = 164.872127, and the doubling time is ln 2 ÷ 0.05 = 13.862944 periods.

1000 down to 250 in 2 periods (find the rate). 250 ÷ 1000 = 0.25 = 0.5², so 1 + r = 0.5 and r = −50%. The amount halves every period: a half-life of 1 period.

500 at 3% to 1000 (find the time). 1000 ÷ 500 = 2, so t = ln 2 ÷ ln 1.03 = 0.693147 ÷ 0.029559 = 23.449772 periods.

1331 after 3 periods at 10% (find the initial value). 1.1³ = 1.331, so x₀ = 1331 ÷ 1.331 = 1000.

10^300 at −99% for 162 periods. 0.01^162 = 10^-324 is too small for a float on its own, but in logarithms x(162) = e^(ln 10^300 + 162 × ln 0.01) = 10^(300 − 324) = 10^-24.

Other questions people ask

What is the exponential growth formula?

x(t) = x₀ × (1 + r)^t, where x₀ is the initial value, r the growth rate per period as a decimal (5% is 0.05), and t the number of periods. $100 growing 5% a period for 10 periods becomes 100 × 1.05^10 ≈ 162.89.

What is the difference between growth once per period and continuous growth?

Once per period, the amount grows in steps, by r at the end of each period: x₀(1 + r)^t. Continuous growth compounds all the time: x₀e^(rt). At the same r, continuous growth ends a little higher: 100 at 5% for 10 periods gives 162.89 per period and 164.87 continuous.

How do I calculate exponential decay?

Use a negative rate. A population that shrinks 50% each year has r = −50%: 1000 × (1 − 0.5)² = 250 after 2 years. The rate must be more than −100%, because losing 100% leaves nothing.

How do I find the growth rate from two values?

Solve the formula for r: r = (x(t) ÷ x₀)^(1/t) − 1 for growth once per period, or r = ln(x(t) ÷ x₀) ÷ t for continuous growth. Pick Rate under Find, then type the initial value, the final value, and the time.

What is the doubling time?

The time it takes the amount to double: ln 2 ÷ ln(1 + r) periods, or ln 2 ÷ r for continuous growth. At 5% per period it is about 14.2 periods. The rule of 70 (70 ÷ 5 = 14) is a quick estimate of the same number.

What is a half-life?

For decay, the time it takes the amount to fall by half: ln 2 ÷ ln(1 ÷ (1 + r)) periods. At −50% per period the half-life is exactly 1 period.

Can the time be a fraction of a period?

Yes. The formula works for any time from 0 up: 2.5 periods at 10% gives x₀ × 1.1^2.5. The rate and the time must use the same period (a yearly rate with time in years).