Skip to main content
VaccineWatch
VaccinesSymptomsStatesAnalysisToolsDashboardCompare

VaccineWatch

Transparent access to VAERS data for informed decision-making. We present the data as-is, with appropriate context and disclaimers.

Explore Data

  • Vaccines
  • Symptoms
  • Manufacturers
  • States
  • Dashboard
  • Compare Tool
  • Search

Deep Dives

  • The Denominator Problem
  • Onset Timing
  • Lot Number Analysis
  • COVID Impact
  • Myocarditis
  • Death Reports
  • Interactive Tools
  • Reporting Rate Calculator
  • Signal Detection
  • All 23 Articles →

Resources

  • About
  • Methodology
  • FAQ
  • Glossary
  • Side Effects Guide
  • Vaccine Schedule
  • Vaccine Safety
  • Safety Timeline
  • Adverse Events
  • Is VAERS Reliable?
  • Myocarditis
  • Guillain-Barré
  • Allergic Reactions
  • Report an Event
  • Disclaimer
  • VAERS Official Site ↗

Sister Sites

  • OpenMedicaid
  • OpenFeds
  • OpenImmigration
  • OpenCrime
  • OpenSpending
  • OpenMedicare
  • OpenLobby
  • WarCosts
  • OpenPrescriber
  • GiveScope
  • SPACGraveyard
  • AI Exposure
  • AutoPilotWatch
  • TariffTax
  • ShelterScope
  • OpenPrices
  • TheDataProject.ai

Data source: VAERS (Vaccine Adverse Event Reporting System)

Data through 2026 · Updated quarterly

Built by TheDataProject.ai · © 2026 VaccineWatch

Important: VAERS accepts reports of adverse events following vaccination. For any given report, there is no certainty that the reported event was caused by the vaccine. Reports may contain information that is incomplete, inaccurate, coincidental, or unverifiable. Most reports to VAERS are voluntary, which means they are subject to biases. This data cannot be used to determine if vaccines cause or contribute to adverse events.

  1. Home
  2. Methodology

Methodology

How VaccineWatch sources, processes, and presents VAERS vaccine adverse event data — and the limitations you must keep in mind when interpreting it.

Our Approach

VaccineWatch takes the raw VAERS data files published by the CDC and FDA and turns them into a fast, searchable, and clearly contextualized resource. We do not alter, filter, or editorialize the underlying reports. Every metric on this site is a transparent aggregation of official government data, presented alongside the context needed to interpret it responsibly.

Data Sources

All data on VaccineWatch originates from the Vaccine Adverse Event Reporting System (VAERS), the national early warning system co-managed by the Centers for Disease Control and Prevention (CDC) and the U.S. Food and Drug Administration (FDA). We use the official public-use datasets published at vaers.hhs.gov. These are released as three linked CSV files for each year:

  • VAERSDATA — one row per report, including age, sex, state, vaccination and onset dates, and outcome flags (died, hospitalized, ER visit, disabled, life-threatening, recovered).
  • VAERSVAX — the vaccine(s) named in each report, including vaccine type, manufacturer, dose number, route, and lot number.
  • VAERSSYMPTOMS — the symptoms coded for each report using MedDRA Preferred Terms (up to five per row, with additional rows for reports listing more symptoms).

These files are joined on the shared VAERS ID, which uniquely identifies each report. We currently cover reports from 1990 through February 2026, the most recent data available at the time of our last processing run.

Data Processing Pipeline

Our pipeline transforms the raw CSV files into the static JSON datasets that power this site. The steps are:

  1. Download — We retrieve the complete set of annual VAERSDATA, VAERSVAX, and VAERSSYMPTOMS files directly from the VAERS website.
  2. Parse and normalize — We read every row, resolve character-encoding inconsistencies, standardize date formats, and normalize categorical fields such as state, sex, and vaccine type.
  3. Join — Reports, vaccines, and symptoms are linked by VAERS ID so that each report carries its full set of vaccines and coded symptoms.
  4. Aggregate — We group reports by vaccine type, symptom, manufacturer, U.S. state/territory, age group, sex, and year to produce the counts shown across the site.
  5. Cross-reference — We build vaccine-to-symptom and manufacturer-to-vaccine relationship maps so users can move between related views.
  6. Publish — The aggregated results are written to static JSON files and served from the edge for fast, serverless delivery.

We include all reports as-is. We do not remove, filter, or de-duplicate reports beyond what the CDC/FDA has already done, and we do not add any causal interpretation to the underlying data.

