CV19 vaccination staff requirements

:: science

Or: how many people will be needed to vaccinate enough people? How many people will keep on being needed?

Now that vaccines are available for CV19, an interesting question is how many people it will require to vaccinate enough of the population to produce herd immunity. I had a suspicion that this, or the organisational effort involved1 might be the limiting factor. So I thought I’d try and work out what it the number of people required might be.

A simple linear model

Let’s assume that vaccinations happen at a given rate, \(r(t)\), with \(t = 0\) being when they start. Then the number of people vaccinated at a given time \(T\) is

\[ N(T) = \int\limits_0^T r(t)\,dt \]

If each person takes someone \(\tau\) seconds to vaccinate then the effort required is \(\tau r(t)\). But people don’t work all the time, so the number of people required — the staffing cost — is

\[ S(t) = \frac{\tau}{\eta} r(t) \]

Where \(\eta\) is the efficiency with which a person works, which includes time to sleep, breaks, weekends and so on.

Obviously all this depends on the form of \(r(t)\), which in real life will be complicated. I’ll assume it takes a simple form: from a low start it ramps up linearly to some value where it then sits until the initial vaccination program is complete.

\[ r(t) = \begin{cases} r_0 + kt & 0 \le t \lt t_0\\ r_0 + kt_0 & t \ge t_0 \end{cases} \]


\[ S(t) = \frac{\tau}{\eta} \begin{cases} r_0 + kt & 0 \le t \lt t_0\\ r_0 + kt_0 & t \ge t_0 \end{cases} \]

\(r(t)\) is easy to integrate, giving the form for \(N(t)\):

\[ \begin{aligned} N(t) &= \begin{cases} r_0 t + \frac{k t^2}{2} & 0 \le t \lt t_0\\ r_0 t_0 + \frac{k t_0^2}{2} + (r_0 + k t_0)(t - t0) & t \ge t_0 \end{cases}\\ &= \begin{cases} r_0 t + \frac{k t^2}{2} & 0 \le t \lt t_0\\ (r_0 + k t_0)t - \frac{k t_0^2}{2} & t \ge t_0 \end{cases} \end{aligned} \]

Finally, assume that the population is \(P\), that we need to vaccinate a proportion \(\rho\) and we want the programme to be complete at a time \(T\), so \(N(T) = \rho P\). And I’ll assume \(T \ge t_0\): this doesn’t actually matter because if \(T = t_0\) you get a model which has no constant part — the rate always increases linearly.

Using this we can now solve for \(k\):

\[ k = \frac{\rho P - r_0 T}{t_0 T - \frac{t_0^2}{2}} \]

and this gives us the peak staffing level:

\[ S_p = \frac{\tau}{\eta} \left(r_0 + \frac{\rho P - r_0 T}{T - \frac{t_0}{2}}\right) \]

Another thing to work out is the equilibrium staffing level: if the immunity time after vaccination is \(T_i\), then people need to be revaccinated every \(T_i\), and this means that

\[ S_e = \frac{\tau\rho P}{\eta T_i} \]

Some numbers for the linear model

The two last expressions above depend on a bunch of parameters: here are some that are both not too frightening in terms of how long it all takes and not too frightening in terms of staffing requirements. I’ll use seconds as the basic unit of time and define \(M = 30 \times 24 \times 3600 = 2592000\): the length of a month in seconds.

  • \(T = 8 M\): the programme should be complete in eight months after it starts.
  • \(r_0 = 0\): initially no-one is being vaccinated.
  • \(t_0 = 2M\): it takes two months to ramp up;
  • \(\tau = 600\): it takes ten minutes of a person’s time to vaccinate someone on average2.
  • \(\eta = (5 \times 7)/(7 \times 24) = 5/24\): people work for seven hours a day (not including break time) and work for five days a week. They don’t get holidays.
  • \(P = 5.5\times 10^6\): the population of England3 is 55 million.
  • \(\rho = 0.75\): you need to vaccinate about 75% of people to achieve herd immunity.
  • \(T_i = 12 M\): the immunity time is a year.

Given these figures then

\[ \begin{align} S_p &\approx 6575\\ S_e &\approx 3819 \end{align} \]

So, at the peak, there will need to be about 6,575 people working full-time to achieve herd immunity in 8 months, and from then on about 3,819 people may be required to maintain it.

If it takes longer to ramp up then the peak staffing goes up. If it takes 8 months (we never reach the steady state) then the peak staffing number is 11,458.

Here is a plot of the dependency of peak \(S_p\) on both the length of the vaccination programme (x axis, from 4 to 12 months) and the length of the ramp time (y axis, from 0 to 10 months):

Peak staffing as function programme length and ramp time, linear model

Peak staffing as function programme length and ramp time, linear model

Comparing the model with reality

In real life a model where \(r(t)\) ramps up linearly and hence \(N(t)\) quadratically before hitting some nice ceiling is hopelessly oversimplified. But, well, what does a model like this say?

Between the 8th December 2020 and the 27th December 2020 NHS England administered 786,000 vaccinations4. This was a period of 20 days: so if we assume \(r_0 = 0\) and the linear ramp model we can compute \(k\):

\[ \begin{aligned} k &= \frac{2\times 786\times 10^3}{(20\times 24 \times 60^2)^2}\\ &\approx 5.14\times 10^{-7} \end{aligned} \]

The fastest way to vaccinate enough people is simply to keep ramping up the rate by linearly (according to the model) adding staff, or in other words by letting \(t_0 = T\). In this case the time \(T\) to vaccinate enough people is simply:

\[ T = \sqrt{\frac{2\rho P}{k}} \]

And using the above numbers for \(\rho\) and \(P\), this gives \(T \approx 1.27\times 10^7\,\mathrm{s}\), or about 147 days, or just short of five months. This is not hopeless!

The question is whether that is achievable in terms of staff numbers. Well, the number of staff required in the case where there is no cap on staff is simply

\[ S(t) = \frac{\tau}{\eta} kt \]

And the peak staffing is therefore \(S_p = (\tau/\eta)kT\). Using values for \(\tau\) and \(\eta\) from before, together with \(k\approx 5.14\times 10^{-7}\) gives \(S_p \approx 18800\). A little short of 19,000 people is probably pretty achievable.

The alternative is to assume that \(S\) is capped somewhere and work out the time the programme will take in that case. Let’s assume that \(S_p = 7000\) then we can compute \(t_0 = (S_p\eta)/(k\tau) \approx 4.72 \times 10^6\,\mathrm{s}\), or about 55 days — a little short of two months. Then we can use the original expression for the time to vaccinate enough people:

\[ \begin{aligned} T &= \frac{\rho P}{k t_0} + \frac{k t0}{2}\\ &\approx 1.93 \times 10^7\,\mathrm{s}\\ &\approx 224\,\mathrm{d} \end{aligned} \]

224 days is about 7.5 months. Which is astonishingly close to my guess for how long it might take.

However the vaccination data is somewhat misleading5: the figures from the 8th to the 27th December 2020 include no second doses. So in fact the number of complete vaccinations given in that interval is just half the headline figure: 393,000 instead of 768,000. Using this amended figure we get different and significantly worse numbers for the time to vaccinate enough people, but better numbers for peak staffing requirements in the uncapped case:

  • \(k\approx 2.57\times 10^{-7}\), just half of the previous value;
  • without capping staffing, \(T\approx 1.79\times 10^7\,\mathrm{s} \approx 207\,\mathrm{d}\) or nearly seven months, with a peak staffing requirement, \(S_p \approx 133000\).
  • capping staffing at \(S_p = 7000\) gives \(t_0 \approx 9.45 \times 10^6\,\mathrm{s} \approx 109\,\mathrm{d}\) or somewhat over 3.5 months, and \(T \approx 2.17\times 10^7\,\mathrm{s} \approx 251\,\mathrm{d}\), or about 8.5 months.

The times are less than double because the number of vaccinations goes like the square of time during the ramp.

At the time I’m writing, the English NHS is intending to delay the second dose:

The latest evidence suggests the 1st dose of the COVID–19 vaccine provides protection for most people for up to 3 months.

As a result of this evidence, when you can have the 2nd dose has changed. This is also to make sure as many people can have the vaccine as possible.

The 2nd dose was previously 21 days after having the 1st dose, but has now changed to 12 weeks after. […]

So although I don’t think it’s safe to assume that there will be no second vaccinations during the initial programme, it is clear that the main aim is to do as many first doses as possible as quickly as possible. So in real life the times and staffing requirements might be somewhere between the two.


Based on English NHS data on vaccinations given between 8th and 27th December 2020, using a very simple linear model (see above for the model and its parameters) and assuming no second doses, then, assuming that staffing numbers can be ramped up to 7,000 in 55 days from the 8th of December 2020, then England (and presumably the UK as a whole) might well be able to vaccinate enough people in about 224 days from the that date: by mid to late July 2021. If staffing numbers can be ramped up indefinitely at the same rate, then this could be done in 147 days, or by early May 2021, with a peak staffing requirement a little short of 19,000.

The same model using the same data but including second doses (which halves the number of doses given between 8th and 27th December 2020), staff numbers need to be ramped to 7,000 in 109 days from 8th December 2020 (this is less aggressive), and the programme will take about 251 days and might be complete by mid August 2021. If staffing numbers can be ramped indefinitely at the initial rate, the programme could be complete in 207 days, or by early July 2021, with a peak staffing requirement of a little less than 13,500.

Using the same model and assuming immunity lasts for a year, a little short of 4,000 people will be needed to maintain the vaccination programme indefinitely.

All of this relies on a vaccination requiring a total of only 10 minutes of human effort: not only frontline staff but also the time spent shipping and handling the vaccine, administative overhead and so on. It also neglects holiday time for the staff involved. Including holidays and sickness would increase the staffing requirements by 10–20%, assuming 30 days holiday a year. This is also based on very early data on achieved vaccination rates.

If this is even a very rough approximation to the truth then, assuming some organisational competence (a dangerous assumption when the UK government and its fellow travellers is involved), staffing should not be the limiting factor in the vaccination programme.

Reality may be a little more complicated than this.

  1. Given the magnificent ability of the UK government to organise things I am sure that the organisational problems will simply melt away. One only needs to look at the splendour that is Dido Harding, and her truly wonderful achievements with the test and trace effort in mid 2020 to see this. 

  2. This seems like a terrifyingly large figure. For instance appointments for ’flu vaccinations at a surgery near me were recently spaced three minutes apart. But remember that this figure is for two doses, and should include all the time spent by people to give the vaccination: it should include the time spent doing administrative work, delivering the vaccine and so on. I think ten minutes is probably an underestimate, and perhaps a serious one. 

  3. I’m picking England rather than the UK since the healt service is devolved. 

  4. There seems to be significantly higher figure number available for the same time period: I think that higher figure must be for the UK as a whole. 

  5. I am sure the NHS is not trying to mislead people. I am equally sure that the government will abuse the data to do just that.