Is the ban leaking? Iranian crude and the "Malaysian" flag
Trade-flow companion to the price wedge (R72). This is a DUAL-SCORE / alternative-track signal — never folded into any Tier-1 exposure score. The divergence between "who the controlling state says it stopped selling to" and "who suddenly started selling to the buyer" IS the signal. Research, not investment advice; origin-relabelling is INFERRED from statistical implausibility plus the public sanctions record, never asserted as smuggling on any single cargo.
Every figure below was pulled by us from two free public datasets — UN Comtrade (national customs submissions) and JODI-Oil (national energy-balance submissions) — and is reproducible with the committed script scripts/py/iptm/fetch_iran_crude_circumvention.py against the committed artifact data/intelligence/iran-crude-circumvention.json. No commercial cargo-tracker data is used anywhere in this case.
Verdict
On 11 October 2024 the US Treasury determined Iran's petroleum and petrochemical sectors to be sectors of strategic concern under §1(a)(i) of E.O. 13902, exposing any non-US refiner, trader, shipper or bank that knowingly transacts with them to secondary sanctions. Iranian crude became unsellable under its own name.
China's own customs data says China buys no Iranian crude at all. It also says China buys 1.4 million barrels a day of Malaysian crude — from a country that pumps 477 kb/d, exports 218 kb/d to the entire world, and is itself a net crude importer.
Both of those statements are filed by governments to free public databases. They cannot both be describing physical reality.
Test 1 — Malaysia cannot produce what China says it buys
| 2024, crude oil (HS 2709) | kb/d | source |
|---|---|---|
| China's reported imports from Malaysia | 1,405 | UN Comtrade, reporter China |
| Malaysia's total crude production | 477 | JODI-Oil, Malaysia INDPROD |
| Malaysia's total crude exports to the whole world | 218 | JODI-Oil, Malaysia TOTEXPSB |
| Malaysia's own crude imports (it is a net importer) | 443 | JODI-Oil, Malaysia TOTIMPSB |
| → China's claimed purchases as a multiple of Malaysian production | 2.95× | computed |
| → …as a multiple of Malaysia's entire world exports | 6.44× | computed |
Malaysia "supplied" 12.7% of China's total 11,080 kb/d crude import bill in 2024 — making it, on paper, China's third-largest crude supplier — while pumping 477 kb/d and shipping out 218 kb/d. A country cannot export six times more of a commodity than it tells the world it exported.
The ratio breaks exactly when the sanctions bite — and never recovers:
| Year | China's imports from Malaysia (kb/d) | Malaysia's total exports to the world (kb/d) | ratio |
|---|---|---|---|
| 2019 | 242 | 287 | 0.84 — plausible |
| 2020 | 250 | 280 | 0.89 — plausible |
| 2021 | 372 | 209 | 1.78 — impossible |
| 2022 | 716 | 203 | 3.52 |
| 2023 | 943 | 211 | 4.47 |
| 2024 | 1,405 | 218 | 6.44 |
China imports: UN Comtrade, reporter China (156), HS 2709, annual, net weight converted at 7.33 bbl/t. Malaysia exports: JODI-Oil annual CSVs, Malaysia CRUDEOIL / TOTEXPSB / KBD, averaged over reported months.
Test 2 — the mirror gap: only one side reports the cargo
This is the strongest test in the case because it needs no external baseline at all. Both countries file their own bilateral trade to the same UN database, under the same HS code, for the same year. They disagree:
| Crude oil (HS 2709), kb/d | 2019 | 2021 | 2022 | 2023 | 2024 |
|---|---|---|---|---|---|
| China says it imported from Malaysia | 242 | 372 | 716 | 943 | 1,405 |
| Malaysia says it exported to China | 2.1 | 5.3 | 1.6 | 3.9 | 8.2 |
| Mirror gap | 240 | 367 | 715 | 939 | 1,397 |
| Mirror ratio | 115× | 70× | 448× | 242× | 171× |
Both legs: UN Comtrade, HS 2709, annual, self-declared by each reporter.
Malaysia is not simply an unreliable reporter. In 2024 Malaysia told Comtrade it exported 190 kb/d of crude to the world, against the 218 kb/d it told JODI — the two submissions agree within ~13%. Malaysia's books are internally coherent; they just contain no trace of 1.4 million barrels a day of crude going to China. The cargo exists in exactly one country's records.
That is the fingerprint of oil that acquires its Malaysian identity at sea — in ship-to-ship transfers off Malaysian waters — and therefore never crosses a Malaysian customs desk to be counted as a Malaysian export.
Test 3 — the origin that officially disappeared
China's own customs record of Iranian crude:
| China's reported crude imports from Iran (kb/d) | 2019 | 2020 | 2021 | 2022 | 2023 | 2024 | 2025 |
|---|---|---|---|---|---|---|---|
| 297 | 79 | 5.2 | 15.7 | none reported | none reported | none reported |
UN Comtrade, reporter China (156), partner Iran (364), HS 2709. "None reported" = no line returned by the database for that year.
Iran's official line falls to zero across 2021–23; the "Malaysian" line rises from 242 to 1,405 kb/d over the same span. Venezuela — the other heavily-sanctioned origin — follows the same disappearing act in China's books (229 kb/d in 2019; no line reported 2020–23; 30 kb/d in 2024).
Treasury's own advisory to financial institutions states the destination plainly: "China purchases approximately 90 percent of Iran's oil exports, with teapot refineries accounting for the majority of these imports." The same alert names the mechanism — a "'shadow fleet' employing deceptive shipping practices such as ship-to-ship transfers, falsified documentation, and vessel identity manipulation."
The corporate pipe (the common-ownership tell)
As with antimony's Youngsun chain, the strongest layer is not implausible volume — it is common ownership across the seller, the intermediary, and the delivery point. OFAC has designated the chain in primary releases:
> Sepehr Energy Jahan Nama Pars (Iran — commercial arm of the Armed Forces > General Staff) → Hong Kong-registered fronts it owns or controls: Puyuan > Trade Co., Ltd, Xin Rui Ji Trad Co., Ltd, Star Energy International Ltd, > Milen Trading Co., Ltd → delivery at Qingdao Port, Dongjiakou shore tanks, > and Rizhao Port (Shandong) → independent "teapot" refineries.
Treasury describes the structure in exactly the terms this detector looks for:
> "Sepehr Energy often carries out its oil shipments through a series of 'deals' > between multiple front companies that it owns or controls, creating the > illusion of non-sanctionable trade between separate entities."
and, on the origin-laundering itself:
> "Sepehr Energy and its affiliate companies … use deceitful evasion methods such > as falsification of maritime documents to obfuscate the Iranian origin of the > oil that it trades and transports to overseas buyers, including the PRC."
Sources: OFAC press releases [SB0015 (6 Feb 2025)](https://home.treasury.gov/news/press-releases/sb0015), [SB0139 (13 May 2025)](https://home.treasury.gov/news/press-releases/sb0139), and the teapot-refinery alert [SB0476](https://home.treasury.gov/news/press-releases/sb0476). Presented as the publicly-designated worked example of the mechanism — NOT a per-cargo accusation beyond what the public record states.
Mode: a new sub-signature — the one-sided surge
The corpus has tracked four modes (A trans-shipment relabelling, B capacity relocation, C transformation-washing, D route re-routing). This case is mode A, but with a variant that defeats the standard detector and is worth naming:
In every prior mode-A case, the transit country's own exports surge — Thailand's antimony-oxide exports genuinely rose, because the material physically entered and left Thai customs territory. The volume-implausibility test works because you can see the surge in the transit country's books.
Here Malaysia's books never move. Malaysian crude exports are flat-to-declining (287 → 218 kb/d, 2019→2024) across the entire period in which China's "Malaysian" imports grew six-fold. The relabelling happens offshore, in international or territorial waters, without a customs entry — so the transit state is a flag of convenience for origin rather than a participating re-exporter.
Lesson for the detector: when a transit surge appears in the buyer's import data but not in the transit country's export data, do not read the transit country's books and conclude "no leak" — read the two sides *against each other*. The mirror gap is the detector for maritime relabelling; the one-sided surge is its signature. This is the counterpart to the co-producer blind spot (potash) and the reporter-wall (cobalt): a structural failure mode of the single-sided test.
Why it matters for the buyer
1. Official bilateral data is actively misleading here — in both directions. A risk team reading China's customs file would conclude China has zero Iranian crude exposure and a large, growing Malaysian dependency. The truth is closer to the reverse. Any exposure model keyed on stated country-of-origin is compromised for a sanctioned commodity. 2. It confirms the control is binding. Origin-laundering at this cost and complexity only happens when the material genuinely cannot move under its own name — the same fact the price wedge prices. 3. It is a leading indicator of enforcement risk. The laundered leg is where the chain breaks next: Treasury has been designating the Shandong terminals and teapots that form the landing point, and has put financial institutions on notice of secondary-sanctions exposure. A refiner, shipper, or bank touching "Malaysian" crude into Shandong is closer to the perimeter than its paperwork suggests.
Method & honesty rails
- Trade data: UN Comtrade free public preview API, annual, HS 2709, reporters
China (156) and Malaysia (458). Net weight converted at 7.33 bbl/tonne, the conventional world-average factor — deliberately conservative, since the light Malaysian grades this cargo claims to be would convert at ~7.5 and make the ratios larger.
- Production/export baseline: JODI-Oil annual CSVs (jodidata.org), Malaysia
CRUDEOIL, unit KBD, flows INDPROD / TOTEXPSB / TOTIMPSB, averaged over reported months. JODI is used for the baseline because it is Malaysia's own energy-balance submission and is complete in years where Malaysia's Comtrade export filings are patchy (Malaysia filed ~0 to Comtrade for world crude exports in 2020, 2022 and 2023 — those years' mirror readings should be treated as weaker; 2019, 2021 and 2024 are the clean years, and 2024 is the headline because both Malaysian submissions agree that year).
- What this does NOT establish. (a) We cannot attribute the 1,397 kb/d gap
between Iranian and Venezuelan barrels — both origins vanish from China's books over the same period and both are publicly reported to relabel through the same waters. (b) We have not traced a Malaysia-registered exporter-of-record, because on the maritime-relabelling mechanism there may not be one; the named corporate hops are Iranian-seller-side and Chinese-buyer-side, both from primary OFAC designations. (c) Mirror gaps have innocent contributors — re-exports, bonded storage, timing of loading vs arrival, FOB/CIF and net/gross weight conventions. It is the magnitude (171×) and the persistence (six consecutive years), not the existence of a gap, that carries the signal.
- Alternative-track only: this never touches
buyerRelativeScoreor the base
exposure — it sits next to them, exactly like the China–West price wedge.
- Inference, not accusation: no individual cargo, vessel, or company is
asserted to have acted illegally beyond what the cited OFAC designations state.
Open question for the register
The filed action 2024-10-11-us-ofac-iran-petroleum-petrochemical-sector-determination-eo-13902 cites Treasury press release SB0015 as its 2024-10-11 source. SB0015 is in fact dated 6 February 2025 (it references NSPM-2 of 4 Feb 2025 and Secretary Bessent). The determination's own primary record is the Federal Register notice (FR Doc 2024-26800, 19 Nov 2024), which the action also cites correctly. The SB0015 label/date pairing in that action should be corrected on a filing wake.