ICAO Methodology v13.1 · August 2024

Aviation CO₂ emissions, computed the way regulators do.

A REST API that estimates per-passenger flight carbon emissions. It serves ground-truth values from an ICAO reference dataset where available, and falls back to a calibrated distance regression everywhere else — consistent with ICAO and IATA methodologies.

What it does

One POST gives you emissions, the offset in trees, and the cost to offset.

Reference-grade results

Exact and reverse lookups against an ICAO emissions reference table for covered routes and cabin classes.

Graceful fallback

Routes outside the dataset use a piecewise log-linear regression segmented by distance band and aircraft category (~15.5% MAPE).

Cabin-aware

Economy, premium economy, business, and first are weighted by ICAO Yseat factors (1.00 → 7.97).

Offset built in

Every result includes trees required and offset cost, using EPA's 21 kg CO₂/tree/year over a 40-year lifespan.

The calculation pipeline

Every POST /calculate runs this priority chain.

  1. Exact reference lookup — query the ICAO reference table for (origin, destination, cabin_class). ~0% error.
  2. Reverse reference lookup — swap origin and destination against the same table. ~0% error.
  3. Regression fallbackCO₂ = exp(b) × distance_corrected_kma, segmented by distance band × aircraft category. ~15.5% MAPE.

Try the API

Compute and history endpoints may require an X-API-Key header. Use the interactive Swagger UI to send authenticated requests.

Request

POST /api/v1/carbon-calculator/calculate
Content-Type: application/json
X-API-Key: <your-key>

{
  "origin": "JFK",
  "destination": "LHR",
  "cabin_class": "economy"
}

Response

201 Created

{
  "origin": "JFK",
  "destination": "LHR",
  "cabin_class": "economy",
  "distance_km": 5554.0,
  "co2_kg_per_passenger": 302.4,
  "trees_required": 1,
  "offset_amount": 10.0,
  "emissions_on_icao": { ... }
}

Key constants

From ICAO Methodology v13.1 and EPA offset figures.

ConstantValue
CO₂ conversion factor3.16 kg CO₂ / kg fuel
Yseat — Economy / Premium / Business / First1.00 / 1.52 / 5.20 / 7.97
CO₂ absorbed per tree21 kg / year (EPA)
Tree lifespan · cost40 years · $10