---
title: "Freight Emissions Calculator"
method: GET
path: "/api/emissions"
tags: ["Calculators"]
---

# Freight Emissions Calculator

`GET /api/emissions`

## Request

- Base URL: `https://www.freightutils.com`
- URL: `https://www.freightutils.com/api/emissions`
- Auth: none declared

Estimate freight GHG emissions (kgCO2e) by the ISO 14083 / GLEC distance method (mass x distance x a published factor). Provide ACTUAL GROSS MASS (see mass_basis), not chargeable weight. Returns well-to-wheel + tank-to-wheel and a _source. Unknown mode/region -> available:false.

## Query parameters

- `mass` number, required
- `mass_unit` 'kg' | 'tonnes'
- `distance_km` number, required
- `mode` 'road' | 'rail' | 'sea' | 'air' | 'inland_waterway', required
- `sub_mode` string
- `region` 'uk' | 'us' | 'fr'
- `basis` 'wtw' | 'ttw'

## Response `200`

Computed emissions (available:true) or a not-available response (available:false) listing covered options.

- EmissionsResponse: Freight emissions result. available:true carries inputs/tonne_km/factor/emissions/_source; available:false carries message/available_for. methodology + disclaimer are always present.
  - `available` boolean, required
  - `methodology` string, required
  - `disclaimer` string, required
  - `inputs` object
    - `mass` number
    - `mass_unit` string
    - `mass_tonnes` number
    - `distance_km` number
    - `mode` string
    - `sub_mode` string
    - `region` string
    - `basis` string
  - `tonne_km` number
  - `factor` object
    - `id` string
    - `mode` string
    - `sub_mode` string
    - `authority` string
    - `edition` string
    - `region` string
    - `unit` string
    - `wtw` number, nullable
    - `ttw` number, nullable
  - `emissions` object
    - `wtw_kgco2e` number, nullable
    - `ttw_kgco2e` number, nullable
    - `primary_kgco2e` number
    - `basis_used` string
  - `summary` string: Primary human-readable one-line result — carries the empty-running + actual-gross-mass notes and, for sea/air, a high-variance warning.
  - `mass_basis` string: Mass basis the factor expects: always "actual_gross_mass" — not chargeable/volumetric weight.
  - `empty_running` string: "sector_average_included" (fleet-average empty running already in the factor — do not add your own empty-return leg) or "see_source".
  - `representativeness` string: "low" for sea/air (high real-world variance by vessel/aircraft type, load, routing); "medium" for road/rail/inland.
  - `confidence` string: Human-readable confidence label for representativeness.
  - `_source` object: Citability envelope: ISO method + the exact open factor used.
    - `type` string
    - `standard` string
    - `reference` string
    - `source_url` string
    - `computed_by` string
    - `factor` object
      - `authority` string
      - `edition` string
      - `value` number
      - `unit` string
      - `basis` string
      - `last_verified` string: Date the factor was last verified against its cited source (YYYY-MM-DD).
      - `source_url` string
      - `licence` string
  - `message` string
  - `available_for` object
    - `modes` string[]
    - `regions_for_mode` string[]
    - `sub_modes` object[]
      - `region` string
      - `id` string
      - `sub_mode` string

## Other responses

- `400`: Validation error (missing/invalid parameter).

---

[API](https://skmtc.dev/freightutils/apis/freightutils-api.md) · [All operations](https://skmtc.dev/freightutils/apis/freightutils-api/llms.txt) · [OpenAPI document](https://skmtc.dev/freightutils/apis/freightutils-api/revisions/6607bb3cea90?raw)
