SimulationSimLab

What is the SEIR Model? A Complete Guide to Epidemic Simulation

SEIR models divide a population into Susceptible, Exposed, Infected, and Recovered compartments. How the classic model works, its assumptions, extensions, and how to run it.

Ryan Bethencourt
April 16, 2026
14 min read

What Is the SEIR Model?

The SEIR model is the workhorse of infectious disease modeling. It divides a population into four compartments — Susceptible, Exposed (infected but not yet infectious), Infected, and Recovered — and tracks the flow of people between them over time. A susceptible person becomes exposed after contact with an infectious one. An exposed person becomes infectious after an incubation period. An infectious person becomes recovered (or deceased) after a recovery period.

This is a stub pillar page. The full guide will cover SEIR assumptions, extensions (SEIRD, age-structured SEIR, vaccinated compartments), limitations, and the spatial agent-based implementation. Use the browser simulators below to build intuition before reading the details.

The Core Flow

  • S → E. Susceptible contacts an infectious person; transmission happens with probability β per contact.
  • E → I. Exposed becomes infectious after the incubation period (1/σ).
  • I → R. Infectious recovers (or dies) after the infectious period (1/γ). R₀ = β/γ.

Why SEIR and Not SIR

For diseases where the incubation period is short compared to the epidemic timescale, SIR is adequate. For everything else — COVID-19, measles, Ebola, many sexually transmitted infections — the lag between infection and infectiousness matters enormously. Skipping the E compartment makes the model predict faster-than-real dynamics because it assumes every newly infected person can immediately transmit.

From ODE to Agent-Based

The classic SEIR is a system of four ordinary differential equations. It assumes the population is well-mixed — every S has equal chance of encountering every I. This is wildly wrong in practice. An agent-based SEIR keeps the same compartments but places the agents on a grid or network, so transmission depends on proximity or contact structure. The curves look similar on average, but spatial SEIR produces wavefronts, refugia, and late-stage plateaus that the ODE model misses entirely.

Extensions That Matter

  • SEIRD — adds a Deceased compartment. Required for mortality tracking.
  • Age-structured SEIR — separate compartments by age band, with age-specific contact matrices and severity rates.
  • SEIRV — adds a Vaccinated compartment that flows directly from S to R (or S to a protected version of S).
  • Variant-aware SEIR — multiple I compartments for different variants, each with its own R₀ and cross-immunity coefficients.

Frequently Asked Questions

What is the difference between SIR and SEIR?

SIR has three compartments — Susceptible, Infected, Recovered. SEIR adds an Exposed compartment for people who are infected but not yet infectious. SEIR is preferred when the incubation period is non-negligible (COVID-19, measles, Ebola), SIR when it is short (influenza in some models).

What is R₀?

R₀ is the expected number of secondary infections produced by one infected individual in a fully susceptible population. R₀ > 1 means the epidemic grows; R₀ < 1 means it dies out. Real R₀ values: measles ~15, COVID-19 ancestral ~2.5, seasonal flu ~1.3.

Does SEIR work on spatial grids?

Yes. The ODE version assumes well-mixed populations. The agent-based spatial version (like the simulator above) keeps the SEIR compartments but applies them to individuals located on a grid, where transmission depends on proximity. This adds realistic wavefronts and spatial heterogeneity to the dynamics.

What is herd immunity threshold?

The fraction of the population that must be immune for R_effective to fall below 1. For a simple SEIR model, it is 1 − 1/R₀. With R₀ = 2.5, the threshold is 60%. With R₀ = 15 (measles), it is 93%. Spatial structure and heterogeneity can shift this.

Run this yourself — no GPU, no install

Free for researchers. Pick a tool, paste your input, see results in seconds.