Tension Board
The Fuel System: what the fossil system says fuel should cost
Projected balance: -6.1 mb/d deficit
Global liquids account, as of 2026-08. 2/8 lenses fresh, 0 active tensions.
The same headline means different things at different inventory levels, spare capacity, positioning and disruption state. This board tracks the market state explicitly: one measured lens per variable, each on its own page, disagreements displayed rather than averaged away. The integrated house read, when staked, enters the Forecast Lab ledger with a resolution date and is scored publicly.
How to read this page: ◼ backbone historical mass balance, structural · ● measured sourced data · ◐ inferred analyst reading, basis linked · ○ forecast external model outlook (e.g. STEO). Bracketed citations link to the sources at the foot of the page.
System Account
Thick lines = physical flow (barrels, gas). Thin dashed = influence. Left to right = supply to demand. Colour = tight (red) / ample (green). Dashed border = forecast.
World liquids supply
○98.3 mb/d
US crude stocks
●429 Mbbl
SPR
●290 Mbbl
Hormuz transit
●3 calls/d
Gas price (HH)
●$2.86 /MMBtu
Refining
◼83 mb/d runs
EU gas storage
●64.09%
Qatari LNG
●unmeasured
Product supply
●77.8 mb/d
Other liquids
◐25.3 mb/d
Positioning
●-24.2k contracts
Final demand
○104.4 mb/d
Macro (DXY + IP)
●118.1 DXY
neutral
Projected balance
○-6.1 mb/d
The gas account
The same construction as the oil account above, for natural gas, on JODI-Gas. One thing gas gets that oil does not: imports and exports each split into pipeline and LNG. A pipeline is a contract with a fixed counterparty; an LNG cargo can turn around mid-ocean. Drawn as one flow, that difference disappears. Pick a region, scrub the month.
Gas account, SE Asia, 2026-05
JODI-Gas · 5 countries in the balance
Built country-by-country and summed only over the 5 countries complete in this month. Summed instead across every reporter, the world residual is about 40%, because countries file different flows; that is the trap this construction avoids. The residual is displayed, never plugged. 2 country(s) here supply JODI's calculated demand rather than observed. 1 report no export flow at all, taken as zero.
What is in each box, and how the account closes
Every box is a breadcrumb from another page; the account is where they are compared. STEO gives supply 98.3 − demand 104.4 = -6.1 deficit, met by drawing on reserves. STEO splits that supply itself: 73.0 mb/d of crude and 25.3 mb/d of other liquids, the NGLs, biofuels and synthetics that never come out of a wellhead as crude. Those two are published separately and sum to the total exactly, so the split is measured rather than inferred. Note what it does not equal: the refineries page gives crude runs of 83 mb/d, which is larger than crude production, because refinery throughput counts every feedstock a refinery processes and draws on inventory besides. That gap is a fact about the system, not an error. Estimates are marked ~. The products lane closes from two sides: JODI measures 77.8 mb/d of refined output, but only from its ~50 reporting countries (2025-12), so it is a lower bound. The runs-based estimate, crude runs 83 plus ~2% processing gain, grosses that to ~85 mb/d, and ~85 products plus ~25.3 other liquids lands on demand. The 7.2 mb/d between JODI's 77.8 and the ~85 estimate is JODI's country coverage, not a hole in the account. One honest gap remains: we do not yet physically track crude supply, so supply and demand are STEO forecasts. The paper/money page is a separate lens, built to disagree with this physical balance, not to feed it.
| Box | Value | As of | What it is, and where the number comes from | Tier |
|---|---|---|---|---|
| World liquids supply | 98.3 mb/d | 2026-08monthly · STEO | Crude + NGLs + biofuels + other liquids. Source: EIA STEO forecast (near-term actual plus outlook). We do not yet physically track crude supply, so this is the one node with no monitoring page behind it; it links to the physical energy overview, never the paper/money page. | ○ forecast |
| Refining runs | 83 mb/d | 2024annual · EI | The crude slice of supply actually run through refineries. From the refineries page backbone (EI 2024); the monitored-outage tally rides on top as a measured/inferred overlay. | ◼ backbone |
| Product supply | 77.8 mb/d | 2025-12monthly · JODI | What refineries make: gasoline, diesel, jet, fuel oil, naphtha, LPG. JODI measures 77.8 across ~50 reporting countries (2025-12), a lower bound. The runs-based cross-check (crude runs 83 + ~2% processing gain ≈ 85) is coverage-complete; the 7.2 mb/d between them is JODI's missing countries, not a broken balance. | ● measured |
| Other liquids | ~25.3 mb/d | 2026-08monthly · STEO | NGLs (ethane, propane, butane), biofuels and synthetics: everything in world liquids supply that is not crude. Read directly from STEO's own split (OPEC_NC + NONOPEC_NC), which sums to the published total with a closure residual of 0.000 mb/d. Until 2026-07-27 this was computed as supply minus refinery runs, which double-subtracted the non-crude feedstock that does pass through refineries and compared two vintages; that method read 16.3 against the measured 25.3. | ● measured |
| Final demand | 104.4 mb/d | 2026-08monthly · STEO | Total world liquids consumption. Source: EIA STEO forecast. A physical quantity, separate from the paper/money page. | ○ forecast |
| Projected balance | -6.1 mb/d | 2026-08derived | Supply minus demand. Negative means the world is drawing this much from inventories (US crude stocks, SPR) to meet demand. That draw is what makes the account balance. | derived |
Crude supply, by vintage
The same crude, measured four ways at different scopes and dates. They do not line up, and that is the point: STEO's 98.3 is total liquids (crude plus NGLs plus biofuels); the EI backbone is crude runs; JODI's 47.5 is measured crude output but from only 42 countries (~58% coverage, a loose lower bound); EIA's 13.8 is tight but US only. None replaces the account value; the layers sit beside it so the coverage and scope gaps stay visible.
| Readout | mb/d | As of | Scope | Tier |
|---|---|---|---|---|
| Total liquids supply | 98.3 | 2026-08monthly | crude + NGLs + biofuels | ○ forecast |
| World crude runs | 83.0 | 2024annual | structural throughput, a demand-side proxy | ◼ backbone |
| World crude production | 47.5 | 2025-12monthly | JODI, 42 countries, ~58% coverage lower bound | ● measured |
| US crude production | 13.8 | 2026-08-21weekly | EIA weekly, US only | ● measured |
| Monitored disruptions | −1.0 | 2026-07-19news · 1 tracked | CPC (Novorossiysk marine terminal) (1.0) | ◐ inferred |
Monitored disruptions are news-inferred deltas with a 90-day decay, curated from primary reports into upstream_status_events.json. They are shown as context, not subtracted from the STEO forecast, which is a monthly figure that already reflects the war-depressed supply level; a fresh event (e.g. the 19 July CPC loading halt) is additive nowcast information the monthly forecast has not yet absorbed.
What comes out of the refinery
The account's product node, opened up. World refinery output by product, measured across JODI's reporting countries (2025-12). This is the physical flow; prices are a separate readout compared against it, and the two are not assumed to match.
The per-product bars sum to 82.2 mb/d; JODI's netted total for the same countries and month is 77.8. The 4.4 mb/d difference is interproduct transfers and category overlaps (naphtha reprocessed into gasoline, kerosene splits), shown here rather than plugged. Coverage is the JODI-reporting world, a lower bound; the account grosses it up via the runs cross-check in the box explainer above. Source: JODI-Oil World Database.
Flow against price: gas/diesel oil is the largest cut of the barrel at 24.3 mb/d, and it is also the product the market prices as scarcest (the diesel crack sits at 3.0x its pre-war mean, the market lens above). The slate is what refineries physically make; the crack is what the market pays for it. When they diverge, as now, the divergence is the signal, not an error. The rest of the lane: crude runs 83 mb/d feed this slate, and ~25.3 mb/d of other liquids (NGLs, biofuels and synthetics, STEO's own non-crude split) reach demand without ever coming out of a wellhead as crude.
Why the outage numbers differ across pages
The same event set produces different totals because each surface includes different status categories and uses different loss methods. All are defensible; the difference is the inclusion rule.
| Measure | Includes | Value | Where |
|---|---|---|---|
| Tracked affected | offline + run-cut (nameplate) + damaged/restarted (nameplate) | 11.6 mb/d | Stat strip |
| Estimated loss | offline (nameplate) + run-cut (shortfall where throughput sourced) | — | Diagram |
| Verified offline | offline only (nameplate) | — | Refineries stat card |
Tracked affected is the broadest (counts damaged/restarted at full nameplate even though they are partially running). Estimated loss is the most conservative (only counts shortfall where throughput is sourced). Both are computed from the same curated event set.
House read
Hindcast strip (Feb-Jun 2026)
Each chip shows one month-end: count of lenses reading tight/bearish/deficit (T) vs loose/bullish/surplus (L). Hover for per-lens breakdown. Crisis escalation visible: T count rises Feb to Jun.
Before the first house read
- ○ At least 5 measured lenses fresh (currently 2/8)
- ✓ Hindcast strip seeded with crisis months (25 entries)
- ○ Corridor beats informativeness rule (narrower than realized vol or displaced from STEO median)
Lens readings
Inventories
US commercial crude stocks (409,665 kb) below the five-year weekly min (422,162 kb) for week 28.
Market prices
US diesel crack (ULSD minus Brent) at $69.46/bbl on 2026-07-06, 2.4x the pre-war 2023-2025 mean of $28.91.
Positioning
ICE WTI managed money net short -24,220 contracts (below -10k threshold).
Consensus (STEO)
EIA STEO projects world supply/demand balance of +4.78 mb/d at end of forecast horizon (2027-12), with Brent falling to $61/bbl.
Physical supply
6.5 mb/d of tracked refinery outages (CIS -3.2, ME -2.2, SCA -0.7, AP -0.4).
Macro
Industrial production at 101.49 (2025-12), within 2% of trend.
Geopolitical
Three concurrent conflict-driven disruption zones: CIS (Russia drone campaign, 3.2 mb/d offline), Middle East (Iran/Hormuz aftermath, 2.2 mb/d), South/Central America (Venezuela earthquake, 0.7 mb/d).
Flexibility
Henry Hub at $2.5/MMBtu (STEO forecast, Jul 2026): gas remains cheap relative to oil, preserving gas-to-oil substitution slack in power and industrial sectors.
By product
Crude
INV: tight
MKT: tight
POS: bearish
CON: surplus
PHY: tight
MAC: neutral
GEO: stressed
Products
INV: tight
MKT: tight
CON: surplus
PHY: tight
MAC: neutral
GEO: stressed
FLX: normal
Gas
CON: surplus
MAC: neutral
GEO: stressed
FLX: normal
Tensions
The disagreement is the product. When two lenses point in opposite directions, the tension names what the market has to resolve. The hindcast record shows which lens was right the last time this pair disagreed.
No active tensions (all lenses agree or some are stale).
Crisis hindcast (Feb-Jun 2026)
What the mechanical rules would have said at each month-end during the crisis, computed from historical data. Clearly a backtest, not a real-time record. The escalation path is visible: physical stress crossing thresholds as outages accumulated, inventories tightening with a lag.
| Date | INV | POS | CON | PHY | MAC |
|---|---|---|---|---|---|
| 2026-02-28 | normal | bearish | surplus | normal | neutral |
| 2026-03-31 | normal | bearish | deficit | normal | neutral |
| 2026-04-30 | normal | bearish | deficit | stressed | neutral |
| 2026-05-31 | normal | bearish | deficit | stressed | neutral |
| 2026-06-30 | tight | bearish | deficit | tight | neutral |
Hindcast: mechanical rules applied to data available at each date. Red = tight/bearish/deficit, green = loose/bullish/surplus. Hover for rationale. Not a real-time record.
The Record
Every staked claim is tracked here: staked, open, resolved, with what actually happened. The STEO consensus is scored alongside the house reads. A read that beats none of the no-skill baselines (no-change, the market's own curve, and STEO) is reported as beating none of them.
No claims staked yet. The first house read enters after the hindcast strip is live and the corridor beats the informativeness rule (narrower than realized vol or materially displaced from the STEO median).
Coverage and gaps
Every fuel-system surface either feeds this board, is planned to with a named blocker, or is exempt with a written reason. Gaps are allowed; undocumented gaps are not. The contract is checked mechanically at every push.
Planned feeds (the promises)
- Global gas flows The gas-system lens promised in the original feeder table never shipped. Blocker: JODI-Gas fetcher pending (NE Asia LNG import volumes, the measured check on the El Nino winter tail); lng_capacity.json and gas_trade_pairs.json exist but the board reads none of them. The Qatari LNG node renders 'unmeasured' while this page holds the data to measure it.
- Switchability matrix into flexibility lens The flexibility verdict is still curated from the Henry Hub price alone. switchability.json (Atlas volumes + timescale classes) exists and should make the verdict computable: system-wide short-term switchable volume vs current stress.
- World stocks into the account The board uses US commercial stocks only; jodi_stocks.json (OECD + world, monthly) should give the inventory lens a world context line so US-tight vs world-comfortable stops being an unexplained contradiction.
- Biofuels & renewable diesel US renewable diesel production (us_signals) is a measured diesel-supply margin that never enters the products lane. Small volume, but the diesel story is the board's differentiated call and this is measured supply on its margin.
Data the board cannot use, and why
- NYMEX/Brent futures curve as a live series. EIA futures endpoint dead since 2024-04 (verified empirically); FRED excluded by its API terms (no caching/archiving); no licensed free feed exists; paid vendors refused on principle. The curve lens runs as a curated weekly observation with a press citation instead.
- Options-implied volatility (OVX) as the corridor yardstick. CBOE copyright pre-approval class. Yardstick is realized volatility computed from EIA daily prices (public domain, own computation), stated as backward-looking.
- JKM and API2 price series. Paywalled. EU/Asia switching bands are partial and labelled so; US bands are complete from EIA.
- A measured monthly world liquids demand series. No free measured world series exists at monthly cadence; the demand node is STEO forecast, labelled and dashed. JODI TOTDEMO is a candidate lower bound pending the same netting work as product output.
- Qatari LNG export volumes. JODI-Gas fetcher pending; node renders 'unmeasured' until it lands. The force-majeure state is known from press; the volume is not measured on-site yet.
8 surfaces feed the board, 4 are planned, 7 are exempt by design (structure-census maps, national-scope pages, samples too thin for a signal). Contract file: board_coverage.json, updated 2026-07-24.
Methodology
The board's lenses are the market state vector: inventories, expectations and positioning, physical balance, demand conditions, disruption state, and substitution slack. A sentiment model's deepest flaw is having no representation of the market state; the same headline means different things at different inventories, spare capacity, expectations and positioning. Each lens has its own page where its measured dataset lives; the board renders one-line summaries from shared data modules, never retyped.
Verdicts are mechanical where honest (stocks below five-year band = tight; net managed money below -10,000 contracts = bearish). The curator can override with a dated rationale, displayed as an override. Verdicts decay: a verdict not re-affirmed within its cadence window (weekly: 14 days, monthly: 45 days) renders grey "stale".
Three epistemic tiers: measured (lens data, green), inferred (lens verdicts, amber), staked (house read, openly speculative, ledgered in the Forecast Lab). Every house read is scored against named no-skill baselines: no-change, the futures curve, and STEO. A read that beats none of them is reported as beating none of them.
Sources and method (6)
- [1] EIA Weekly Petroleum Status Report
- [2] CFTC Commitments of Traders
- [3] EIA Short-Term Energy Outlook
- [4] EIA spot prices (daily)
- [5] Federal Reserve Board H.10 / G.17
- [6] A1AYN refinery status events
Inventories: EIA WPSR (weekly). Market: diesel crack from EIA daily spot prices vs its pre-war mean. Positioning: CFTC (weekly). Consensus: EIA STEO (monthly). Volatility: computed from EIA daily spot prices. Macro: Federal Reserve Board H.10/G.17. Physical: A1AYN refinery status events.