COVID-19 Take Control simulator

Disclaimer: This simulator is intended for research and educational purposes only, not for decision-making. It simulates the natural course of a COVID-19 epidemic in Aotearoa, New Zealand. This work is licensed under the GNU General Public License v3.0 (GNU GPLv3)

COVID-19, Take control

This app shows how powerful our actions are in taking control of COVID-19. It shows that our actions drive how many people will catch COVID-19 from one infected person; and that ‘catchiness factor’, or R, drives disease spread. Hence our behaviour drives spread.

In other words, the power to control COVID-19 is in each of our hands.

How we can  control COVID-19 — the maths

As we all know, Aotearoa, New Zealand has adopted 4 Alert Levels, that place different physical distancing expectations on all kiwis. Of course we should always sneeze into our elbows, wash our hands before touching the face, and stay home when sick regardless of alert level.

Maths explain how and why social how distancing measures can help control the spread of disease.

The intensity of any infectious disease is measured by its reproduction number (R) — the average number of people one contagious person will infect. In short, for the infection to spread, the average infected person (whether symptomatic or not) must infect at least one other person (R greater than 1).To eliminate the disease, each infected kiwi must infect self-isolate so quickly that they infect less than one other person (R less than 1).

What if we did nothing?

If we had done nothing, global science shows that a person infected with COVID-19 would infect 2-3 others (R about 2.5), whether at home, work, school, or in day-to-day interactions. Some ‘super-spreaders’ would infect far more, especially when attending gatherings outside their community. Some ‘silent spreaders’ won’t even know they were infected.

This virus spreads when an infected person coughs or sneezes onto, or touches a surface, then someone else touches that surface then their face before washing their hands. The virus can live on hard surfaces (plastic, steel, etc.) for up to 3 days, and on softer surfaces (paper, cardboard) for up to 1 day. Many infections spread by people who are infected but don’t yet, or might never, show symptoms.

The reproduction number (R) of any virus depends on a few things: how long a person is contagious, how many people they come into contact with, and how transmissible the virus is. That means we can make an epidemic less likely to spread by attacking any or all of these factors by cooperating with Alert Level guidelines. As such, staying home when sick, reducing our physical contact with others, coughing and sneezing into a tissue or an elbow, cleaning surfaces, washing hands often, and avoiding touching our faces are all critical. Together they can take us a long way in beating COVID-19.

To understand how each and every kiwi can take control of COVID-19, the R calculator illustrates how physical distancing, hand hygiene, contact tracing, and self-isolating when exposed or sick can reduce R. For example, if we collectively reduce the reproduction number (R) by 50%, we can see the effects in the figure below.

Alert Levels 1-4

From 26 March to 28 April, we were in Level 4. Our ‘team of 5 million’ stayed within our bubbles and broke the chain of transmission. Testing rates soared as case numbers plummeted; scientists estimated our R during Level 4 was 0.34.

But the real key to eliminating COVID-19 is keeping our R near or below 1 during Levels 3, 2, and 1. This means we must continue to cooperate with guidelines — keeping a record of close contacts, limiting the size of gatherings, working and learning from home when possible, enjoying our local region and travelling only when safe and reasonable, and maintaining physical distance from strangers outside our bubble. The elbow bump and East Coast wave are the new normal.

Simulating spread — the model and its assumptions

Governments across the world are relying on mathematical projections to help guide decisions about when to apply what guidelines and for how long. COVID-19 Take Control is a simulator, for public use, that illustrates and communicates these models. It is not a decision-making tool.

The true performance of models in this pandemic might take months or years to become clear. But to understand the value of any model, it’s crucial to know how they are made and the assumptions on which they are built.

For example, to arrive at the numbers reported above, we made a number of key assumptions.

First, we assumed on average, an infected individual will spread the disease to 2.5 other people (R = 2.5). This is consistent with the best international data.

Next, we assumed that a ‘clinical’ case is an infected person, who will unknowingly spread COVID-19 over a five day pre-symptomatic incubation period. After this period, the person will develop symptoms, immediately isolate inside his or her bubble, and infect fewer people.

We also assumed there will be some ‘silent’ cases who are infected, but never gets tested because he or she doesn’t show recognisable symptoms, ignores the symptoms, or doesn’t have good access to health care. We assumed the silent cases might unknowingly spread COVID-19, but will be less infectious, over the full course of the infection.