How Metrics Are Computed

Every headline number on VaccineWatch is a direct count or simple ratio derived from the VAERS fields. Specifically:

  • Total reports — the number of distinct VAERS IDs matching a given filter (vaccine, symptom, state, year, etc.).
  • Deaths — reports where the VAERS DIED field is flagged Y.
  • Hospitalizations — reports where the HOSPITAL field is flagged Y.
  • ER visits — reports flagged for emergency room or doctor visit.
  • Disabilities — reports where the DISABLE field is flagged Y.
  • Serious outcome rate — (deaths + hospitalizations) ÷ total reports × 100. This is a rough measure of the severity mix of the reports themselves, not a measure of vaccine risk.

A single report can carry multiple outcome flags (for example, both hospitalized and died), so outcome categories are not mutually exclusive and should not be summed to equal the total report count.

Update Cadence

The VAERS database is refreshed by the CDC/FDA on a roughly quarterly schedule, with the public files typically updated weekly for the current year as new reports are processed. We reprocess our datasets after each major VAERS release so that VaccineWatch reflects the latest available data. The current dataset was last processed on February 25, 2026, and covers reports through early 2026.

Limitations You Must Keep in Mind

Because VAERS is a passive surveillance system, the data carries important limitations that shape how it can be used. No metric on this site should be read as a measure of vaccine risk or as evidence of causation:

  • Reports do not prove causation. A report only establishes that an event occurred after vaccination — a temporal association, not a causal one.
  • No denominator. VAERS does not record how many doses were administered, so raw report counts cannot be converted into rates or compared across vaccines to infer risk.
  • Underreporting and stimulated reporting. Many events are never reported, while media attention and legal incentives can inflate reporting for specific vaccines independent of any change in actual risk.
  • Unverified content. Reports are accepted without being confirmed for medical accuracy, and anyone may submit one.
  • Possible duplicates. The same event may be reported by multiple people; some duplicates may remain in the data.

When VAERS surfaces a potential signal, it is investigated using more rigorous systems such as the Vaccine Safety Datalink (VSD) and the Clinical Immunization Safety Assessment (CISA) project, which can actually test for causation. For a fuller treatment of these caveats, see our disclaimer and our analysis of the denominator problem.

Data Quality Considerations

Working with VAERS data requires awareness of several data quality issues that affect analysis:

  • Character encoding: Raw VAERS CSV files sometimes contain encoding inconsistencies, particularly in free-text symptom descriptions and narrative fields. Our pipeline normalizes these to UTF-8 during processing.
  • Date parsing: VAERS dates can appear in multiple formats across different year files. We standardize all dates to ISO 8601 format during import.
  • Vaccine type standardization: The same vaccine may appear under different type codes across years (e.g., COVID vaccines use COVID19 and COVID19-2). We map these to canonical vaccine types for consistent aggregation.
  • Symptom coding: Symptoms are coded using MedDRA Preferred Terms, which are standardized medical terminology. However, the same clinical condition may be coded differently by different reporters. We use the MedDRA codes as-is without additional normalization.
  • Missing data: Many VAERS reports have missing fields — age, sex, state, and onset date are frequently blank. We include reports with missing data in our totals but exclude them from analyses where the missing field is required (e.g., age-group breakdowns exclude reports with unknown age).

What We Don't Do

Transparency requires being clear about what we don't do as much as what we do:

  • We don't filter reports. All reports in the public VAERS dataset appear on VaccineWatch, regardless of severity, plausibility, or verification status.
  • We don't add causal interpretation. We never claim that a vaccine caused any reported event. Our language consistently uses "reported after," "associated with," and "temporal association" rather than causal language.
  • We don't make medical recommendations. VaccineWatch is an educational data transparency tool, not a medical advice service.
  • We don't de-duplicate reports. Some events may be reported by multiple people. We leave the data as the CDC/FDA published it.
  • We don't estimate denominators. While dose administration data exists from other sources, we do not attempt to calculate per-dose rates because the population denominators from VAERS are unreliable.

Technical Architecture

VaccineWatch is built as a static site for maximum performance and reliability:

  • Framework: Next.js with static generation (SSG) for all data pages
  • Data format: Pre-computed JSON files served from the edge
  • Charts: Recharts for interactive client-side data visualization
  • Hosting: Edge-deployed for sub-100ms response times globally
  • Search: Client-side search index for instant vaccine and symptom lookup

