Where this comes from
How The Supply Map works
The Supply Map is built on primary government sources: FDA, USDA, EIA, NHTSA, CPSC, and others. This page documents what we ingest, how we connect it to goods and inputs, and what we deliberately do not do.
01 — Overview
What The Supply Map is
The Supply Map is a connected encyclopedia of how the world supplies America. It covers 36 essential goods, the inputs they depend on, the countries those inputs come from, and (as our extraction pipeline runs) the companies and facilities that produce them. Every signal we surface is traceable to a U.S. federal government API or database.
We do not use news articles, social media, or third-party aggregators as primary signal inputs. Each source has a defined ingestion cadence and a staleness threshold; data older than the threshold is flagged stale and excluded from the live surface.
02 — Data sources
Primary sources and cadence
All signals originate from U.S. federal government APIs and databases. We do not use news articles, social media, or third-party aggregators as primary signal inputs. Each source has a defined ingestion cadence and a staleness threshold — data older than the threshold is flagged as stale and excluded from live scoring.
FDA Drug Shortages
U.S. Food and Drug Administration
Active and resolved drug shortage records from the FDA Drug Shortage database. Each shortage record is normalized to a severity score based on shortage status and whether the drug appears in FDA's medically necessary category.
Primary sourceFDA Enforcement Reports
U.S. Food and Drug Administration
Drug and food recalls from the FDA openFDA enforcement API. Each record includes recall classification (Class I–III), reason, recalling firm, distribution pattern, and lot information. Class I recalls carry highest severity.
Primary sourceUSDA FSIS Recalls
USDA Food Safety and Inspection Service
Meat, poultry, and egg product recalls from the USDA FSIS recall API. Ingestion is live; the USDA FSIS server experienced a 503 outage during initial setup and will contribute to scores once confirmed stable.
Primary sourceEIA Petroleum Prices
U.S. Energy Information Administration
Weekly U.S. average retail gasoline and diesel prices from the EIA API. 52-week trailing window. Price deviation from baseline drives the severity score for gasoline and diesel tiles.
Primary sourceEIA Natural Gas Prices
U.S. Energy Information Administration
Monthly U.S. residential natural gas price series from the EIA API. Price deviation from prior-year baseline drives severity for the natural gas tile.
Primary source03 — Ingestion pipeline
How raw data becomes signals
Each source runs through a four-stage pipeline:
- 01Fetch. The ingestion task calls the source API and pages through all available records. Raw API responses are stored as-is in risk_raw_observations with a content hash. Unchanged records are detected by hash comparison and skipped — only changed or new records proceed.
- 02Normalize. Each source has a dedicated normalizer that converts the raw record into a canonical signal schema: severity (0–100), confidence (0–100), subject name, signal type, risk vector, observed date, and evidence URL. Normalization logic is source-specific but outputs a uniform structure.
- 03Upsert. Normalized signals are upserted to risk_normalized_signals using the source's external ID as the deduplication key. Existing records are updated if content has changed; new records are inserted. Signal status (active / historical) is preserved across runs.
- 04Match + score. After upsert, the matching engine runs deterministic matching to link signals to essential goods. After matching, new risk score snapshots are written for all goods using the formulas below.
04 — Signal matching
Linking signals to essential goods
Each normalized signal is matched against the 39 essential goods catalog using deterministic rules — not embeddings or fuzzy NLP. This makes matches auditable and correctable.
Each good has a curated list of matching terms and optional category rules. For example, the Beef & Ground Beef good matches signals whose subject name contains “beef”, “ground beef”, “hamburger”, “bison”, “veal”, or “steak”. USDA FSIS signals are additionally filtered by the product category field in the recall record.
Each match produces a match_score (0–100) used in scoring. Match score reflects the strength of the association: a direct product-name match scores higher than a category-only match. Matches are stored in essential_good_signal_matches and are re-run on every ingest to pick up new goods added to the catalog.
05 — Limitations
What this does not measure
- Coverage gaps: only goods with at least one active data source are shown. Many essential goods (water infrastructure, housing materials, grid reliability) are not yet covered.
- Lag: scores reflect data as of the last successful ingestion. Government APIs may themselves lag behind real-world conditions by hours to days.
- False negatives: the absence of a government signal does not mean a good is safe. Shortages and disruptions sometimes precede official reports.
- Geographic granularity: national scores do not reflect regional variation. Gasoline in Houston may behave differently than gasoline in rural Maine. State and metro views are a future priority.
- Substitutes: scoring does not model cross-good substitution. If insulin is at severe risk and metformin is at low risk, the dashboard does not reflect that households may switch.
- Structural factor calibration: vulnerability factor ratings are set at catalog creation and updated periodically — not in real time. They reflect informed editorial judgment, not econometric estimation.
06 — Contact
Journalists, researchers, and corrections
We want this data to be cited, challenged, and improved. If you find an error in a score, a recall record, or the methodology itself, please reach out. We will investigate and correct publicly.
Corrections & research
Data errors, coverage requests, academic collaboration.
research@policyrisk.comJon Ragsdale is a FINRA-registered investment adviser representative (CRD# 8129537, verifiable on FINRA BrokerCheck). The Supply Map scores are supply risk assessments, not investment or financial advice.