CutPointLab

Crack persistence

When a product crack is already high (>75th percentile of its trailing five years), how likely is it to stay high — and does the answer change when inventories are scarce and refineries are maxed? Every number recomputes from the primary series; the method lives in ml/crack_persistence.py.

Gasoline — Gulf conv crack / total gasoline stocks

regime now
LOW-INV
crack pctile
96th
inventory pctile
0th
utilization pctile
65th
Low stocks without max runs — persistence slightly better than tight, still seasonal.
regime at start (crack >75th)n+4w+8w+13w+26wmedian wks above p50
TIGHT · inv ≤20 & util ≥806890%70%55%45%11
Low inventories only · inv ≤2018784%74%69%56%12
Loose · inv ≥5022092%86%78%56%16
All high-crack weeks56589%81%74%57%15

1720 weeks scored, 1993-10-22 → 2026-10-02 · trailing-5y percentiles · start-weeks overlap, so read regime spreads, not decimals

ULSD — NYH No.2 crack / distillate stocks

regime now
LOW-INV
crack pctile
97th
inventory pctile
7th
utilization pctile
65th
Persistent, but meaningfully less so than with utilization also stretched.
regime at start (crack >75th)n+4w+8w+13w+26wmedian wks above p50
TIGHT · inv ≤20 & util ≥806597%98%96%78%21
Low inventories only · inv ≤2023092%82%79%71%21
Loose · inv ≥5020895%90%87%76%57
All high-crack weeks66495%90%85%76%34

1720 weeks scored, 1993-10-22 → 2026-10-02 · trailing-5y percentiles · start-weeks overlap, so read regime spreads, not decimals

Jet — Gulf jet crack / jet fuel stocks

regime now
LOOSE
crack pctile
98th
inventory pctile
60th
utilization pctile
65th
Jet's longest-persistence bucket — jet is globally priced, so comfortable US stocks don't cap the crack (2026 is the live example).
regime at start (crack >75th)n+4w+8w+13w+26wmedian wks above p50
TIGHT · inv ≤20 & util ≥802889%96%96%57%20
Low inventories only · inv ≤2014591%87%74%67%16
Loose · inv ≥5031297%97%95%86%47
All high-crack weeks64796%93%89%79%39

1720 weeks scored, 1993-10-22 → 2026-10-02 · trailing-5y percentiles · start-weeks overlap, so read regime spreads, not decimals