Finally, we assumed a direct linear correlation between social interactions and R. This means that when an infected person reduces their physical contact with others by 50%, they also reduce their spread of the virus by 50%.

While there is still much we don't know, this model allows you to simulate how the COVID-19 pandemic might play out in Aotearoa, New Zealand under different conditions of collective cooperation.

COVID-19 Take Control: The Basics

The R Calculator page

The R Calculator page asks you to predict how we will behave and how effective our contact tracing and case isolation will be under each Alert Level. You can watch those answers push the national R up and down, to see how powerfully hygiene, physical distancing, contact tracing, and case isolation drive down R.

You’ll notice that improving from poor to medium on any of the measures — hygiene, distancing, contact tracing, and case isolation – is comparatively easier than improving from good to excellent. Although you can push the sliders on the left side of the R Calculator up and down yourself, bear in mind that as we get closer to perfect on any of the measures, improvement gets more and more difficult. Hence perfection is unlikely.

You’ll also notice that contact tracing and case isolation are pivotal to NZ’s continued success in eliminating COVID-19. The R Calculator highlights the importance of rapid contact tracing. The sooner we can identify and isolate all close contacts of an infected person, the fewer people they will infect. Done right, experts find contact tracing and case isolation nearly as effective as a vaccine.

The Simulator page

The Simulator page uses mathematical models to illustrate how COVID-19 could spread in Aotearoa, New Zealand. The pattern of spread depends on the reproduction number, which depends on virus characteristics and human behaviour under different policy settings. You can set your own R numbers for each Alert Level on the left side of the Simulator, and the duration of the Alert Levels themselves, and watch the modelled case numbers go up and down.

With no change in behaviour, each infected person will likely infect about 2.5 others (R = 2.5). Physical distancing, hygiene, case isolation, and contact tracing will lessen virus transmission. Hence, we estimate a range of reproduction numbers that correspond to public cooperation with distancing and hygiene expectations at Levels 1, 2, 3, and 4.

Lucky for us, with concerted effort by our team of 5 million, the power to control COVID-19 is in our hands. Indeed, evidence shows we are more likely to suffer harm by underreacting, or responding too late to a threat, than by overreacting. Indeed the greatest risks for spread of a pandemic virus are that people under-estimate the virus risk and act in dangerous ways, whether knowingly or not.

Simulating virus transmission

The simulator uses a standard epidemiological model based on how and when people transmit the virus. It comprises 2 types of cases.

‘Clinical’ and ‘silent’ cases

The simulator’s yellow line shows the expected number of reported cases. They have symptoms, get tested, and show up in the Ministry of Health’s daily counts of confirmed and probable cases.

The simulator’s green line also accounts for ‘silent’ cases, who never show up in the Ministry’s official counts. They fly under the radar for any of several reasons: they have limited access to health care services; they get sick but never get tested because they deny their symptoms, saying ‘she’ll be right, it’s just a cold’; their symptoms are too mild to recognise; they never have symptoms; or their test is a ‘false negative’, but they are not symptomatic enough for their doctor to call them a ‘probable case’.

Because we cannot detect the silent cases, there is much uncertainty about how many there are and how readily they transmit the virus. A South Korean study tested and followed several hundred workers in the midst of a COVID-19 outbreak, finding less than 2% of all cases never felt symptoms. By contrast, Iceland has tested 10% of its population, at random, and found about half of all positive cases reported feeling no symptoms, but they did not follow up. In both studies, symptoms were self-reported.

How much these silent cases will transmit the virus is similarly uncertain, but data suggest that silent cases can transmit the virus even when they have mild or no symptoms. However, silent cases are likely to transmit less than the clinical cases , and most transmissions come from symptomatic people. Media have reported pre-symptomatic transmission causing COVID-19 clusters in Aotearoa, New Zealand. Yet there is some evidence that children seem to transmit more rarely than adults, even within the household. And children seem less likely to contract COVID-19 when exposed.

In Advanced Options, you can set the proportion of infections that are silent, and the silent infections’ transmission patterns.

Outside and inside the bubble

The Simulator page also distinguishes between infected people who are isolated within their bubbles, and those who are not. Research shows the virus spreads most in crowded enclosed places and events with prolonged exposure, like congregations, family gatherings, public transport, care homes, and homeless shelters. But when we keep our bubbles tight, our physical contacts are limited so transmission rates will depend on the size of the bubble. If we keep our bubbles tight, work and learn from home whenever possible, keep 2m distance from others, and stay local we will continue to break the chain of transmission.

