Domain E - EU Waste-Oil / Biodiesel Feedstock Trade Transparency Monitor

H1: Spain waste-oil (China) / virgin palm oil (Indonesia) price ratio1.321.120.920.720.530.70 flag threshold2023-01-012024-07-012026-04-01ratio
Source: Eurostat Comext via FactIQ (eu_comext_es), CN8 15180095 (China) vs. 15111010 (Indonesia)   Period: 2023-01 to 2026-05 (32 comparable months)   Harvest date: 2026-08-05
⚠ Transparency monitor only - no claim of fraud is made; see hypothesis antithesis. Comext data carries no vintage guarantee.

Domain E — Results: EU Waste-Oil / Biodiesel Feedstock Trade Transparency Monitor

Computed 2026-08-05 against hypothesis.md (commits cd26894, 6ace438, pre-registered before any monthly value was pulled). Every number below is reproducible: python -m src.domains.domain_e_eu_waste_oil_transparency.compute regenerates results.json from the staged fixtures in data/.

Read this before the numbers below: this is a monitor, not a verdict. Nothing here proves mislabeling, fraud, or circumvention. It flags patterns that match the shape of what real investigative and regulatory scrutiny of this sector has looked for. A flag is a prompt to look closer, never a conclusion — see Antithesis for the alternative explanations that must be ruled out before reading any of this as more than that.

H1 — Price-convergence signal: flagged for Spain, Belgium, and the Netherlands

The pre-registered threshold was a waste_price / virgin_price ratio above 0.70, sustained for 3+ consecutive available months.

Reporter Months compared Mean ratio Max ratio Months above 0.70 3+ month streaks
Spain 32 1.01 1.25 31 of 32 2 streaks (24 months, then 7 months)
Belgium 5 0.98 1.13 5 of 5 1 streak (all 5)
Netherlands 19 0.97 1.27 19 of 19 1 streak (all 19)
Italy 0 — (no months where both series had data)

Spain is the standout. Its "waste" import price from China ran at parity with, and often above, virgin technical-grade palm oil from Indonesia for essentially the entire observed window (mean ratio 1.01 — the waste category was, on average, not discounted at all). The lowest reading in the whole series (0.59, March 2025) is the only material dip; every other month sits at or above the flagged threshold. Belgium and the Netherlands show the same pattern on thinner data. Italy's two series never had overlapping months in this window, so H1 could not be evaluated for it at all — reported as a gap, not a zero.

This is the single most notable result in this domain: genuine waste/residue material is not supposed to price like virgin oil. That it does, consistently, across three independent reporters, is exactly the shape of signal this monitor was built to surface.

H2 — Volume-plausibility signal: consistent across all four reporters

"Waste" (CN8 15180095) import value grew faster than the virgin-oil benchmark in every one of the 4 core reporters, 2023 → 2025:

Reporter Waste growth Benchmark growth
Spain +75% −29%
Belgium +514% −100% (benchmark went to zero)
Netherlands +199% +144% (both grew — waste still grew faster)
Italy +26% −100% (benchmark went to zero)

As declared in advance, this has no fixed pass/fail threshold — it's a comparison, not a test. But the direction is unanimous: in every reporter checked, the "waste" category is growing faster than, or moving opposite to, the legitimate virgin-oil trade it's nominally a byproduct of.

H3 — Mirror-statistic reconciliation: fails everywhere, but differently than gas did

Using quantity (kg), not value, as the reconciliation metric — this avoids currency mismatches, since China reports in USD and the EU reporters in EUR:

Reporter Overlap months Average relative difference Reconciles (≤20%)?
Spain 33 52.1% No
Belgium 21 65.5% No
Netherlands 36 48.0% No
Italy 6 42.5% No

Same qualitative finding as Domain B's gas check: China's declared export quantity and each EU reporter's declared import quantity for the same nominal flow do not reconcile. But the pattern is different — gas showed a consistently large gap every month; this shows high variance, swinging between near-perfect matches (Spain: 1.5% in March 2026, 4.1% in May 2025) and near-total mismatches (Spain: 89% in April 2026) in adjacent or nearby months. That variance pattern is more consistent with shipment-timing misalignment (a single large cargo recorded by the exporter in one month and the importer in the next) than with a stable measurement-convention offset — a real, different-shaped finding from Domain B's, not the same one repeated.