This architecture ensures that VaccineWatch remains fast and accessible even during traffic spikes. There is no database to query at runtime — all data is pre-computed during our processing pipeline and served as static assets.

Frequently Asked Questions About Our Data

Q: Can I verify your numbers against the original VAERS data?
A: Yes. All our data comes from the official public-use VAERS datasets at vaers.hhs.gov. Our methodology page documents the exact processing steps, so anyone can reproduce our numbers.

Q: How quickly do you update after VAERS releases new data?
A: We typically process new VAERS releases within a few days of publication. The current dataset was last processed on February 25, 2026.

Q: Do you use any AI or machine learning in your analysis?
A: Our current pipeline uses straightforward data processing and aggregation — no AI or ML models. All metrics are direct counts and simple ratios. We may incorporate AI-assisted analysis in the future, but any such additions will be clearly documented.

Q: Why don't you show per-dose risk rates?
A: VAERS does not include dose administration data. While dose counts exist from other sources (CDC immunization surveys, manufacturer reports), combining them with VAERS data introduces significant methodological challenges. We prefer to present the data we have accurately rather than create potentially misleading calculated rates.

Data Quality Considerations

Working with VAERS data requires awareness of several data quality issues that affect analysis:

  • Character encoding: Raw VAERS CSV files sometimes contain encoding inconsistencies, particularly in free-text symptom descriptions and narrative fields. Our pipeline normalizes these to UTF-8 during processing.
  • Date parsing: VAERS dates can appear in multiple formats across different year files. We standardize all dates to ISO 8601 format during import.
  • Vaccine type standardization: The same vaccine may appear under different type codes across years (e.g., COVID vaccines use COVID19 and COVID19-2). We map these to canonical vaccine types for consistent aggregation.
  • Symptom coding: Symptoms are coded using MedDRA Preferred Terms, which are standardized medical terminology. However, the same clinical condition may be coded differently by different reporters. We use the MedDRA codes as-is without additional normalization.
  • Missing data: Many VAERS reports have missing fields — age, sex, state, and onset date are frequently blank. We include reports with missing data in our totals but exclude them from analyses where the missing field is required (e.g., age-group breakdowns exclude reports with unknown age).

What We Don't Do

Transparency requires being clear about what we don't do as much as what we do:

  • We don't filter reports. All reports in the public VAERS dataset appear on VaccineWatch, regardless of severity, plausibility, or verification status.
  • We don't add causal interpretation. We never claim that a vaccine caused any reported event. Our language consistently uses "reported after," "associated with," and "temporal association" rather than causal language.
  • We don't make medical recommendations. VaccineWatch is an educational data transparency tool, not a medical advice service.
  • We don't de-duplicate reports. Some events may be reported by multiple people. We leave the data as the CDC/FDA published it.
  • We don't estimate denominators. While dose administration data exists from other sources, we do not attempt to calculate per-dose rates because the population denominators from VAERS are unreliable.

Technical Architecture

VaccineWatch is built as a static site for maximum performance and reliability:

  • Framework: Next.js with static generation (SSG) for all data pages
  • Data format: Pre-computed JSON files served from the edge
  • Charts: Recharts for interactive client-side data visualization
  • Hosting: Edge-deployed for sub-100ms response times globally
  • Search: Client-side search index for instant vaccine and symptom lookup

This architecture ensures that VaccineWatch remains fast and accessible even during traffic spikes. There is no database to query at runtime — all data is pre-computed during our processing pipeline and served as static assets.

Frequently Asked Questions About Our Data

Q: Can I verify your numbers against the original VAERS data?
A: Yes. All our data comes from the official public-use VAERS datasets at vaers.hhs.gov. Our methodology page documents the exact processing steps, so anyone can reproduce our numbers.

Q: How quickly do you update after VAERS releases new data?
A: We typically process new VAERS releases within a few days of publication. The current dataset was last processed on February 25, 2026.

Q: Do you use any AI or machine learning in your analysis?
A: Our current pipeline uses straightforward data processing and aggregation — no AI or ML models. All metrics are direct counts and simple ratios. We may incorporate AI-assisted analysis in the future, but any such additions will be clearly documented.

Q: Why don't you show per-dose risk rates?
A: VAERS does not include dose administration data. While dose counts exist from other sources (CDC immunization surveys, manufacturer reports), combining them with VAERS data introduces significant methodological challenges. We prefer to present the data we have accurately rather than create potentially misleading calculated rates.

Explore More

About VaccineWatch
Our mission and stance
FAQ
Common questions answered
Glossary
VAERS terms defined