The model on which the simulator runs assumes that clinical infections stick to their bubbles within 2 days of detection; but silent cases will not be detected by contact tracing, and their contacts will never isolate because they don’t know they should.

The figure below illustrates transmission by clinical vs. silent, and outside vs. inside the bubble.

What can I change in the simulator?

The boxes on the left-hand side of the simulator allow you to envision how the disease might spread under different policies, and different levels of cooperation. You can push them up or down, according to what Level you choose and when, and how well we cooperate.

Initial number of confirmed COVID-19 cases sets the number of infected individuals at the start of the simulation.

Reproduction number (R) under different social conditions
  • The 'Do Nothing' option sets the reproduction number (R) if we do nothing to contain the virus’ spread. This number predicts the average number of people who will catch a disease from one contagious person. For COVID-19, scientists have estimated it to be 2.5.
  • R during Level 4, 3, 2, and 1 allows you to estimate the reproduction number R during all Alert Levels. R predicts the average number of people who will catch a disease from one contagious person. This depends directly on how well each and every kiwi respects the guidelines, and how effective our public health interventions are. We offer some estimates based on international experiences and let you calculate your own in the R calculator. Scientists have observed the Level 4 R in NZ was somewhere 0.34; our case numbers in NZ were too low to estimate Level 3 R. The simulator lets you push these up and down to see the results.
  • Our Level 4 was 33 days, and our Level 3 was 16. But the Simulator lets you change the durations to see what could have been.

Advanced options. Default values for the ‘clinical parameters’ of COVID-19 described above are taken from the literature. When you click ‘Advanced options’ at the bottom, you can change these clinical parameters to understand how disease might spread under different circumstances, if scientific knowledge changes. You can change each parameter by itself to understand how it affects the course of the epidemic – how many get infected and when.

Your calculated reproduction number is

Physical distancing

Level 1
Level 2
Level 3
Level 4



Tracing contacts


Isolating cases and contacts


Winter weather


The power to control COVID is in our hands

Use this page to calculate R during Alert Levels, based on your answers to the questions below (or on your predictions with the sliders to the left). Then enter your calculated R for each Level in the box below. Then run your scenario to see how our behaviour shapes our COVID-19 future.

Controlling R

You can explore effects on viral spread of our behaviour, contact tracing, and isolating cases and contacts. Watching R go up and down, you’ll see that we are the architects of our future. You will also see that contact tracing and case isolation are crucial to eliminating COVID-19.

First, choose an Alert Level for which you want to explore the reproduction number R:

Reproduction number (R) under different social conditions

R during Level 4: observed between 0.3 and 0.6.

R during Level 3: use the R Calculator
R during Level 2: use the R Calculator
R during Level 1: use the R Calculator

The default clinical parameters included in the model, and expressed in the editable boxes below, represent the best national and global data. As an advanced option, you may change them.
Initial number of COVID-19 cases (clinical plus silent)
Basic reproduction number (R0): average number of people who will catch a disease from one contagious person with no distancing or hygiene measures
Reproduction number pre-lockdown: observed between 1.8 and 2.2. This could be due, in part, to measures put in place in early- to mid-March, including: the cancellation of mass gatherings, the isolation of international arrivals, and employees being encouraged to work from home.
Incubation period: average number of days between exposure to COVID-19 and detectable symptoms.
Generation time: average number of days before an infected individual is contagious enough to infect someone else.
Isolation delay: average number of days between onset of symptoms and isolation within the bubble.
Infectiousness inside the bubble of isolation: once an infected person is isolated within his or her bubble (during Levels 3 and 4, or if isolated after exposure during Levels 2 and 1), how much will he or she transmit the virus? Expressed as a % of the basic reproduction number R
Prevalence of ‘silent’ cases: what proportion of the total number of infections will be ‘silent’, or undetected? (For example, 33% of all cases of COVID-19 are undetected silent cases.)

Infectiousness of silent cases: how much will a silent case transmit the virus, as a percentage of the reproduction number (R)? (For example, the reproduction number for a silent case will be 50% of the basic reproduction number for a clinical case.)

Hospitalisation rate: proportion of all cases (clinical plus silent) who require hospital care.

Simulated COVID-19 cases for Aotearoa, New Zealand

