EnvironmentVerified by Kopik: Official sources reviewed and answers tested by Kopik

CBAM 50-tonne threshold: when small importers are exempt

Since the 2025 Omnibus simplification, importers whose yearly CBAM imports stay under a single mass-based threshold are exempt from CBAM obligations. This page explains how the threshold is counted and what changes once it is crossed.

Ask your question

Free account required

Each question stands alone Β· 1 free a month, then with a subscription.

Answers are written by a language model solely from this base's documents, with numbered sources. They can be wrong and aren't legal, medical or financial advice: check the sources before any important decision.

How the single mass-based threshold is counted

The amending Regulation (EU) 2025/2083 sets the single mass-based threshold at 50 tonnes of net mass. An importer whose imports of CBAM goods do not cumulatively exceed it in a calendar year is exempt from the obligations of the Regulation.

The threshold applies to the total net mass of goods under all CN codes, aggregated per importer and per calendar year. An exempt importer must declare the exemption in the relevant customs declaration.

The exemption does not apply to imports of electricity or hydrogen.

Crossing the threshold during the year

If an importer exceeds the threshold within a calendar year, all obligations apply to the emissions embedded in all goods imported that year, not only to the tonnes above 50.

An importer who expects to exceed the threshold must apply for authorised CBAM declarant status. An authorised declarant that exceeds the threshold must hold the required quarterly level of certificates by the end of the quarter following the one in which the threshold was crossed.

An importer who is not authorised and exceeds the threshold faces a penalty of three to five times the standard excess emissions penalty per certificate not surrendered, calculated on all emissions embedded in that year's imports. The competent authority may reduce it where the threshold was exceeded by no more than 10 %, but not below the standard penalty.

Monitoring by the authorities

The Commission monitors imports to check compliance with the threshold and shares with national competent authorities, through the CBAM registry, a list of importers exceeding 90 % of it.

Where an authority concludes that a non-authorised importer has exceeded the threshold, it adopts a reasoned decision, informs the importer of its obligations, including obtaining authorisation before importing further goods, and notifies customs and the Commission.

Frequently asked questions

Can the 50-tonne threshold change?

Yes. By 30 April each year, the Commission checks whether the threshold keeps the exemption to no more than 1 % of the emissions embedded in imports. If the recalculated value differs from the current threshold by more than 15 tonnes, it is amended by delegated act, applying from 1 January of the following year.

What if I bought certificates expecting to exceed the threshold, and I did not?

An authorised declarant that purchased CBAM certificates in a year on the expectation of exceeding the threshold, and then did not exceed it, can have all those certificates repurchased on request.

Do goods below the threshold appear in the CBAM declaration of an authorised declarant?

Yes. The CBAM declaration reports the total quantity of each type of goods imported in the preceding year, including imported goods below the single mass-based threshold.

For developers and agents

Embed / API / MCP

Connect this base to Claude, Cursor, ChatGPT or your own app. Each API or MCP request costs €0.10, charged to your Kopik credit (not charged if nothing is found). You need an API key: create one from your dashboard.

MCP for your agents

This base's MCP server URL (tools ask_base and search_base):

MCP URL
https://kopik.io/api/mcp?base=eu-cbam-carbon-border
Claude Code, Cursor and other clients
Claude Code
claude mcp add --transport http kopik-eu-cbam-carbon-border "https://kopik.io/api/mcp?base=eu-cbam-carbon-border" --header "Authorization: Bearer kpk_…"
JSON config (mcpServers)
{
  "mcpServers": {
    "kopik-eu-cbam-carbon-border": {
      "url": "https://kopik.io/api/mcp?base=eu-cbam-carbon-border",
      "headers": {
        "Authorization": "Bearer kpk_…"
      }
    }
  }
}

REST API for your apps

mode is "answer" (written answer + sources) or "passages" (raw passages only). Add an optional maxPriceCents to cap the price: if the base costs more, the call is refused and nothing is charged.

curl
curl -X POST https://kopik.io/api/v1/bases/eu-cbam-carbon-border/query \
  -H "Authorization: Bearer kpk_…" \
  -H "Content-Type: application/json" \
  -d '{"question": "Your question here", "mode": "answer"}'

Getting started

  1. Create a key in your dashboard and top up your credit.
  2. Replace kpk_… with your key.
  3. Full details (responses, errors, JS and Python examples): developer docs.