COVID-19

This project has concluded. UCL recorded its final update on 12 May 2022, so the series below is complete and will not change: it runs from 2020-10-09 to 2022-05-11. The data, the 6,140 hourly snapshots it was extracted from, and the 168 UCL COVID-19 update newsletters that explain it are now preserved as a citable archive — see the archive below. I have written up what these statistics were good for on Bentham’s Gaze.
If you are using these graphs or the historical data I've made available (e.g. for analysis, planning, making reports, personal usage, curiosity, etc.), I would greatly appreciate if you could drop me a quick email to s.murdoch@ucl.ac.uk so I can better understand what this service is used for.

Between October 2020 and May 2022, UCL published statistics of COVID-19 cases for UCL staff and students, on a page that was overwritten with each update and kept no history. This page shows data for the full period, so as to better understand any trends present. UCL’s page has since been decommissioned and its address now redirects to a general campus-safety page, so the link above is to the Internet Archive’s capture of 28 January 2022.

Before 2022-03-02, data was published during weekdays, with cases from Saturday to Monday being merged into the results reported on Tuesday. Daily cases reported on Tuesday are shown as being shared equally over Saturday, Sunday, and Monday to avoid a misleading weekly peak. Weekly and total cases don't need such smoothing, so data for Saturday and Sunday are simply omitted. From 2022-03-02 onwards, data was published weekly and so daily cases are calculated by sharing the weekly case count over the applicable seven days. Similarly, cases reported over vacations are smoothed over the applicable period. UCL published important caveats on how this data should be interpreted alongside the figures themselves; since that page is gone, the ones that matter for reading these charts are in the discussion below, and the full set is in the archive’s README. Analysis code and historical data are in the archive.

Weekly case statistics

Before 2021-01-05 this graph is based on a rolling 7-day total of the daily reported cases, rather than the reported weekly statistics. See the discussion below for the reason for this change.

Daily case statistics

 

Total cases since start of Term 1

* On 26 October 2020, an additional 89 cases were added to the total that were not previously included in daily or weekly statistics; the addition was announced the following day.

Discussion

The above charts report the data as published by UCL. The only adjustments I have made are to smooth the data covering the weekend and Monday over the three days in question, such that a misleading peak on Tuesday is prevented, and to re-calculate the weekly statistics (see below why). I have avoided drawing any conclusions or predictions from this data, though I welcome those more qualified to do so to use the data as they wish. However, there are some aspects of the data which might not be obvious. In this section, I will, therefore discuss some of these findings in the hope that it will assist those in interpreting the data. Please do get in contact if you have any comments or questions.

Definition of on-campus cases

The definition of an on-campus case for the purposes of these statistics is “those who have visited UCL buildings, spending 15 minutes or more, in the two days before starting experiencing symptoms or requesting a test.” This is very similar to the criteria used by the UK Test and Trace system for identifying cases of potential onward transmission (forward-tracing). However, this definition of “on-campus” isn‘t suitable for identifying the source of an infection (backwards-tracing), because it generally takes four to five days from exposure to the start of symptoms. For this reason, the on/off-campus definition is not a reliable indication of whether an infection occurred on-campus, nor particularly helpful for identifying clusters of infection.

Relationship between daily, weekly and total figures

The case statistics published include a daily, weekly and total (since the start of term 1). These are obviously related, e.g. subtracting consecutive totals should give the daily number of cases. As of 14 November, this is indeed the case, other than the additional 89 cases published on 26 October.

A rolling 7-day total of the daily number of cases should also give the weekly totals. However, in the published data, this is not the case. In the chart below, the reported weekly totals for student cases are shown, along with a rolling 7-day total of the daily number of cases. As can be seen, the reported on-campus weekly totals tend to be larger than the rolling 7-day total. Off-campus student cases also exhibit a similar discrepancy, but there the calculated total is larger than the reported total.

The reason for this discrepancy is that 79 cases were incorrectly carried forward in the 7-day totals because they had incomplete information. As of 4 November, this issue has been resolved. The issue also did not affect the daily or overall case totals. To more accurately represent the statistics before the correction, the weekly graph shown above (before 2021-01-05) is calculated from the daily statistics, rather than using the reported weekly statistics.

Uncertainty in the true number of cases

The reported statistics only cover cases where UCL had been made aware of a positive COVID-19 test result. For this to have happened, someone would need to have symptoms, try and succeed to get tested, and report the result to UCL. If any of these steps didn’t occur, a positive case would not be present in the published statistics.

UCL did not carry out testing of staff or students without symptoms. The University of Cambridge did, and as of 1 November 2020 about a third of positive cases were identified through that asymptomatic testing programme. It’s not clear how many of these cases would have become symptomatic, and it’s not clear how Cambridge’s example generalises, but it does seem likely that some asymptomatic cases were missed in the UCL statistics.

Not all individuals with symptoms chose to get tested, and some who tried were not able to get a test, although UCL did offer its own testing programme for eligible staff and students. Therefore some symptomatic cases of COVID-19 were not identified through testing.

Even those individuals who received a positive test result may not all have reported their result to UCL. The one-off addition of 89 cases described above, announced on 27 October 2020, was mainly students who received positive test results, did not notify UCL, but were identified because they used UCL’s testing service. I’ve also heard anecdotes of students not wanting to report cases to UCL. It’s not clear how many other instances there were of positive results not being reported.

For all these reasons, it’s clear that the statistics are an underestimate of the true number of cases, but it’s not clear (to me) by how much. Do get in touch if you have any good ideas on how to estimate the level of uncertainty.

The archive

Now that the series has ended, the whole of it has been deposited as a citable archive, which holds rather more than the charts above draw on:

  • the extracted series, smoothed and unsmoothed, as CSV and JSON;
  • the 6,140 hourly snapshots of UCL’s page they were extracted from, so that anyone who disagrees with my interpretation can go back to the evidence;
  • the 168 UCL COVID-19 update newsletters, 9 March 2020 to 4 May 2022, which begin seven months before the case statistics and record the reasoning behind the numbers, together with a record of where their 3,542 tracking links pointed;
  • the scraper as it actually ran, and an archival re-implementation that reproduces every published figure from the snapshots byte-for-byte.

Everything above is on GitHub and deposited on Zenodo, where it has a permanent identifier. Please cite it as:

Murdoch, S. J. (2026). Historical UCL COVID-19 statistics (v2.0-final) [Data set]. Zenodo. https://doi.org/10.5281/zenodo.21626802

That DOI identifies the specific version; the concept DOI 10.5281/zenodo.21539066 always resolves to the latest. The code and the extracted data are published under the Apache License 2.0; the reproduced UCL pages and newsletters are copyright University College London, are not covered by that licence and are not relicensed here, but are included as the evidence behind the figures.

For what the statistics were actually good for, and what a campus-scale signal could tell you that national figures could not, see UCL’s response to the COVID-19 pandemic: a historical archive on Bentham’s Gaze.