There is much we don’t know about COVID-19 infection and transmission. And there is great uncertainty about what we think we know. We built that uncertainty into the simulator with ‘stochasticity’. If you re-run the simulator multiple times for each collection of settings you choose, you’ll notice different results. This is not a mistake. It just conveys uncertainty in a rapidly changing field of knowledge. For a more thorough tutorial, please see the Tutorial tab.
Select the number of replications to display (we recommend starting with 5 replicates)

This epidemiological simulator graphs the natural course of a COVID-19 epidemic in Aotearoa, New Zealand. The green lines depict the expected number of new cases per day (both ‘clinical’ or ‘silent’). The yellow lines depict the expected number of reported cases per day. There is a lag between infection and symptoms, and another between symptoms and a test result. We can see this lag between the peak of the green lines at the start of Level 4, and the peak of yellow lines of reported cases about a week later.

You can change the reproduction number under different alert levels, and set the duration of these levels. To change the virus’ clinical parameters, click on Advanced Options at the bottom. To reset back to the simulator’s default values, click on Reset parameters at the bottom. The graphs are interactive: hover over a curve to get values.


The following exercises will help you get acquainted with the app. At any time, you can click the Reset parameters button at the bottom of the left-hand side to return variables to their default values. We recommend resetting the parameters between these exercises.

R Calculator Page

  • On the R calculator tab, play with the answers to the questions under Controlling R with behaviour. Observe the effects on R, to the left. Then push the hygiene, distancing, isolation, and tracing sliders up and down to see their relative importance in controlling R. Compare the power of Contact Tracing and Case Isolation, to Physical Distancing and Hygiene measures in combatting the spread of COVID19.

  • On the left side of the R calculator, choose Level 2 for distancing. Then push the Hygiene slider all the way to excellent and the Tracing contacts and Case isolation all the way to poor.How low can we get R0 with just hygiene and distancing? Then gradually improve the tracing and isolating sliders to poor, then medium, then high medium, then good. What do you notice about R0? Once you get R0 to 1 or below, push hygiene down to medium or below. This gives you insight into the pivotal importance of contact tracing and case isolation.

  • Don’t forget to type your calculated R values into the boxes at the top of right side of the page. Then punch the Run your Scenario button and watch the number of cases rise and fall.

Simulator page

  • On the Simulator page, first tick the Do Nothing option,, and see what would happen if we had no Level 1, 2, 3, or 4 or public health interventions such as testing and contact tracing.

  • Set the reproduction number R during Level 4 to 1.1, then to 0.8, then to 0.4.  What happens when R >1? What about when R <1? Change the reproduction number (R) during Level 4 to 1.5 and observe what happens. Breaking the chain of transmission, and ultimately eliminating COVID-19, depends on each and every one of us cooperating with the guidelines for the Level we are at.

  • Set R during Level 3 to 1.1, then to 0.9, then to 0.6. What do you observe? What happens if we continue to observe hygiene and distancing guidelines, and keep our bubbles tight? What happens if we don’t? The more you play with R during Level 3, the more obvious its importance becomes.

  • Set R during Level 2 to 1.8, then to 1.3, then to 0.9. What do you observe? What happens if we continue to observe hygiene and distancing guidelines, and keep our bubbles tight? What happens if we don’t? The more you play with R during Level 2, the more obvious its importance becomes.

  • In Advanced Options, increase the initial number of infected persons to 100 or 500. What changes do you observe with more infected people to start? Does increasing the initial number of infected persons change the number of individuals who get infected? Does it change the time of the peak? Does it change the duration of restrictions we would need to contain COVID-19? The more you play with the initial number of cases, the more obviously important swift response becomes.

  • At any time, you can click the Reset Parameters button at the bottom of the left-hand side to return variables to their default values. We recommend resetting the parameters between these exercises.

Rscripts used to make this R Shiny web application are available upon request to

This simulator was originally developed by Alex James and Michael Plank whom you can contact with questions or

A team of researchers contributed to the continual development of the model and app:

  • Audrey Lustig (data synthesis and coding)
  • Rachelle Binny (epidemiological model development)
  • Nicholas Steyn (literature review and parameter collection)
  • Ann Brower (science communicator)
  • Shaun Hendy (project manager, Director of Te Pūnaha Matatini)

The app is currently hosted by the Centre for eResearch at the University of Auckland. Funding was generously provided by Te Pūnaha Matatini and Manaaki Whenua Landcare Research.

Other COVID-19 apps that we recommend include: