Methodology

How we get the numbers, and when we change them.

Every chart on every Covalent ML site has a source, a date, and a calculation. This page collects all of them in one place so you can challenge anything we've put in front of you.

Editorial principles

We try to follow four rules: (1) every material number has a named public source with a link; (2) timestamps are explicit, in US Pacific time; (3) when a source conflicts with another, we show both rather than pick; (4) when we model or estimate a number — rather than quote it — we label it est. and publish the calculation.

We aim to be adversarial toward our own story. If the cascade argument ("blockade → oil → fertilizer → food") is wrong or weakens, we say so on the relevant site, not quietly.

Update cadence

Trackers — Hormuz Watch, Oil Shortages, Fertilizer Fault Line — are reviewed daily during active crisis windows and at least weekly otherwise. The Iran Peace Plan and Attention Tax are updated when the underlying facts change.

Every site carries a Last verified timestamp in its footer. If the timestamp is more than a week old on a tracker page, treat the live numbers skeptically.

Sources we trust

In descending order of how much weight we give them for any given claim:

  • Primary documents: government releases, SEC filings, IEA/FAO/WFP/WHO bulletins, central bank data.
  • Wire services with datelines and bylines: Reuters, AP, AFP, Bloomberg.
  • Trade publications with domain specialization: S&P Global Platts, Argus, Kpler, Windward, LSEG, TradingEconomics.
  • Major national outlets: NYT, FT, WSJ, Guardian, NPR, PBS, Al Jazeera, NHK.
  • Specialist research shops: Noria, UANI, USNI News, CSIS, RUSI.

We do not use anonymous Telegram channels, unverified social posts, or partisan think-tank blogs as a single source. If a number appears only in one place, we say so.

What changes count as a correction

If we change a headline number after publication, we note it in the What changed changelog on the site. If we materially change our argument, we do the same and keep the prior text visible via the git history on our public repository. Typos and small copy edits are not tracked.

Per-site calculation notes

Hormuz Watch
hormuz.covalentml.com

Transit counts are journalist-reported + Kpler/Windward vessel tracking. Not direct AIS.

"$435M/day cost to Iran" — Iran's pre-war oil export volume × current Brent, minus illicit-route discount (15% haircut).

War-risk premium — Lloyd's List Joint War Committee posted rates; hull-value percentage.

Oil Shortages Countdown
oilshortages.covalentml.com

Country pressure scores aggregate: retail fuel price MoM change, strategic-reserve days of cover, LNG spot, household LPG index. Weighted sum, 0-100.

SPR days of cover = SPR volume ÷ (domestic consumption − domestic production).

Fertilizer Fault Line
fertilizer.covalentml.com

"3.8 billion people alive because of Haber-Bosch" — Smil (2011); about half of nitrogen in human tissue traces to synthetic fertilizer.

"Gulf supplies a third of world traded nitrogen fertilizer" — IFA 2024 trade flows (Saudi, Qatar, UAE, Iran, Oman combined).

Harvest impact Q3 2026 — 4-month lag between application window and grain delivery, conservative.

Iran's 10-Point Peace Plan
iranpeaceplan.covalentml.com

Casualty figures — NPR aggregate of Iranian Health Ministry + Israeli IDF + OHCHR. Civilian/combatant split per OHCHR.

Plan text — our paraphrase of the 10 points as reported by Reuters and Al Jazeera translators; we do not have access to the Farsi original.

The Attention Tax
attentiontax.covalentml.com

"23 days/year" — 91 minutes/day × 365 ÷ 60 ÷ 24 ≈ 23.1 days. Based on eMarketer 2025 US-average daily ad exposure across devices.

Lifetime cost — hourly value × hours of ad exposure; discounted at 0% (treats future attention as equally valuable).

Blocker efficacy — midpoint estimates from DuckDuckGo and uBlock Origin published measurements.

Questioning our math

If you think a number is wrong — including because it's our framing that's wrong — email [email protected] with the claim, your source, and what you'd change. We try to reply within a week and we publish substantive corrections.

Machine-readable

The latest snapshot of every site is available as JSON Feed 1.1 at /feed.json. Each item includes a _covalentml.snapshot block with the headline numbers.