H4 — Disclosure map: no anonymization found for this product, but one real absence

Unlike Domain B's gas finding, none of the reporters checked anonymize this specific trade line. Every reporter's series for CN8 1518 00 95 carries real, named partner attribution — including Germany, which suppressed gas partner data completely but discloses this product normally (just at negligible volume, €21,875/month average).

Ireland (checked at direct request, 2026-08-05)

Confirmed immaterial. 5 observations from China (avg €15,034/month), 1 from India (€50 total). China Customs has no dedicated export series to Ireland at all for this HS code. Ireland's real, indexed trade in biodiesel-adjacent products is intra-EU petroleum blending stock from Spain/Netherlands/France (a different CN8 family entirely), not this waste-oil line. Included in the disclosure map, not the core analysis.

Antithesis — read before treating H1/H2 as more than a flag

Caveats

Bottom line

Pre-registered hypothesis

Domain E — EU Waste-Oil / Biodiesel Feedstock Trade Transparency Monitor

Status: PRE-REGISTERED, 2026-08-05. No monthly price/volume panel has been pulled at the time this file is committed — only series existence, reporter coverage, and magnitude checks (metadata, not results). Per project principle, this hypothesis will not be edited after results are computed; if a check finds nothing notable, that is recorded as the result, not adjusted.

Purpose and framing — read this before the method

This is explicitly not a trading domain, unlike A–D. No output of this domain will ever claim to prove fraud, mislabeling, or circumvention. The purpose is narrower and different: build a reproducible, ongoing monitor of publicly-derived trade patterns in a sector (EU imports of "waste"-classified fats/oils and biodiesel from Asia) that has already drawn real regulatory and investigative scrutiny, using the same quantitative techniques that scrutiny has used — price-benchmark comparison, volume-plausibility comparison, mirror-statistic reconciliation, and disclosure-transparency mapping — and to say plainly, every time, what the data does and does not show. A flagged pattern is a prompt for a human to look further, never a conclusion.

Because this is a monitor, not a one-off backtest, it will be wired into the existing daily harvester (src/harvest/) after this initial pass, so the same pre-declared method re-applies to new data as it arrives — future monthly updates are not new hypotheses, they are the same method run again.

Data sources (confirmed present as of 2026-08-05)

"Waste"/residue proxy — FactIQ eu_comext_<iso2> schemas: CN8 1518 00 95 — "Inedible mixtures or preparations of animal fats and oils and their fractions, whether or not containing vegetable or microbial fats or oils." This is the specific line real-world reporting on suspected mislabeled UCO/palm-residue imports has used. Value (_eur) and quantity (_kg) both available.

Biodiesel — same schemas: CN8 3826 00 10 (pure FAME, ≥96.5% ester content) and 3826 00 90 (biodiesel mixtures, <70% petroleum content). Value and quantity both available.

Virgin-oil benchmark — same schemas, from Indonesia: CN8 1511 10 10 (crude palm oil, technical/industrial use — the closer comparator, since "waste" material is itself non-food-grade) and 1511 10 90 (crude palm oil, standard/food-adjacent grade — secondary comparator). Confirmed present for the Netherlands, 2002–2025/2026, value and quantity both available.

