Growth rate of COVID-19 outbreaks

Edit 14/​03/​2020: The top two graphs are now available as in­ter­ac­tive ver­sions here (thanks to Ruby for helping with get­ting this up­loaded). The la­bels on the right are click­able to re­move or add coun­tries (dou­ble click se­lects only that coun­try or all coun­tries). The but­tons at the top change the y-axis (an­noy­ingly the y-axis range but­tons auto-set to a lin­ear scale) and the slider at the bot­tom zooms the x-axis.

Note that the dou­bling times are ac­tu­ally lower than in the post be­low due to an er­ror in my origi­nal spread­sheet. I’ve also added the last few days worth of data to the graphs.

COVID-19 has now bro­ken out in a num­ber of coun­tries. This en­ables us to com­pare spread rates across to get a bet­ter idea of what to ex­pect.

Below is a graph of cu­mu­la­tive cases in each coun­try. In an at­tempt to nor­mal­ise the x-axis, I have plot­ted from the day that the to­tal num­ber of cases in the coun­try passed 40 (40 was just be­cause the ear­liest China data that I had started at 42).

The most ob­vi­ous thing is that most coun­tries fol­low a fairly con­sis­tent pat­tern of growth in the first week and a bit.

The out­liers are Sin­ga­pore, Ja­pan and Aus­tralia (plus Hong Kong, not shown). Th­ese coun­tries have lots of cases yet have not seen a cor­re­spond­ing fast ex­po­nen­tial growth in cases. I’m not sure why these par­tic­u­lar coun­tries have bucked the trend or whether there is some­thing odd about their re­port­ing (I looked for this but didn’t find any­thing).

I haven’t con­sid­ered how many cases are re­cov­ered as it was hard to get re­li­able re­sults and for most lo­ca­tions re­cov­ered cases are min­i­mal. Some­thing weird is hap­pen­ing with the num­ber of re­cov­er­ies in Iran which has over 2,000, de­spite only pass­ing that num­ber of cases within the last 6 days.

Dou­bling time

We can con­vert the above graph into dou­bling time:

I’ve re­moved the out­lier coun­tries for clar­ity. The dou­bling time is fairly con­sis­tently 2-3 days. It seems to in­crease slightly over time.

China growth rate

I wrote a post pre­vi­ously about analysing the growth rate of COVID-19 in China.

If we look at the graph above, the Chi­nese rate is roughly con­stant over the first 11 days, af­ter which the growth rate de­creases.

So the first 11 days would fit nicely to an ex­po­nen­tial growth model, but what changed? On day 7 (23rd Feb) the quaran­tine was started. A de­crease in growth rate start­ing a few days later makes sense based on what we know about in­cu­ba­tion pe­riod.

Let’s as­sume that the model fol­lows an ex­po­nen­tial dis­tri­bu­tion to start with and then af­ter the quaran­tine starts to be effec­tive it starts to obey a Gom­pertz func­tion which is like an ex­po­nen­tial func­tion with a limit to the to­tal num­ber of cases (thanks to clone of sat­urn for the poin­ter here).

I’ve set both the num­ber of cases and the new case rate to be the same for the two dis­tri­bu­tions at the point that the Gom­pertz takes over. This is to min­imise free vari­ables so I only have 4 in­stead of 6.

Get­ting the best fit pa­ram­e­ters for this model I get:

This seems like a fairly good fit. It might be pos­si­ble to get a bet­ter fit with an al­ter­na­tive sig­moid func­tion but this is good enough for my pur­poses.

Conclusion

I’m fairly con­fi­dent that, left unchecked, COVID-19 will in­crease at a dou­bling time of 2-3 days. When con­tain­ment in breached in a lo­ca­tion this is the rate that the growth oc­curs at over the first few week or so.

When effec­tive mea­sures are put in place this de­creases. An effec­tive quaran­tine may be able to con­vert the growth into a sig­moid func­tion with a limit on the failure rate.

Some lo­ca­tions (Ja­pan, Sin­ga­pore, Aus­tralia and Hong Kong) have man­aged to avoid ex­po­nen­tial growth de­spite hav­ing a large num­ber of cases.

Ap­pendix 1 - Lin­ear growth charts

Suggested by Rae­mon.

All cases

Y-axis limited at 8,000 cases per country

Y-axis limited at 1,000 cases per coun­try, X-axis limited to first 10 days

Ap­pendix 2 - Deaths vs cases

Suggested by Un­named.