\(R_0\) \(R_t\) and everything in between

Mike Irvine

26th September, 2025

Introduction

  • \(R_0\) and \(R_t\) definition
  • Direct method
  • Serial and generation interval definition
  • Renewal equation
    • little r and big R difference
    • when is either applicable
  • Instantaneous and cohort Rt
  • \(R_0\) calculations
    • incorporating population structure
  • \(R_t\) software

\(R_0\) and \(R_t\) definition

  • \(R_0\) is the expected number of secondary cases for a typical primary case in a completely susceptible population.
  • \(R_t\) (effective reproduction number) is the expected number of secondary cases for a typical primary case.
  • Sometimes called a rate but it isn’t!
  • A fundamental measure in epidemiology, \(>1\) cases tend to grow, \(<1\) cases tend to decline.
  • Can be thought of as a combination of the duration of contagiousness, the likelihood of infection per contact, and the contact rate, but lots of subtleties around this.

Some properties of \(R_0\)

  • Under some circumstances can relate to the herd immunity threshold \(HIT = (1 - 1/R_0)\)
  • Can use to create a relationship for the final size of an epidemic, \(1 - F = \exp(-R_0 F)\), in general have \(F = f(R_0)\) [1]
  • Provides insight into a typical infection, \(R_0\) is the product of the number of contacts with susceptible individuals, the probability of infection per contact, and the duration of the infectious period
    • e.g., should we choose between intervention A that reduces the rate of contacts by 50% or intervention B that reduces the rate of contacts by 25% and the infectious duration by 25%?
    • Intervention A: reduces \(R_0\) by 50%
    • Intervention B: reduces \(R_0\) by 1 - 0.75*0.75 = 44%

Direct method

Calculation of \(R_0\) here relatively straightforward, 13 infection events for 10 infectors leads to an \(R_0\) of 1.3

Serial and generation interval

Intrinsic serial interval is the generation interval plus the infectee incubation period minus infector incubation period. [2]

Direct method

Estimation from case data

  • With only case data typically can only estimate a growth rate e.g. through Poisson regression
mu <- function(t){1*exp(0.2*t)}
ts <- seq(1,20)
cases <- rpois(length(ts),mu(ts))
m <- glm(cases ~ t, family="poisson", data = data.frame(t=ts,cases=cases))
summary(m)

Call:
glm(formula = cases ~ t, family = "poisson", data = data.frame(t = ts, 
    cases = cases))

Coefficients:
            Estimate Std. Error z value Pr(>|z|)    
(Intercept) -0.02485    0.23483  -0.106    0.916    
t            0.19722    0.01436  13.735   <2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for poisson family taken to be 1)

    Null deviance: 277.36  on 19  degrees of freedom
Residual deviance:  18.96  on 18  degrees of freedom
AIC: 100.53

Number of Fisher Scoring iterations: 4

Big R and little r

  • Let \(f(a)\) be the density of a new infection event occurring at time \(a\) for an infected individual [3]
    • \(f\) for fecundity (from ecological modelling).
    • Density, so \(f(a)\delta a\) is the number of expected new infections in a small time step \(\delta a\)
  • Let \(I(t)\) be the number of new infections at time \(t\).
  • \(I(t - a)f(a)\) is the number of individuals infected at time \(t\) from individuals infected at time \(t-a\).
  • All individuals infected at time \(t\) are made up of infections from individuals at any point in the past and so,

\[I(t) = \int_0^\infty I(t - a)f(a) da\] - This is a renewal equation for the infection process \(I\).

Big R and little r

  • As \(f(a)\) is the new infections for an individual, \[R_0 = \int_0^\infty f(t) dt.\]

  • \(f\) is also just the unnormalized generation function, \[g(t) = \frac{f(t)}{\int_0^\infty f(a) da}.\]
    Substituting provides the following relationship for \(R_0\), \[R_0 = \frac{I(t)}{\int_0^\infty I(t-a)g(a)da}.\]

Big R and little r

  • Early in an epidemic infections grow exponentially with a fixed growth rate \(r\),

\[I(t) = I(t - a)\exp(r a).\]

  • Combining with renewal equation,

\[\begin{aligned} I(t) &= \int_0^\infty I(t - a)f(a) da, \\ I(t) &= \int_0^\infty I(t)\exp(-\lambda a)f(a) da, \\ 1 &= \int_0^\infty \exp(-\lambda a)f(a)da. \end{aligned}\]

Using definition of generation interval,

\[\frac{1}{R_0} = \int_0^\infty \exp(- r a) g(a) da\]

Big R and little r

  • Even more succinctly \(R_0\) and \(r\) are related through the moment-generating function of \(g\),

\[R_0 = 1/M_g(-r)\]

  • This is a version of the Euler-Lotka equation from Leonhard Euler (1760) and Alfred J. Lotka (1939) [4, 5].

Big R and little r

Instantaneous and cohort \(R_t\)

  • \(R_0\) only describes what happens at the beginning of an epidemic. If we want to consider change in susceptible population, population behaviour, or public health intervention then need to use \(R_t\) instead.
  • \(R_t\) can be defined in two ways:
  • Instantaneous \(R_t\) is the expected number of secondary cases per case that led to the new infections at time \(t\).
  • Cohort (case) \(R_t\) is the expected number of secondary cases for new infections at time \(t\).
  • Cohort \(R_t\) describes the epidemiological properties of a cohort of individuals who were infected at time \(t\), so can only be estimated retrospectively.
  • Instantaneous \(R_t\) does not need to rely on future data so is the preferred option for surveillance.
  • However both still make assumptions around the epidemiological and observation process including needing a specified generation time distribution.

Instantaneous and cohort \(R_t\)

Adapted from [6]

Instantaneous and cohort \(R_t\)

  • Both can be calculated through a renewal equation approach,

  • \[I(t) = R^I(t)\int_0^\infty I(t-s)g(s)ds\]

  • \[I(t) = \int_0^\infty R^C(t-s)I(t-s)g(s)ds\]

  • Notice that the cohort \(R^c(t)\) is inside the integral.

  • One is also just the convolution of the other,

  • \[R^I(t) = \int_0^\infty R^c(s)g(t-s)ds\]

Practical differences between instantaneous and case Rt

Practical differences between instantaneous and case Rt

Adapted from [6]

Incorporating population structure

  • We can also incorporate population structure [7].
  • \(g_a(s; a')\) generation time distribution for infectee \(a\) and infector \(a'\).
  • \(R_a(t)\) reproduction number for group \(a\) (from infectee perspective)
  • \(I_a(t)\) number of new infections at time \(t\) for group \(a\)
  • \(I_{a'}(t-s)g_a(s; a')\) proportion of new infections of group \(a\) at time \(t\) from group \(a'\) at \(s\) time ago.
  • \(R_a(t-s)I_{a'}(t-s)g_a(s; a')\) number of new infections of group \(a\) at time \(t\) from group \(a'\) at \(s\) time ago. \[I_a(t) = \sum_{a'}\int_0^\infty R_a(t-s) I_{a'}(t - s) g_a(s; a')ds\]

Incorporating population structure

  • For example we can incorporate age group where we make some assumptions on a fixed generation time regardless of age.
  • Say we have a WAIFW matrix \(W\) where \(w_{aa'}\) is the probability of infecting \(a\) from \(a'\).
  • We can then define \(g_a(s; a') = g(s)w_{aa'}\), \[I_a(t) = \sum_{a'}w_{aa'}\int_0^\infty R_a(t-s) I_{a'}(t - s) g(s)ds\]

Incorporating population structure

  • According to [8] and [9] if have a more complicated disease process or demographic structure then can:
    • Split the population into \(m\) discrete infectious compartments
    • Construct a matrix \(F\) where each entry represents the infectious rate of group \(i\) into group \(j\)
    • Construct a second matrix \(V^{-1}\) which represents the duration an infection in group \(i\) spends in group \(j\)
  • \(FV^{-1}\) is the expected number of secondary cases arising in group \(i\) from group \(j\)
  • \(R = \rho(FV^{-1})\) is the reproduction number

Incorporating population structure - example

  • For example, imagine a population in 10 groups with their own contact rates
  • Additionally can define how much each group contacts another group (group mixing)
  • Fix so that the overall rate of contacts in the population is fixed

Incorporating population structure - example

Software for fitting \(R_t\)

  • Many packages for estimation, but two prominent ones are:
  • Epinow2
    • Uses modern Hamiltonian Markov chain Monte Carlo to sample the posterior of a Bayesian model incorporating both an \(R_t\) process and a case observation process
    • Utilizes a time-varying Gaussian process to model \(R_t\), but offers many other model choices
    • Can be computationally quite slow
  • Epiestim [10]
    • Uses discretized instantaneous \(R_t\) in a Bayesian framework (often called the Cori method)
    • Incorporates fixed window sizes with assumption \(R_t\) is fixed within
    • Generally computationally very fast
  • Both require you to define a generation interval
  • Both don’t account for population and geospatial heterogeneity - speak to a mathematical modeller!

Conclusion

  • There is no single definition of \(R_0\) and \(R_t\). Nearly all are model based and come with their own set of subtleties and limitations
  • Why not just use the growth rate then?
    • Think about the question being asked. Do you want to know how many cases there will be next week or what the impact of a given intervention will be?
  • Instantaneous and cohort definitions
  • Serial and generation interval aren’t interchangeable and can impact estimates of \(R_t\) (see [2])
  • Adding in demography, natural history of disease and case reporting is important when there’s significant heterogeneity, but how can we measure this?

Thank you

Comic from XKCD
Comic from XKCD

References

1. Andreasen V. The final size of an epidemic and its relation to the basic reproduction number. Bulletin of mathematical biology. 2011;73:2305–21.
2. Park SW, Sun K, Champredon D, Li M, Bolker BM, Earn DJ, et al. Forward-looking serial intervals correctly link epidemic growth to reproduction numbers. Proceedings of the National Academy of Sciences. 2021;118:e2011548118.
3. Wallinga J, Lipsitch M. How generation intervals shape the relationship between growth rates and reproductive numbers. Proceedings of the Royal Society B: Biological Sciences. 2007;274:599–604.
4. Euler L. A general investigation into the mortality and multiplication of the human species. In: Mathematical demography: Selected papers. Springer; 1977. p. 83–91.
5. Lotka AJ. Analytical theory of biological populations. In: Analytical theory of biological populations. Springer Science & Business Media; 1998.
6. Gostic KM, McGough L, Baskerville EB, Abbott S, Joshi K, Tedijanto C, et al. Practical considerations for measuring the effective reproductive number, r t. PLoS computational biology. 2020;16:e1008409.
7. White LF, Archer B, Pagano M. Determining the dynamics of influenza transmission by age. Emerging themes in epidemiology. 2014;11:4.
8. Diekmann O, Heesterbeek JAP, Roberts MG. The construction of next-generation matrices for compartmental epidemic models. Journal of the royal society interface. 2010;7:873–85.
9. Van den Driessche P. Reproduction numbers of infectious disease models. Infectious disease modelling. 2017;2:288–303.
10. Cori A, Ferguson NM, Fraser C, Cauchemez S. A new framework and software to estimate time-varying reproduction numbers during epidemics. American journal of epidemiology. 2013;178:1505–12.