Skip to main content

Methodology

This page explains exactly how data gets from an official government source onto Public Health Trace: where it comes from, how often it refreshes, what counts as an "active" recall or outbreak, and where the data has real, documented gaps. See Data Coverage for a quick matrix of what's live today by data type and region (United States vs. Global).

How data moves through Public Health Trace

Source

Each registered source (a CDC, FDA, USDA, or EPA feed) is fetched on its own schedule by a dedicated importer.

Import

The importer records what it fetched, when, and whether it succeeded, so every source's freshness can be tracked independently.

Normalize

Records are matched against existing companies, brands, foods, and diseases so the same entity isn't duplicated under slightly different names across sources.

Publish

Normalized records become searchable on Public Health Trace, cross-linked to related recalls, outbreaks, diseases, and foods, with a link back to the original source.

Refresh schedule and staleness

Every registered source has a tracked staleness threshold. For sources with a confirmed live feed, that threshold is 48 hours: if a source hasn't completed a successful import within that window, our internal health check flags it as potentially stale. Sources that don't yet have a confirmed live feed (see data sources) are excluded from that check entirely, since they haven't run yet by design, not because something broke.

Separately, an individual outbreak or recall record can be marked provisional -- meaning the agency that published it may still revise it (for example, current-year outbreak counts CDC continues to update as case investigations close). This is a property of the record itself, independent of whether its source is currently up to date.

What "active" means

Neither recalls nor outbreaks come from their source with a clean "is this currently active" flag, so Public Health Trace approximates it honestly from the fields the data actually has:

Active recall
Status is not Terminated or Closed.
Active outbreak
No end date has been recorded, and the outbreak started within the last 12 months. CDC's outbreak surveillance data has no investigation-status field at all, so recency is the closest honest proxy available.

Why Public Health Trace's numbers can differ from an agency's own site

Public Health Trace imports on a schedule, not in real time, so there can be a short lag between an agency publishing an update and it appearing here. Public Health Trace also links every record to its official source specifically so you can always check the current, authoritative version directly -- Public Health Trace is a way to search and cross-reference that data, not a replacement for the agency's own record.

Deduplication and normalization

Recalls and outbreaks are linked to shared company, brand, food, and disease records rather than storing a separate copy of each name per source. This is what makes it possible to see, for example, every recall associated with a given company or every outbreak linked to a given food, even when they came from different source feeds.

Known limitations

See all data sources for the full, current status of every source, and our editorial policy for how titles and summaries are generated from this data.