Reporters — confirmed via direct coverage check (COUNT/AVG/date range on each reporter's own data_points), not assumed:

Reporter CN8 15180095 from China Verdict
Spain (es) 129 obs, 2011-09 → 2026-05 Core reporter — strongest coverage
Belgium (be) 55 obs, 2018-08 → 2026-03 Core reporter
Netherlands (nl) 20+ obs confirmed 2023–2024, real data Core reporter
Italy (it) 28 obs, 2008-10 → 2026-05 Core reporter
Germany (de) 16 obs, avg €21,875/month Checked, found immaterial — real series exist (52 partner series total, not anonymized like Domain B's gas finding), but average trade value is negligible next to the four core reporters (millions/month). Included in the disclosure map, excluded from the core price/volume analysis.
France (fr) 2 obs total (2012, 2024) Checked, found unusable — too sparse for any trend statement. Included in the disclosure map only.
Ireland (ie) 5 obs, avg €15,034/month; from India: 1 obs, €50 Checked (2026-08-05 addendum, before any monthly panel pulled), found immaterial — despite Ireland's real-world public profile in biofuel/UCO policy debates, its declared CN8 15180095 trade from China is negligible and from India essentially nil. China Customs has no dedicated export series to Ireland at all for HS 15180000 (no partner match found), consistent with genuinely minimal flow rather than a suppressed/anonymized one. Included in the disclosure map only.

Core reporter set for H1–H3: ES, BE, NL, IT. DE, FR, and IE are carried into H4 (the disclosure map) only, with their thinness stated as the finding, not hidden.

Partners: China (cn) primary; India (in) secondary, checked but not yet quantified. Indonesia and Malaysia have no FactIQ trade schema of their own (Phase 0 finding, still true) and cannot be observed directly as EU-side partners — but China's own customs data discloses partner country by name for this exact HS code, including Indonesia, on both its import and export sides, which is the closest available window onto that leg of the chain.

Mirror-statistic data — FactIQ china_customs schema: China's HS8 15180000 export series are partner-disaggregated. Confirmed exact series IDs exist for exports to Spain, Netherlands, Belgium, Italy, Germany, France, Poland, and Lithuania (value in USD, plus a _qty companion in kg), e.g. china_customs_X_8d_15180000_312 = China's exports to Spain.

H1 — Price-convergence signal

Method: for each core reporter, compute implied unit price (value ÷ quantity, €/kg) monthly for (a) CN8 1518 00 95 from China and (b) CN8 1511 10 10 from Indonesia (the technical-grade virgin benchmark, same reporter). Compute the ratio waste_price / virgin_price each month.

Pre-declared monitoring threshold (not a classical falsification criterion, since this is a monitor, not a backtest — but declared now, in writing, before any monthly value is pulled, for the same no-p-hacking reason): genuine waste/residue material is expected to trade at a real discount to virgin oil. A ratio above 0.70, sustained for 3 or more consecutive months, is flagged as notable in this monitor — worth a human's attention, not proof of anything. This threshold is informed by publicly documented historical UCO-to-virgin-oil discount ranges (typically 20–40% below virgin vegetable oil); it is a round, conservative number chosen in advance, not fitted to this data.

H2 — Volume-plausibility signal

Method: for each core reporter, compute the year-over-year growth rate of CN8 1518 00 95 import value from China, and separately the year-over-year growth rate of CN8 1511 10 10/90 (virgin palm oil) and CN8 3826 00 10/90 (biodiesel) import value from the same or comparable partners, over the same window. Flag: any period where the "waste" category's growth rate exceeds every one of these comparators by a wide margin — no fixed numeric threshold is pre-declared here, since there is no independently verified "plausible waste generation" series in FactIQ to calibrate one against; this leg is reported as a relative comparison chart, not a pass/fail test, and that limitation is stated here in advance rather than papered over with a fabricated threshold.

H3 — Mirror-statistic reconciliation

Method: identical to Domain B's approach. For each core reporter, compare China's declared export value/quantity (china_customs_X_8d_15180000_<partner>) against that reporter's declared import value/quantity (eu_comext_M_<reporter>_cn_te_p1_cn8_15180095_<eur|kg>) for the same nominal flow, month by month where both sides report. Relative difference = |export − import| / max(export, import). Domain B found this method fails to reconcile for gas (69.7% average gap) — this domain re-runs the same test on a structurally different commodity (bulk liquid moved by tanker, not a piped grid commodity), with no assumption about whether it will reconcile better or worse.

H4 — Disclosure/anonymization map

Method: repeat Domain B's anonymization-discovery method (scan the dimensions table for every partner code attached to the relevant import series) across a broader reporter set: the 4 core reporters plus DE, FR (already found thin, checked for anonymization status regardless), and PL, LT, PT, RO, DK, SE, AT — for both CN8 1518 00 95 and 3826 00 10/90. Output is a standing table: which reporters disclose real partner data for this trade, which anonymize, refreshed on every harvest. A reporter that changes status between harvests is itself the notable event.

Antithesis — required counter-checks before any pattern is called notable

Caveats (known before results; will be restated in the results writeup)

Ask about the data covers every domain on the site

Password required.