Method: flights.computeDetailedFlightEmissions

Retrieves detailed emission estimates.

Detailed Flight Emissions are transparent per-passenger greenhouse gas emission estimates supplemented by comprehensive metadata detailing the calculation methodology, emissions breakdown, contrail impact, and data provenance.

Details on how emission estimates are computed are in GitHub.

The response will contain all entries that match the input flight legs, in the same order. If there are no estimates available for a certain flight leg, the response will return the flight leg object with empty emission fields. The request will still be considered successful. Reasons for missing emission estimates include:

  • The flight is unknown to the server.
  • The input flight leg is missing one or more identifiers.
  • The flight date is in the past.
  • The aircraft type is not supported by the model.
  • Missing seat configuration.

The request can contain up to 100 flight legs. If the request has more than 100 flight legs, it will fail with an INVALID_ARGUMENT error.

HTTP request

POST https://travelimpactmodel.googleapis.com/v1/flights:computeDetailedFlightEmissions

The URL uses gRPC Transcoding syntax.

Request body

The request body contains data with the following structure:

JSON representation
{
  "flights": [
    {
      object (Flight)
    }
  ]
}
Fields
flights[]

object (Flight)

Required. Direct flights to return emission estimates for.

Response body

Output definition for the flights.computeDetailedFlightEmissions response.

If successful, the response body contains data with the following structure:

JSON representation
{
  "flightsWithDetailedEmissions": [
    {
      object (FlightWithDetailedEmissions)
    }
  ],
  "modelVersion": {
    object (ModelVersion)
  }
}
Fields
flightsWithDetailedEmissions[]

object (FlightWithDetailedEmissions)

List of flight legs with emission estimates.

modelVersion

object (ModelVersion)

The model version under which emission estimates for all flights in this response were computed.

FlightWithDetailedEmissions

Direct flight with emission estimates details.

JSON representation
{
  "flight": {
    object (Flight)
  },
  "flightEmissionsDetails": {
    object (FlightEmissionsDetails)
  },
  "emissionsMetadata": {
    object (EmissionsMetadata)
  }
}
Fields
flight

object (Flight)

Output only. Matches the flight identifiers in the request. Note: all IATA codes are capitalized.

flightEmissionsDetails

object (FlightEmissionsDetails)

Output only. All the flight emissions data.

emissionsMetadata

object (EmissionsMetadata)

Output only. Additional metadata about the flight emissions calculation.

FlightEmissionsDetails

Details about the specific flight's emissions.

JSON representation
{
  "emissionsGramsPerPax": {
    object (EmissionsGramsPerPax)
  },
  "emissionsBreakdown": {
    object (EmissionsBreakdown)
  },
  "contrailsImpactBucket": enum (ContrailsImpactBucket),
  "source": enum (Source)
}
Fields
emissionsGramsPerPax

object (EmissionsGramsPerPax)

Output only. Per-passenger emission estimate numbers. Will not be present if emissions could not be computed. For the list of reasons why emissions could not be computed, see flights.computeDetailedFlightEmissions

emissionsBreakdown

object (EmissionsBreakdown)

Output only. Details about the various emissions portions of the total emissionsGramsPerPax value. The value of the summed breakdowns should always equal emissionsGramsPerPax.

contrailsImpactBucket

enum (ContrailsImpactBucket)

Output only. The significance of contrails warming impact compared to the total CO2e emissions impact.

source

enum (Source)

Output only. The source of the emissions data.

EmissionsBreakdown

Details about the various emissions portions of the total emissionsGramsPerPax value. The value of the summed breakdowns should always equal emissionsGramsPerPax.

JSON representation
{
  "wttEmissionsGramsPerPax": {
    object (EmissionsGramsPerPax)
  },
  "ttwEmissionsGramsPerPax": {
    object (EmissionsGramsPerPax)
  }
}
Fields
wttEmissionsGramsPerPax

object (EmissionsGramsPerPax)

Per-passenger well-to-tank emission estimate numbers. Will not be present if emissions could not be computed. For the list of reasons why emissions could not be computed, see flights.computeFlightEmissions.

ttwEmissionsGramsPerPax

object (EmissionsGramsPerPax)

Per-passenger tank-to-wake emission estimate numbers. Will not be present if emissions could not be computed. For the list of reasons why emissions could not be computed, see flights.computeFlightEmissions.

EmissionsMetadata

All additional metadata.

JSON representation
{
  "emissionsProvenance": {
    object (EmissionsProvenance)
  },
  "easaLabelMetadata": {
    object (EasaLabelMetadata)
  },
  "timWebsiteEmissionsCalculatorUrl": string
}
Fields
emissionsProvenance

object (EmissionsProvenance)

Output only. Details about the provenance of data used to calculate the emissions data, including the contributing factors with their data sources.

easaLabelMetadata

object (EasaLabelMetadata)

Output only. Metadata about the EASA Flight Emissions Label. Only set when the emissions data source is EASA.

timWebsiteEmissionsCalculatorUrl

string

Output only. Link to the travelimpactmodel.org Emissions Calculator website. Example: https://travelimpactmodel.org/lookup/flight?itinerary=ZRH-BOS-LX-52-20261225.

EmissionsProvenance

Information about the provenance of the data used to calculate emissions estimates, including contributing factors and their data sources.

JSON representation
{
  "provenanceEntries": [
    {
      object (EmissionsProvenance.EmissionsProvenanceEntry)
    }
  ]
}
Fields
provenanceEntries[]

object (EmissionsProvenance.EmissionsProvenanceEntry)

Output only. All contributing factors used to calculate emissions.

EmissionsProvenance.EmissionsProvenanceEntry

Details about a single contributing factor in emissions calculations.

JSON representation
{
  "provenanceEntryType": enum (EmissionsProvenance.EmissionsProvenanceEntry.EmissionsProvenanceEntryType),
  "source": enum (EmissionsProvenance.EmissionsProvenanceEntry.DataSource),
  "sourceVersion": string,
  "dataCategory": enum (EmissionsProvenance.EmissionsProvenanceEntry.DataCategory),

  // Union field data_strategy can be only one of the following:
  "fuelBurnEeaStrategy": enum (EmissionsProvenance.EmissionsProvenanceEntry.FuelBurnEea.Strategy),
  "loadFactorsT100Strategy": enum (EmissionsProvenance.EmissionsProvenanceEntry.LoadFactorsT100.Strategy),
  "loadFactorsChAviationStrategy": enum (EmissionsProvenance.EmissionsProvenanceEntry.LoadFactorsChAviation.Strategy),
  "cargoMassFractionT100Strategy": enum (EmissionsProvenance.EmissionsProvenanceEntry.CargoMassFractionT100.Strategy),
  "seatAreaRatioIataStrategy": enum (EmissionsProvenance.EmissionsProvenanceEntry.SeatAreaRatioIata.Strategy),
  "distanceAdjustmentStrategy": enum (EmissionsProvenance.EmissionsProvenanceEntry.DistanceAdjustment.Strategy)
  // End of list of possible types for union field data_strategy.

  // Union field data_value can be only one of the following:
  "loadFactorsData": number,
  "cargoMassFractionData": number,
  "seatAreaRatioData": {
    object (EmissionsProvenance.EmissionsProvenanceEntry.SeatAreaRatioData)
  },
  "estimatedFlightDistanceKm": integer
  // End of list of possible types for union field data_value.
}
Fields
provenanceEntryType

enum (EmissionsProvenance.EmissionsProvenanceEntry.EmissionsProvenanceEntryType)

Output only. The type of the provenance entry.

source

enum (EmissionsProvenance.EmissionsProvenanceEntry.DataSource)

Output only. The source of the data.

sourceVersion

string

Output only. The version of the source data. For example, "2025/04".

dataCategory

enum (EmissionsProvenance.EmissionsProvenanceEntry.DataCategory)

Output only. Data category of the data source.

Union field data_strategy. The strategy used to compute emissions for the given data source. The field set will correspond to the data_source type. data_strategy can be only one of the following:
fuelBurnEeaStrategy

enum (EmissionsProvenance.EmissionsProvenanceEntry.FuelBurnEea.Strategy)

Output only. Strategy for EEA fuel burn.

loadFactorsT100Strategy

enum (EmissionsProvenance.EmissionsProvenanceEntry.LoadFactorsT100.Strategy)

Output only. Strategy for T100 load factors.

loadFactorsChAviationStrategy

enum (EmissionsProvenance.EmissionsProvenanceEntry.LoadFactorsChAviation.Strategy)

Output only. Strategy for CH Aviation load factors.

cargoMassFractionT100Strategy

enum (EmissionsProvenance.EmissionsProvenanceEntry.CargoMassFractionT100.Strategy)

Output only. Strategy for T100 cargo mass fraction.

seatAreaRatioIataStrategy

enum (EmissionsProvenance.EmissionsProvenanceEntry.SeatAreaRatioIata.Strategy)

Output only. Strategy for IATA seat area ratios.

distanceAdjustmentStrategy

enum (EmissionsProvenance.EmissionsProvenanceEntry.DistanceAdjustment.Strategy)

Output only. Strategy for distance adjustment.

Union field data_value. The data value for the given data source. The field set will correspond to the provenance_entry_type. data_value can be only one of the following:
loadFactorsData

number

Output only. The load factors data value. If not set, the load factors value is not available.

cargoMassFractionData

number

Output only. The cargo mass fraction value. If not set, the cargo mass fraction value is not available.

seatAreaRatioData

object (EmissionsProvenance.EmissionsProvenanceEntry.SeatAreaRatioData)

Output only. The seat area ratio value for each seating class. If not set, the seat area ratio value is not available.

