Kermack & McKendrick, 1927 — the skeleton of epidemic modelling, and where the word "spreading" gets its mathematics
Cited in: Topic 24 Spreading & Contagion
01The Question It Poses
In 1927 Kermack and McKendrick set out to settle something that had been nagging: why does an epidemic recede while a large crowd of people who never caught it is still standing there?
The popular answer at the time was that the pathogen "attenuated" during the outbreak — grew milder as it went. That answer requires assuming the pathogen itself changed. The two of them wanted to know: can the curve be derived assuming nothing of the sort, using only bookkeeping on head counts?
It can. And what fell out is worth more than the original question: a single number that compresses "will this take off or not" into one test.
02The Rules
Split a population of size N into three piles: S susceptible (can still catch it), I infectious (currently transmitting), R removed (recovered or dead, out of the process).
Each infectious person makes β "effective contacts" per unit time. The share of those landing on susceptibles is S/N, so new infections per unit time = β·I·S/N.
Infectious people leave the infectious pile at rate γ. The mean infectious period is therefore 1/γ.
No births, no deaths other than removal, and nobody returns from R to S. The three piles always sum to N.
Everyone is equally likely to meet everyone. This is homogeneous mixing, and it is by far the most expensive assumption in the model.
Divide the two parameters and you get the famous number: R₀ = β / γ — the basic reproduction number, how many people one infectious person infects on average in a fully susceptible population. Numerator: how fast it transmits. Denominator: how quickly transmission stops. So R₀ is inherently a rate times a duration, never an intrinsic property of the pathogen.
The whole model is this diagram. The S/N inside the left arrow is the source of every counter-intuitive result it produces.
03What You See When It Runs
Drop in one infectious person. If R₀ > 1, infections rise exponentially; as susceptibles are consumed, the effective reproduction number R₀·S/N slides downward; when S/N reaches 1/R₀ it equals exactly 1, and new cases peak. After that new cases fall — but they do not stop.
The key scene comes after the peak: a large number of people are still mid-infection, and they carry on, so S keeps falling, well past 1/R₀. That extra stretch is overshoot. How many are ultimately infected is fixed by an equation containing only R₀: about 94% at R₀ = 3, about 80% at R₀ = 2, about 58% at R₀ = 1.5.
Read the three curves together: the peak lands the moment S/N touches 1/R₀, and the epidemic still has a long stretch to burn after that.
Two more properties only show up once you run it. First, peak timing is wildly sensitive to the parameters while final size is stable — shave β a little and the peak arrives much later and much lower, but unless suppression is sustained the eventual total barely moves. Second, below R₀ = 1 the curve never gets going at all, no matter how many initial infections you seed. That is the entire content of the word "threshold".
04What It Explains
First, why epidemics are self-limiting: no need to assume a weakening pathogen; burning the fuel is enough. That was the original question.
Second, the vaccination threshold: to hold R_eff below 1 from the outset, the susceptible share must start below 1/R₀, so coverage must be at least 1 − 1/R₀. The 90%-plus requirement for high-R₀ diseases like measles comes straight from that line.
Third, why flattening the curve really does cut the total: final size is a function of the effective reproduction number, so pushing it from 3 to 1.5 takes the eventual attack rate from about 94% to about 58%. Intervention is not merely rescheduling the same cases.
Fourth, it hands over a portable skeleton: swap S/I/R for "hasn't heard / actively sharing / bored of it" and the same equations become a rumour model; swap in "hasn't adopted / actively recommending / churned" and you have a product diffusion model. The skeleton travels — and so does every item in the next section.
What It Cannot Explain
It cannot handle uneven contact. Homogeneous mixing is hard-coded. Real contact networks often have heavy-tailed degree distributions, where the threshold is set by ⟨k²⟩/⟨k⟩ rather than the mean degree and may approach zero — which invalidates the conclusion "R₀ < 1 means safe" itself. Handling this requires a network spreading model, not a tweak.
It cannot handle overdispersion. Every infectious person in the model is an incarnation of the average, while real secondary-infection counts are wildly uneven (SARS-CoV-2's dispersion parameter was around 0.1, with roughly 10% of cases producing 80% of transmission). Consequences: outbreaks with R₀ > 1 often die out anyway, early data has far more variance than the model expects, and short-term extrapolation from averages misleads systematically.
It cannot handle reinfection, latency or mutation. S→I→R is one-way with lifelong immunity. A latent period needs an extra E compartment (giving SEIR), waning immunity needs an edge back to S (SIRS/SIS), and mutation means parameters change mid-run. None of these are adjustments; each is a different model.
It cannot be ported straight to ideas. What's missing is not mathematics but an observable definition of infection: when exactly has a person accepted a claim? Without a decidable transition, β and γ cannot be measured and R₀ has no empirical content. Ideas are also mostly complex contagions — needing repeated exposure from several distinct sources — while SIR assumes one contact suffices, which contradicts that outright.
It cannot tell you "when". Final size is stable; peak timing is not. Asking SIR which week the peak lands is demanding precision from the quantity most sensitive to the parameters. What it answers well is "how many in the end" and "how far must this be pushed down to hold".