iz · about
What this is. And what it isn't.
iz is a one-person effort to produce a public, source-cited per-facility emissions
benchmark for Turkish CBAM-scope industry. The deliverable is the bench, the formula,
and the disclosure crawl. The neural network is a working reference implementation,
not the product.
Ahmet Barış Günaydın ·
hi@barisgunaydin.com ·
barisgunaydin.com ·
github.com/abgnydn/iz
01 The formula in one line
tCO₂ = capacity × route-EF × capacity-factor
Capacity is operator-published nameplate (industry registries, KAP filings).
Route-EF depends on what kind of plant it actually is — not just the CBAM
category. Steel splits into BF/BOF (2.0 t/t), EAF (0.25), DRI-EAF (0.4). Aluminum splits
into primary (8.6) vs downstream rolling (0.45) — a 19× spread the EU lumps together.
Fertilizer splits into integrated (0.5), N₂O-controlled (0.05), blender (0.025) — a 20×
spread driven by whether the plant has an N₂O catalyst on its nitric acid line.
Capacity-factor is operator-disclosed production ÷ capacity (non-leaky in
LODO because production tonnage is reported independently of Scope 1), with fallback to
sector mean for facilities lacking disclosure.
02 Evaluation methodology
Leave-one-disclosure-out (LODO). For each of the 20 audit-grade facilities,
we force it into the test set, retrain the bench, and predict its Scope 1 from features
alone. Aggregate per-plant log-MAE across the 20 holdouts is the headline metric. We run
5 outer LODO passes × 3 inner seeds = 15 seeds per facility, report mean ± 2σ across the
5 outer runs (≈95% CI).
Why log-MAE not cost-savings. A cost-savings metric (EU default − iz) /
EU default rewards under-prediction. Log-MAE against audited truth penalizes both over-
and under-prediction. We report log-MAE throughout to align vendor incentives with
measurement quality.
Non-leaky cf. Operator integrated reports publish Scope 1 emissions on
one page and production tonnes on a separate page. The capacity factor is derived from
production ÷ capacity, not from emissions. When a facility is held out, its production
tonnage remains available — the held-out emissions don't leak through.
03 What's different from other players
| Player | Approach | Limitation |
| EU CBAM default | capacity × one industry-average EF | Off by 2-10× on most plants; deliberately punitive to push operators to MRV |
| Climate TRACE | Global per-asset bottom-up emissions inventory | Under-reports TR BF/BOF steel by 20-30% (misses captive coal power) |
| Persefoni / CarbonChain / Sweep | Ingest operator-typed data, dashboard it | Trust the operator; garbage in, garbage out |
| GHGSat / Carbon Mapper | Satellite plume detection | Methane-focused; CO₂ plumes hard to see; no CBAM tie-in |
| iz | Hand-curated bench + closed-form formula, cited PDFs | 20 facilities is small; needs operator partnerships to scale to 200+ |
04 What's open, what's commercial
Open under Apache-2.0: the bench (CSV + JSON + source-cited disclosures),
the formula, the LODO evaluation harness, the browser-native trainer, the paper preview.
Source code at github.com/abgnydn/iz.
Commercial: per-facility audit reports for operators (€5-10k/facility),
bulk subscriptions for EU-accredited CBAM verifiers (DNV / TÜV Süd / Bureau Veritas / SGS),
and methodology consulting. We do not seek CBAM verifier accreditation ourselves; we make
accredited verifiers' jobs faster.
05 Honest limitations
- n=20 is small. Single-instance disclosure-route strata (BAGFAŞ N₂O-controlled, Gübretaş blender) have no in-stratum LODO training counterpart. Our ±0.3% CI is seed variance, not data variance; we have no resampling-based estimate of how the headline would shift with a different 20-facility test set.
- "Audit-grade" is three tiers, not one. 4 facilities are ISO 14064-1 third-party verified (Habaş, Batısöke, Nuh, BAGFAŞ N₂O measurement); 6 are TSRS-compliant with limited assurance from a KGK-registered firm (Assan, ASAŞ, Toros, Gübretaş, Afyon, Göltaş, newer Akçansa); 10 are operator IARs Big4-audited overall but without GHG-specific verification (Erdemir, İsdemir, Kardemir, Çolakoğlu, OYAK group, Limak group, older Çimsa). The bench browser shows the tier per row; the headline number does not weight by tier.
- 6 of 20 strong labels are allocated, not directly disclosed. Akçansa per-plant Scope 1 is split from the group total by disclosed clinker share. Toros Mersin/Samsun/Ceyhan are split from the 842k group total by nameplate capacity — Mersin (NH₃+urea) is likely more process-heavy than the capacity-share allocation reflects. We mark these "allocated" provenance and flag them in the bench notes.
- Capacity values in
tr_facilities.csv are unaudited. Two corrections we made mid-development: Akçansa Çanakkale 4.5M → 6M (then back to 5.5M cement per 2025 IAR), Erdemir Ereğli 6M → 4M crude steel. Other facilities may have similar nameplate errors we haven't audited.
- Habaş 636,377 is the EAF main line, not the full Aliağa site. The plate mill (193,961 tCO₂ 2024) is a separate Scope 1 stream. If treating Habaş Aliağa as a single CBAM entity, add the two together; this is flagged in the bench browser notes.
- BAGFAŞ 9,828 is a partial-cap year. 2024 cf = 0.29, well below typical fertilizer operation. An average year would push Scope 1 ~3× higher and our prediction ratio would change accordingly.
- Erdemir 2024 IAR restated 2023 from 6.56M → 5.95M. We use the restatement. This raises a real question about the stability of any single year's audit-grade Scope 1 disclosure.
- LODO is not cold prediction. When we hold out Erdemir Ereğli, the other 2 BF/BOF mills are still in training. If a new BF/BOF mill came online, the model has no in-stratum training data — the realistic deployment scenario is harder than LODO suggests.
- BF/BOF stratum is structurally hard. TR has only 3 BF/BOF integrated mills (Erdemir, İsdemir, Kardemir) and the EU CBAM default 1.9 t/t happens to be within ±15% of TR audited reality on these mills. The stratum CI on n=3 is −7.3% ± 71.0% — crosses zero. Our value is concentrated in cement / EAF / aluminum / fertilizer, not BF/BOF.
- The "85.9% beats EU default" claim is log-MAE reduction. Not error reduction, not "85.9% of facilities right." It's a log-domain accuracy measure. A naïve reader could misinterpret; we report it because it's the right metric, but want to be explicit about what it means.
- The 39 cf-corrected facilities are formula-predicted by construction. The 85.9% headline applies only to the 20 truth-labeled LODO rows. The other 39 rows in the bench have iz-1 labels assigned from the same formula being evaluated — they cannot validate it.
- Climate TRACE under-reporting claim is from n=3 BF/BOF mills. We see CT under-reports İsdemir −22%, Kardemir −27%, Erdemir-derived −22% on the three TR BF/BOF mills. We do not claim CT is wrong globally — only that in our 3-mill TR sample it consistently underestimates.
- No satellite signal in v0. The Sentinel-5P NO₂ pipeline runs but didn't make it into the model. We dropped the "Earth-observation foundation model" framing from earlier drafts — it isn't one.
- Zero pilot customers. The €5-10k pilot price is unvalidated against real operator willingness to pay. The verifier-partnership tier is hypothetical — we have not spoken to DNV / TÜV / BV / SGS yet.
- The model and the formula are tied. The 2-layer NN reaches +84.5% ± 0.3% vs the formula's 85.9% on n=20. The actionable shipped baseline is the formula. The NN exists as a reference implementation and a placeholder for future signal extraction (satellite features, multi-year LODO).
Contact
Operator pilots · CBAM verifier partnerships · methodology questions · paper citations.
hi@barisgunaydin.com