About the COVID-19 Data Dashboard

Departments that contribute to the dashboard, dashboard interface update log


The City of St. Louis COVID-19 data dashboard is meant to help health officials and the public make informed local decisions. The dashboard is a collaboration between the Department of Health, Planning and Urban Design Agency, Office of the Mayor, and the Information Technology Services Agency.

Most data in the COVID-19 dashboard is updated daily. Financial data is updated weekly. Other data is updated as needed.

Indicators and Thresholds

To better understand the severity, transmission risk, and response in St. Louis City, please see the target thresholds described by the CDC and MO DHSS. These indicators provide context for the pandemic trajectory and are best viewed together, rather than in isolation, when making decisions.

Data Methods

Case Definitions

Confirmed: Laboratory confirmed positive PCR test.

Probable (any of the following):

  1. Meets clinical criteria AND epidemiologic evidence with no confirmatory laboratory testing performed for COVID-19.
  2. Positive serology/antibody test AND either clinical criteria OR epidemiologic evidence.
  3. Meets vital records criteria (death certificate listing COVID-19 as a cause of death) with no confirmatory laboratory testing performed for COVID-19.

Cases were previously reported on the date that the Health Department learned of their positive status. As of 6/23/20, cases will be reported based on the date that the individual was tested (i.e. the specimen collection date). This date is more representative of when a case was symptomatic. Data during the reporting period may be incomplete due to the lag in time between when the case was tested and/or reported and submitted to the City of St. Louis DOH for reporting purposes. This delay can vary depending on the testing facility. Probable cases will have a longer lag time than Confirmed cases (PCR positive) due to the increased length of time required for case investigation.

Learn more about case definitions (PDF).

Deaths are shown on the date the death was reported.

R0 Calculation Methods

The City of St. Louis is using the EpiEstim package in the open source statistical software R. More information about the tool and mathematical methods can be found below[1]. There are many ways to calculate the reproduction number, and each requires assumptions to be made. For this calculation, an estimate of the serial interval must be decided upon. The serial interval is the amount of time it takes from initial infection to transmission of the virus to another person, on average. From previous studies[2], the serial interval for SARS-cov-2/COVID-19 is estimated to be roughly 4.7 days with a standard deviation of 2.9 days. The other information needed for the calculation is the number of new cases each day. The 7-day moving average of new case counts is used as input. Using a 7-day average reduces the effect of normal fluctuations in new case counts, and makes the estimates more stable.

  1. EpiEstim methods: Cori et al., Thompson et al.
  2. Serial interval literature: Nishiura et al., Du et al.

Population and Demographics

Population, demographic, and social vulnerability estimates are based on the U.S. Census Bureau's 5-year 2014-2018 American Community Survey (ACS). Specifically: tables S0101 Age and Sex, DP05 Demographic and Housing Estimates, S1701 Poverty Status in the Last 12 Months, S2504 Physical Housing Characteristics for Occupied Housing Units, B16001 Language Spoken at Home by Ability to Speak English for the Population 5 Years and Over, and S1810 Disability Characteristics. These data are used for calculating rates per 100,000 residents and for the social vulnerability maps.


Maps are generated using Zip Code Tabulated Area (ZCTA) rather than USPS ZIP Codes because the US Census Bureau releases statistics using these boundaries. ZCTA and ZIP Code boundaries are very similar, but do have differences that may result in cases who live near the border of a USPS ZIP code being counted in a different ZCTA. Case residences are geocoded using street address in ArcGIS software, and then aggregated to the ZCTA level.

Community Level

New Cases per 100,000 (7-day total)

The number of new confirmed cases (positive result of PCR or other NAAT diagnostic laboratory test) divided by the Census Bureau's 2020 estimate for the St. Louis City population, multiplied by 100,000 to give a standard rate per 100,000 City residents. A target of fewer than 200 cases per 100,000 residents is the threshold outlined by the CDC. When the case rate rises above 200 per 100k, more stringent hospitalization criteria are used to determine Community Level of risk.

Important note about CDC's hospitalization data and how it differs from Pandemic Task Force hospitalization data

