For each disease we estimate a number called R0, which is how many people the average person will transmit it to if no precautions are taken.
Herd immunity sets in when only 1/R0 people have not managed to get it.
With the flu, R0 is about 1.3. Meaning that herd immunity to a particular strain starts slowing the spread after about 1/4 of us are immune. (It can continue spreading for some time after that point.) I calculated that from the fact that 1 - 1/1.3 = 0.23076923076923076...
R0 for COVID-19 is likely around 5.6 +- 0.9 per https://www.medrxiv.org/content/10.1101/2020.02.07.20021154v... we take the middle of that range, over 82% of us have to get it before herd immunity starts to work in our favor.
We got lucky last time around in Seattle area, in that it only cost us $1m and 0 deaths to get it under control.
If you look at the Italian data, their % positive level never crossed ~30%, and overall averaged <20%. That might indicate that susceptibility for this agent is well below 50%.
https://en.wikipedia.org/wiki/2020_coronavirus_pandemic_in_I...
The more likely explanation is that social distancing was implemented early enough, and tests were given to people who might or might not have had it.
There is no reason to believe that we burned through most of the vulnerable people in the population.
It is worth considering that even if the % immune is lower than the herd immunity level, it still slows the outbreak and reduces Re. That gives us a much slower ramp up and gives other measures like less restrictive social distancing, contact tracing, etc. a chance to work. Even if all those together only get Re down to between 1 and 2, we still benefit since it means we might only need another 1 or 2 lockdown periods before we get an effective vaccine.