CO₂-informed SARS-CoV-2 transmission model
Mathematical structure informed by the PMC technical appendix
This is an independent implementation with independent calibration and uncertainty bands. Not affiliated with or endorsed by PMC.
AIRE v3.5 (Last updated February 28, 2026)
Model Assumptions v1.0
Fraction of population currently infectious. Derived from: (daily cases × infectious window) ÷ population.
Optional client-side fetch of a public JSON file hosted at pmc19.com. No user inputs are transmitted. If the fetch fails or you are offline, your manual prevalence is used. The JSON is maintained by PMC19; this tool only reads it. Cached locally for 6 hours.
Use a stable reading — typically 1–3 minutes after the number stops drifting. Avoid readings taken right after opening a door or window.
CO₂ reflects room-average air; close-range exposure can be substantially higher.
Room presets assume well-mixed air; close-range exposure can be substantially higher.
Real-world transmission is overdispersed: a small number of individuals can account for a large share of spread. This model estimates average far-field risk under structured uncertainty. It does not simulate super-emitter dynamics.
Expected infections/year (mid estimate) compared to your chosen budget. Based on 52 weekly repetitions at current settings.
Communication metaphor, not biological equivalence. Life-minutes shown first; packs are optional.
Adjusts severity-weighting for life-minutes only. Does NOT mean "safe" — even mild infections can cause lasting biological harm.
Edit the expected life-minutes lost per infection. Changes persist separately in your browser. These are rough population-level placeholders — not clinical predictions.
Every cigarette you smoke shortens your life by a small, statistical amount — roughly 20 minutes per cigarette, based on population-level epidemiology. A full pack of 20 cigarettes therefore represents about 400 minutes (≈ 6.7 hours) of expected life lost.
We use the same idea here. Each SARS-CoV-2 infection carries some probability of serious outcomes — hospitalization, long-term symptoms, or in severe cases, death. These outcomes translate to an average amount of healthy life lost per infection, which varies by your age and baseline health.
The tool multiplies your probability of infection during this event by the expected life-minutes lost if infected, then divides by 400 to express it in "cigarette packs." This gives a familiar, tangible unit for an otherwise abstract probability.
Example: If your event infection risk is 2% and the estimated harm per infection is 1,000 life-minutes, then: 0.02 × 1,000 = 20 expected life-minutes lost, or 20 ÷ 400 = 0.05 packs — equivalent to smoking one cigarette.
Key assumptions connecting infection to cigarettes:
1. Life-minutes per infection — These are rough population-level estimates of how much healthy life an average infection costs, accounting for the range of possible outcomes: acute illness, hospitalization, lasting symptoms, or death. Even infections considered "mild" can carry non-trivial risks of persistent effects. The values are editable placeholders, not clinical predictions for any individual.
2. The 20-minute cigarette figure — Derived from large cohort studies (e.g., Doll et al., BMJ 2004) showing that lifelong smokers lose ~10 years of life expectancy. Divided across a lifetime of cigarettes, this works out to roughly 11–20 minutes each. We use 20 as a round, slightly conservative figure.
3. Expected value, not certainty — The number shown is a probability-weighted average. Most of the time, the actual outcome of any single event is zero (no infection, no harm). But over many repeated exposures — weekly meetings, regular gym visits — the expected value accumulates, just as it does with cigarettes smoked over years.
4. What this doesn't capture — Long COVID and cumulative harm from repeated infections are not modeled in detail. The tool treats each event independently and does not account for compounding risk from prior infections. The comparison is to life-expectancy modeling only. Individual responses to both infection and smoking vary enormously.
Default infectious window: 7 days. The LOW–HIGH uncertainty bands apply prevalence multipliers (see Uncertainty Bands below) to reflect surveillance and timing uncertainty.
These are structured sensitivity bands — not confidence intervals. They combine prevalence uncertainty (dominant), dose-response calibration uncertainty, and emission/activity uncertainty into three scenarios. The result is a transparent range showing how much outputs could shift under plausible alternative assumptions.
The Low / Mid / High bands shown throughout this tool reflect structured parameter variation — not statistical confidence intervals. Each output is computed three times under different combinations of the multipliers below.
These multipliers are applied simultaneously: the Low scenario uses all low-end values, the High scenario uses all high-end values. This is intentionally conservative at both tails, approximating the plausible range of outputs under joint parameter uncertainty.
These ranges are heuristic and versioned under Model Assumptions v1.0. They are not derived from formal uncertainty quantification and may be revised in future versions.
Steady-state CO₂ mass balance. Outdoor CO₂ defaults to 420 ppm. Exhaled CO₂ of ~38,000 ppm (3.8%) is a standard physiological value.
Uses conservative pre-estimated fractions by room type, optionally adjusted by a ventilation quality multiplier: Worse than typical = ×1.5, Typical = ×1.0, Better than typical = ×0.7. Applied to the base rebreathed fraction only.
Activity: Quiet=1.0, Normal=2.0, Loud=5.0. Crowd: Dispersed=0.8, Mixed=1.0, Crowded=1.5. Air cleaning: None=1.0, Typical HEPA=0.7, Strong HEPA=0.5.
α is user-selectable: Conservative=1.5, Moderate=2.8 (default), Higher transmissibility=4.5. Reflects uncertainty in infectious dose-response and variant dynamics. Higher values produce higher infection probability for the same exposure.
Expected infections is the average count over 52 weekly repetitions. P(≥1) is the probability of at least one infection. P(≥2) and P(≥3) support "risk budgeting" — for example, deciding whether an activity keeps you below 2 infections per year. All assume identical weekly exposure and constant prevalence. P(≥1) saturates toward 100% faster than the expected count grows; P(≥2) and P(≥3) lag behind P(≥1) and better differentiate moderate-risk scenarios.
Default: 400 minutes per pack (20 cigarettes × 20 min each). Life-minutes-per-infection are modeled by age band and baseline health risk category — rough population-level placeholders, not predictions for individuals. Shown as Low/Mid/High ranges reflecting the same scenario bands applied to P_event. This is a communication aid; it does not imply similar mechanisms of harm between infection and smoking.
Current parameter values used in scenario bands:
Future versions may calibrate α and emission multipliers to benchmark scenarios (e.g., known super-spreader events, classroom transmission studies). This has not been done yet.
v1.0 (initial version)