Skip to content
Calculator Collection

Population Growth Rate Calculator

Compute the exponential growth rate r from initial and final population sizes over a time interval, as r = ln(N_final / N_initial) / t. Useful for bacterial cultures, microbial fermentation, cell-culture monitoring, and any closed system in exponential phase.

Last updated: May 2026

Compare with similar

About this calculator

For a population growing exponentially, N(t) = N₀ · e^(rt), where N₀ is the initial population, N(t) is the population at time t, and r is the per-unit-time intrinsic growth rate. Rearranging for r given two measurements: r = ln(N_final / N_initial) / t. This calculator computes exactly that. The result r has units of "per unit time" matching your time input (per day, per hour, per minute, depending on how you entered t). Positive r means growth; r = 0 means no change; negative r means decline. Variables: initialPopulation and finalPopulation are the counts at two time points; timeElapsed is the time between them, in any consistent unit. Edge cases: initialPopulation must be > 0 (you can't grow from zero exponentially); finalPopulation = 0 makes ln(0) = -∞ (population extinction over the interval); the formula assumes exponential growth held throughout the interval, which is only true in the unconstrained "log phase" of a culture or population. Once resources become limiting, growth shifts to logistic dynamics (S-shaped curve), and the simple exponential r overestimates future growth. Useful conversions: doubling time = ln(2) / r ≈ 0.693 / r; for bacteria in log phase, typical r values are 0.5–2.0 per hour (doubling every 20–90 min); for E. coli at optimal conditions, r ≈ 1.4/hour, doubling every ~30 min. Population r is also related to the per-capita birth rate (b) minus per-capita death rate (d): r = b − d for a closed population. For ecological populations with migration, r_total = r_intrinsic + (immigration − emigration)/N.

How to use

Example 1 — Bacterial culture in log phase. You start with 100 cells/ml and after 10 days (or whatever time unit you measured in) you have 150 cells/ml. Enter Initial Population = 100, Final Population = 150, Time Elapsed = 10. r = ln(150 / 100) / 10 = ln(1.5) / 10 ≈ 0.4055 / 10 ≈ 0.0405 per day. ✓ The population is growing at ~4% per day; doubling time = 0.693 / 0.0405 ≈ 17.1 days. Example 2 — Yeast culture in optimal conditions. Start with 1×10⁶ cells/ml; after 4 hours you have 8×10⁶ cells/ml (a tripling-and-a-bit, consistent with log-phase yeast). Enter 1000000, 8000000, 4. r = ln(8000000 / 1000000) / 4 = ln(8) / 4 ≈ 2.079 / 4 ≈ 0.52 per hour. ✓ Doubling time = 0.693 / 0.52 ≈ 1.33 hours ≈ 80 minutes — typical for budding yeast in rich medium. If the same r continued, after 24 hours the culture would reach 1×10⁶ · e^(0.52·24) ≈ 3×10¹¹ cells/ml, which is impossible in a real flask — nutrient limitation kicks in long before that.

Frequently asked questions

What does the growth rate r actually mean?

r is the per-capita rate of population change per unit time, in the exponential growth model. It's a continuous-time rate, so r = 0.05 per day doesn't mean "5% more per day" exactly — over a single day the population multiplies by e^0.05 ≈ 1.0513, which is closer to 5.13% growth. The doubling time relationship is t_double = ln(2)/r ≈ 0.693/r. For demographic comparison: r ≈ 0.01–0.03 per year represents typical human population growth rates; r ≈ 0.05–0.1 per hour represents bacterial cultures in nutrient-rich media; r near 0 means a population at equilibrium. Negative r means decline — useful for measuring radioactive decay, drug elimination, or population collapse. The discrete-time equivalent is λ = e^r, the per-period growth multiplier.

When does exponential growth actually apply in biology?

Pure exponential growth holds when resources are unlimited and conditions are constant — the so-called "log phase" of a microbial culture, or invasive species early in colonising a new habitat, or the first few generations of a population recovering from a bottleneck. Once resources become limiting (food, space, nutrients) or density-dependent effects kick in (competition, predation, disease), growth slows and the population approaches logistic dynamics: dN/dt = rN(1 − N/K), where K is carrying capacity. The transition from exponential to logistic is usually gradual — the calculator's r overestimates future growth when applied beyond the unlimited-resource phase. In a culture flask, log phase typically lasts a few hours to a day before the culture enters stationary phase; in ecology, exponential growth in real systems is rarely sustained for more than a few generations.

How is r related to doubling time?

Doubling time t_d = ln(2) / r ≈ 0.693 / r, when r is in per-unit-time. So r = 1 per hour gives t_d = 0.693 hour ≈ 42 min; r = 0.1 per hour gives t_d = 6.93 hours; r = 0.01 per year gives t_d ≈ 69 years. Inversely, r = ln(2) / t_d. This is the same relationship as the radioactive decay half-life formula, just applied to growth. The famous "doubling time of bacteria" you hear quoted (20 min, 30 min, etc.) refers to t_d under specific growth conditions; r for the same culture under different conditions (temperature, nutrients, oxygen) can vary 10× or more.

What are the most common mistakes people make computing growth rate?

The first is applying the exponential formula to a population that's no longer in log phase — once the culture starts saturating, the computed r is an underestimate of the initial intrinsic rate and an overestimate of future growth. The second is mixing time units — entering hours of elapsed time when concentrations were per day, or vice versa, scales r by a factor of 24 in the wrong direction. The third is using just two data points when more would dramatically reduce error; fitting r from a regression of ln(N) vs t across many time points is far more reliable. The fourth is forgetting that r depends sensitively on conditions: temperature, nutrient levels, oxygen, pH, and competing organisms all shift it dramatically. The fifth is comparing r values across different organisms or systems without recognising that the underlying biology differs; bacterial r and mammalian-cell r aren't directly comparable.

When should I not use this calculator?

Skip it for populations clearly out of log phase — once approaching carrying capacity, use the logistic equation dN/dt = rN(1 − N/K) or fit a Gompertz growth model. Don't use it for populations with age structure (most animals, plants); demographic projections need stage-structured matrix models (Leslie matrices), not a single r. It's the wrong tool for stochastic small populations (under ~50 individuals) where extinction risk dominates and deterministic exponential models break down. Avoid it for fluctuating environments where r changes over time; you need time-series methods or environmentally explicit models. Finally, don't use it for short intervals where the change in population is dominated by measurement noise rather than real growth; with only 10–20% change between time points, the computed r has very wide confidence intervals.

Sources & references