Logistic Growth Calculator
Written by Thierno Sadou Diallo, formula verified per our methodology • Last checked on 9/9/2026
The logistic growth model gives a population's size at time t: P(t) = K / (1 + ((K−P₀)/P₀) × e^(−r×t)), where K is the environment's carrying capacity (the limit the population can't durably exceed). A population of 100 individuals, carrying capacity 1000, growth rate 0.5, reaches about 575 individuals after 5 time units.
Explanation
The logistic growth model, or Verhulst model, corrects an important limitation of exponential growth: in reality, no population can grow indefinitely without limit, because available resources (food, space, water) eventually become insufficient. This model introduces a carrying capacity K, the maximum population size the environment can durably sustain, and slows growth as the population approaches it, until it stops completely once P reaches K. The resulting curve has a characteristic S-shape (sigmoid): growth that's initially close to exponential when the population is small relative to K (little resource constraint), which then gradually slows as competition for resources intensifies, eventually leveling off at K. The inflection point of this curve — the moment of fastest growth — sits exactly at P=K/2, a mathematical property of the model independent of the values of r and P₀. This model is fundamental in population ecology (the growth of a bacterial colony in a closed culture medium, the dynamics of an animal population introduced into a new habitat), but is also used well beyond biology: the spread of an innovation or an epidemic through a population, or the gradual saturation of a market. The doubling time of a population, which assumes unlimited exponential growth, therefore no longer applies once the population significantly approaches its carrying capacity.
Example: a population with a carrying capacity of 1000
Inputs
Initial population: 100. Carrying capacity: 1000. Growth rate: 0.5. Time elapsed: 5.
Calculation
P(5) = 1000 / (1 + ((1000−100)/100) × e^(−0.5×5)) = 1000 / (1 + 9 × e^(−2.5)) ≈ 1000 / (1 + 9 × 0.0821) ≈ 1000 / 1.739 ≈ 575.1.
Result
After 5 time units, the population reaches about 575 individuals — more than halfway to the carrying capacity of 1000, but growth is already noticeably slowing compared to the start.
Frequently asked questions
What happens if the initial population already exceeds the carrying capacity?
The model remains mathematically valid in that case: the term (K−P₀) becomes negative, and the population gradually decreases toward K instead of growing toward it, which correctly matches the ecological reality of an overpopulated group contracting due to insufficient resources until it returns to a sustainable level.
Why does growth slow down even before reaching the carrying capacity?
Because the slowdown is gradual and proportional to the remaining gap to K, not a phenomenon that kicks in abruptly at the last moment: the term (1−P/K) in the underlying differential equation decreases continuously as soon as P moves away from zero, reflecting competition for resources that intensifies gradually as the population grows, well before reaching the environment's absolute limit.
Does this model apply to all real populations?
It's a useful but simplified approximation, which assumes a carrying capacity K constant over time and a growth rate r identical at all population densities. In reality, K can vary (a drought temporarily reduces available resources), and some populations oscillate around K rather than settling smoothly, particularly under the effect of predation or delays in the demographic response — refinements this basic model doesn't capture.