estimatedFlightDistanceKm

integer

Output only. The estimated distance flown in CCD flight phase in kilometers value calculated using the distance adjustment factor (DAF). If not set, the estimated flight distance value is not available.

EmissionsProvenance.EmissionsProvenanceEntry.EmissionsProvenanceEntryType

The type of the provenance entry. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.

Enums
EMISSIONS_PROVENANCE_ENTRY_TYPE_UNSPECIFIED Unspecified provenance entry type.
FUEL_BURN Fuel burn entry type.
LOAD_FACTORS Load factors entry type.
CARGO_MASS_FRACTION Cargo mass fraction entry type.
SEATING_CONFIG Seating configuration entry type.
SEAT_AREA_RATIOS Seat area ratios entry type.
DISTANCE_ADJUSTMENT Distance adjustment entry type.

EmissionsProvenance.EmissionsProvenanceEntry.DataSource

The source of data for emissions provenance factors. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.

Enums
DATA_SOURCE_UNSPECIFIED Data source unspecified.
EEA Data provided by the European Environment Agency (EEA).
T100 Data from the T-100 dataset, provided by the US Bureau of Transportation Statistics.
CH_AVIATION Data provided by ch-aviation.
OAG Data provided by the Official Aviation Guide (OAG).
OPERATING_CARRIER Data provided by the operating carrier.
AIRCRAFT_MODEL_TYPICAL Typical data based on the aircraft model.
GLOBAL_DEFAULT A global default value, used when no other data source is available.
IATA Data provided by the International Air Transport Association (IATA).
ICL Data provided by Imperial College London.

EmissionsProvenance.EmissionsProvenanceEntry.FuelBurnEea.Strategy

Strategy for EEA fuel burn. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.

Enums
STRATEGY_UNSPECIFIED Strategy unspecified.
AIRCRAFT_MAPPING_FALLBACK_WITH_CORRECTION_FACTOR A static correction factor was applied.
AIRCRAFT_MAPPING_EXACT Exact aircraft mapping was used.
AIRCRAFT_MAPPING_FALLBACK Fallback aircraft mapping was used.

EmissionsProvenance.EmissionsProvenanceEntry.LoadFactorsT100.Strategy

Strategy for T100 load factors. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.

Enums
STRATEGY_UNSPECIFIED Strategy unspecified.
CARRIER_ROUTE_MONTH Data by carrier, route, and month of travel.
CARRIER_MONTH Data by carrier and month of travel.
ACTUAL_CARRIER_ROUTE_YEAR_MONTH Historical data matching carrier, route, year, and month.

EmissionsProvenance.EmissionsProvenanceEntry.LoadFactorsChAviation.Strategy

Strategy for CH-Aviation load factors. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.

Enums
STRATEGY_UNSPECIFIED Strategy unspecified.
CARRIER_MONTH Data by carrier and month of travel.
ACTUAL_CARRIER_YEAR_MONTH Historical data matching carrier, year, and month.

EmissionsProvenance.EmissionsProvenanceEntry.CargoMassFractionT100.Strategy

Strategy for T100 cargo mass fraction. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.

Enums
STRATEGY_UNSPECIFIED Strategy unspecified.
CARRIER_ROUTE_AIRCRAFT_CLASS Data by carrier, route, and aircraft class.
ROUTE_AIRCRAFT_CLASS Data by route and aircraft class.
DISTANCE_AIRCRAFT_CLASS Data by distance band and aircraft class.
ACTUAL_CARRIER_ROUTE_YEAR_MONTH_AIRCRAFT_CLASS Historical data matching carrier, route, year, month, and aircraft class.

EmissionsProvenance.EmissionsProvenanceEntry.SeatAreaRatioIata.Strategy

Strategy for IATA seat area ratios. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.

Enums
STRATEGY_UNSPECIFIED Strategy unspecified.
NARROW_AIRCRAFT_BODY Seat area ratios for narrow body aircraft were used.
WIDE_AIRCRAFT_BODY Seat area ratios for wide body aircraft were used.

EmissionsProvenance.EmissionsProvenanceEntry.DistanceAdjustment.Strategy

Strategy for distance adjustment. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.

Enums
STRATEGY_UNSPECIFIED Strategy unspecified.
ORIGIN_DESTINATION Distance adjustment factor determined by origin and destination airport pair.
COUNTRY_PAIR Distance adjustment factor determined by origin and destination country pair.
DEFAULT The distance adjustment factor is based on the default value because we did not find an airport- or country-specific adjustment factor.

EmissionsProvenance.EmissionsProvenanceEntry.DataCategory

The data category of the data source. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.

Enums
DATA_CATEGORY_UNSPECIFIED Data category unspecified.
PRIMARY Primary data, as defined in ISO 14083.
MODELED Modeled data, as defined in ISO 14083.
DEFAULT Default value data, as defined in ISO 14083.