Biogenic carbon, land use and the CO2e basis

Numbers checked against the live data on

A CO2e figure can count different carbon. Some publishers count only fossil carbon. Others add the CO2 released or stored by plants and wood (biogenic carbon), and the carbon lost or gained when land changes use. co2e_basis records which of these a factor's headline value counts, and the gas legs, where the publisher gives them, show the parts. Two factors on different bases are not comparable, however close their numbers look.

Fossil and biogenic carbon#

  • Fossil carbon was locked underground for millions of years. Burning coal, oil or gas adds it to the atmosphere for good.
  • Biogenic carbon was taken from the air by a plant within its lifetime. Burning wood or a biofuel returns it; growing the next crop can take it back. Many reporting frameworks therefore report biogenic CO2 separately from the fossil total.
  • Land use and land-use change (LULUC) is the carbon released when forest or grassland is cleared for production, or stored when land is restored.
  • Removals are carbon taken out of the atmosphere and stored, reported as negative amounts.

Methane is different: biogenic methane, from cattle or rice for example, has a far stronger warming effect than CO2, so it is usually counted in the total even where biogenic CO2 is not.

The four bases#

co2e_basis What the headline value counts
fossil_only Fossil emissions. Biogenic CO2 and land use are left out.
biogenic_excluded Fossil CO2 and the other greenhouse gases, without biogenic CO2.
net_total Every pool, biogenic carbon and land use included, net of removals.
io_total An input-output model's total for a whole sector's supply chain.

Watch out. fossil_only and biogenic_excluded both leave biogenic CO2 out of the headline, and the libraries do not yet draw the line between them the same way. U.S. EPA, for example, tags fossil totals that include methane and nitrous oxide as fossil_only. Treat the two as one family when you compare, and read the gas legs for the detail.

Factor search can show co2e_basis as a column beside the value, so you can see the basis of every factor in a result list.

The gas legs#

Beside its headline value, a factor can carry the parts it is made of. The ones that matter for carbon origin:

Column What it holds
value_co2_native CO2, when the publisher does not split it by origin
value_co2_fossil_native Fossil CO2, or the fossil part of the total
value_co2_biogenic_native Biogenic CO2, or the biogenic part of the total. Can be negative: carbon stored in the product.
value_ch4_biogenic_native Methane of biogenic origin
value_co2_luluc_native Land use and land-use change. Can be negative.
value_removals_native Removals, negative by convention

Each leg has a _normalized twin, like the headline. See GWP values.

An empty leg means the publisher did not report that part. It never means zero. A 0.0 is a zero the publisher printed. A leg can be reported beside a headline that does not count it: on a fossil_only or biogenic_excluded factor, the biogenic leg is information, not a part of the total.

Note. A headline value of zero beside a positive biogenic leg is not served. It is a zero only because of the basis, and served on its own it would zero every line it matched.

Worked examples#

A food product on a net total#

AGRIBALYSE publishes the climate footprint of a food split by carbon origin. Almond cake, per kg at the consumer, is net_total:

Part Leg kg CO2e per kg
Fossil value_co2_fossil_native 2.89
Biogenic value_co2_biogenic_native 1.29
Land use value_co2_luluc_native 0.285
Headline value_co2e_native 4.47

The three parts add up to the headline, to the publisher's rounding. Each part is itself a CO2e amount covering several gases, which is why AGRIBALYSE values cannot be converted to AR6: see GWP values.

A construction product on fossil carbon#

ÖKOBAUDAT serves the fossil climate indicator of an EPD as the headline, and keeps the other indicators as legs. For the product ALT 100, per unit, the headline is 1250.991 kg CO2e on fossil_only. The biogenic leg is -1.027: carbon stored in the product. The land-use leg is 1.901. Neither is inside the headline.

A biomass fuel#

DESNZ gives wood pellets burned in the UK 0.05725 kg CO2e per kg, on biogenic_excluded. That is the methane and nitrous oxide from combustion only. DESNZ reports the biogenic CO2 of burning biomass separately, "outside of scopes", and that table is not imported: see What is not imported.

By library#

Default top-level factors, by basis:

Library co2e_basis Legs by carbon origin
ADEME fossil_only (2,573), net_total (194) Fossil and biogenic CO2 and biogenic methane on 483 factors
AGRIBALYSE net_total (2,451) Fossil, biogenic and land use on every factor
AIB fossil_only (34) Fossil CO2 on every factor
DESNZ biogenic_excluded (1,132) None by origin; per-gas legs on 236 factors
U.S. EPA fossil_only (150), net_total (210) Biogenic CO2 on 27 factors
EXIOBASE io_total (8,064) None
MITECO biogenic_excluded (561), fossil_only (169) None
ÖKOBAUDAT fossil_only (4,181), net_total (8) Fossil, biogenic and land use on most factors
Open CEDA io_total (59,538) None
USEEIO io_total (392) None

ADEME's net_total factors are its land-use and forestry categories. ÖKOBAUDAT falls back to a net total only where an EPD gives no fossil figure. No public library fills value_removals_native: stored carbon appears as a negative biogenic or land-use leg instead.

What to do#

  • Comparing two factors: check co2e_basis first. A net_total food factor and a fossil_only one differ by design.
  • Adding across libraries: keep to one basis family, or rebuild the basis you need from the legs where every factor in the sum carries them.
  • Reporting biogenic CO2 separately: take it from value_co2_biogenic_native, and treat an empty leg as not reported.