Data charts and shipping route maps

Methodology

How the numbers are built

Every index on this site is a model estimate, not a measurement. The equations are published below. Each runs on public data, recomputes on a schedule, and outputs a 0–100 score where 50 is normal. Nothing here is hand-tuned to tell a story. When the inputs cool, the score cools.

Data Sources

All inputs come from publicly available APIs. There are no proprietary feeds and no paywalled vendors.

Source Data Update Frequency
aisstream.ioVessel positions (AIS) at the three chokepointsContinuous
FRED (St. Louis Fed)CPI, PPI, energy prices, gasoline, trade dataDaily
Yahoo FinanceCommodity futures, shipping ETFs (BDRY, ZIM, SBLK)30 min (market hours)
GDELT ProjectGeopolitical news events, tone, disruption flags30 min
Bureau of Labor StatisticsDetailed CPI components (food, energy)Daily
Open-MeteoPanama Canal watershed rainfall (drought signal), no API keyDaily

The Indices

Four index families, all on the same 0–100 scale. Each component below is itself normalized to 0–100 before the weighted sum, so the weights are the whole story. They are reproduced verbatim from the running code.

Route Disruption Index

RDI v3

RDI = 0.35×News + 0.30×ChokepointComposite + 0.20×Freight + 0.15×CrudeDeviation
  • ChokepointComposite blends the three chokepoint severity scores below, weighted by U.S. import exposure: Hormuz 0.45, Panama 0.35, Suez 0.20.
  • News = the disruption-event ratio (the share of the last 24 hours of shipping articles flagged as disruptions), scaled linearly onto 0–100, with negative GDELT tone nudging it upward. Because News carries only a 0.35 weight, a single news cycle cannot dominate the index.
  • Freight = z-score of the BDRY / ZIM / SBLK basket against its 90-day distribution, mapped onto 0–100.
  • CrudeDeviation = z-score of WTI against its trailing 90 days.
  • Absence of AIS vessel data is not treated as disruption. A quiet sensor is a quiet sensor, not a closed canal.

Household Fuel Risk Index

HFRI v3

HFRI = 0.40×CrudeLevel + 0.30×Gasoline + 0.15×NatGas + 0.15×GeopoliticalOilRisk
  • CrudeLevel tracks WTI relative to its recent range; Gasoline tracks the U.S. regular retail price.
  • NatGas adds heating and power exposure.
  • GeopoliticalOilRisk is smoothed, log-scaled, and capped. A handful of headlines cannot peg the index to 100, which is why HFRI eases when the oil inputs cool instead of staying stuck at crisis levels.

Consumer Checkout Index

Checkout Index

Checkout = 0.40×FuelBasket + 0.45×GroceryBasket + 0.15×FreightPassThrough
  • FuelBasket = retail gasoline plus crude pass-through.
  • GroceryBasket = CPI-food momentum combined with z-scores of agricultural futures (coffee, wheat, corn, soybean, sugar).
  • FreightPassThrough carries the shipping-cost signal into the shelf price.
  • The page also reports a dollars-per-week above normal estimate, derived from the BLS Consumer Expenditure Survey for household weighting, EIA for fuel, and FRED for grocery levels.
  • Scale is 0–100 with 50 = a normal week. This is the index built to show whether relief at the wellhead has actually reached the till.

Chokepoint Severity

Chokepoint Severity v3

Computed per chokepoint, with no hardcoded floors. The old fixed “95, critical” Hormuz reading is gone; each score now moves only when its inputs move.

Panama = 0.45×Drought + 0.35×VesselThroughput + 0.20×News
Suez = 0.60×News + 0.25×FreightReroute + 0.15×Vessel
Hormuz = 0.55×News + 0.45×OilRisk
  • Drought at Panama is driven by Open-Meteo watershed rainfall; lower water means draft restrictions and fewer transits.
  • VesselThroughput compares the trailing 24-hour transit count against the 14-day average.
  • Hormuz carries no vessel term. AIS coverage there is effectively zero, so the model leans on news and oil-market risk rather than pretending to count ships it cannot see.
  • When a signal is unavailable, its weight is dropped and the remaining weights renormalize, so the printed weights describe the full-coverage case.

Severity Bands

Every 0–100 score on the site reads against one shared scale.

Low · below 35 Moderate · 35–49 Elevated · 50–64 High · 65–79 Critical · 80+

Limitations

How this is produced

The indices are computed by code from the formulas above, not written by hand. The written analysis on the site is produced with AI assistance and reviewed by a human editor before it publishes. When the underlying data revises, the numbers revise with it, and forecasts we make are logged on the public scorecard and marked Hit or Miss when the date passes.

Attribution

When citing Risk and Route data or indices, please use: “Source: Risk and Route (riskandroute.com).”

Underlying data carries its own attribution: “Source: FRED, Federal Reserve Bank of St. Louis” for economic data; “Source: U.S. Bureau of Labor Statistics” for CPI components; “Source: AIS data via aisstream.io” for vessel tracking; and “Weather data by Open-Meteo.com” for Panama watershed rainfall.