The CDC uses geographic boundaries called Health Service Areas (HSA) to group counties into a regional population. This method is used because some counties do not have hospital systems within their boundaries and their residents seek care in other jurisdictions. The counties included in the St. Louis region's HSA include: St. Louis City, St. Louis County, Franklin, Iron, Jefferson, St. Francois, St. Genevieve, and Washington County. The Pandemic Task Force's uses a similar approach of grouping counties of interest, but uses the St. Louis Metropolitan Statistical Area (MSA) to aggregate hospitalizations because the health systems included in their data are located in, and primarily see patients from those jurisdictions. The MSA includes counties like St. Charles, and some counties in Illinois, whose residents frequently come across the river to the St. Louis area for treatment, whereas HSA is limited to Missouri counties. Both methods are legitimate, but viewers should interpret the data carefully with this important difference in mind.

New Hospitalizations per 100,000 (7-day total)

The number of hospitalizations for each individual county in the St. Louis HSA is aggregated and then divided by the total population of all the HSA counties, then multiplied by 100,000 to give a standard rate per 100,000 residents. Therefore, the hospitalization rate is calculated for the pooled HSA region, meaning each county in the HSA will have the same rate.

% of Staffed Inpatient Beds

The number of staffed inpatient beds occupied by COVID-19+ patients is divided by the total number of staffed inpatient beds and multiplied by 100 to give a percentage. A higher percentage of beds occupied by COVID-19+ patients is an indicator of an increased burden on the region's hospital systems due to COVID-19. Similar to the new hospitalization rate per 100k, this statistic will be the same number for all HSA counties.

Major Dashboard Feature Changes

Note that this is a list of major dashboard interface changes, not a list of when the data was last updated.

  • 03/15/2022: Community Level section added.
  • 03/04/2022: 'Last 14 Days' under 'Current Status' changed to 'Last 7 Days.'
  • 02/05/2021: Stacked confirmed and probable case counts in graph. Moved death counts to its own tab. Added CSV and JSON download options for cases, deaths, reproductive rate, test results, and positivity rate.
  • 12/22/2020: Added antigen test results to the test data.
  • 12/18/2020: Added 14-day toggles to demographic data.
  • 11/23/2020: Added 7-day average numbers and goals. Added new hospitalizations and average total hospitalized. Added 14-day totals and rates. Added trajectory data (7-day period compared to previous 7-day period). Added chart time-frame toggle. Moved % positive PCR tests to its own chart.
  • 6/24/2020: Recalculated case data to reflect updated definitions of confirmed and probable cases. Changed R0 calculation method.
  • 6/19/2020: Added cases by ethnicity.
  • 6/10/2020: Added daily PCR and Serology test result chart.
  • 5/29/2020: Updated the COVID-19 financial transparency data dashboard to show data by department and display details when clicking on charts.
  • 5/18/2020: Added reproductive number (R0) chart.
  • 5/14/2020: Added about page. Made Rate data the default tab where available.
  • 5/13/2020: Added rates/100,000 people to age groups, sex, race, age groups and sex. Added a 7-day rolling average to daily new case numbers.
  • 5/05/2020: Added financial transparency section.
  • 4/27/2020: Added case rates by zip code.
  • 4/23/2020: Added total deaths by race, age group, and sex.
  • 4/17/2020: Added daily new case, death, pending, and monitoring totals.
  • 4/16/2020: Added total cases by race, cases by race and age group, cases by age and sex.
  • 4/02/2020: COVID-19 Dashboard went live.

More Information

Major Dashboard Feature Changes
Note that this is not a log of data updates.
  • 03/15/2022: Community Level section added.
  • 03/04/2022: 'Last 14 Days' under 'Current Status' changed to 'Last 7 Days.'
  • 02/05/2021: Stacked confirmed and probable case counts in graph. Moved death counts to its own tab. Added CSV and JSON download options for cases, deaths, reproductive rate, test results, and positivity rate.

View all interface updates

Was this page helpful?      

Comments are helpful!
500 character limit

Feedback is anonymous.

1 comment from someone like you has helped us improve this page. Keep the feedback coming!