Our explanation of Reg. (EU) 2023/1115. The official EUR-Lex publication is the authoritative text; we link to it inline.
The EU Deforestation Regulation. Reg. (EU) 2023/1115, often called "EUDR". Says that seven commodities (cattle, cocoa, coffee, oil palm, rubber, soya, wood) and many products derived from them can only enter or leave the EU market if the seller can prove three things: the goods were produced on land that has not been deforested since 31 December 2020, were produced in line with the laws of the country of production, and are covered by a signed Due Diligence Statement that includes the geolocation of every plot of land used.
That last document. The Due Diligence Statement, or DDS. Is what eudr.dev exists to help you produce.
The EU imports a large share of the world's deforestation-linked commodities. Coffee, cocoa, palm oil, beef, soy, wood, and rubber trace back to land that, in many cases, was forest within living memory. The Regulation makes that link the seller's problem: if you want to put any of these into the EU market, you owe the regulator proof that your specific plot of land was not deforested after the 2020-12-31 cut-off.
The legal basis is Art. 192(1) TFEU (environment). The instrument is a Regulation rather than a Directive, which means it applies directly in every Member State on the same date, with the same text, without national transposition.
The Regulation distinguishes three actor types. Reg. (EU) 2025/2650 substantially simplified the downstream duties. What follows is the post-amendment picture.
duty-bearer under Art. 4: files the DDS, runs due diligence (Arts. 8 to 11), keeps records 5 years (Art. 12(5)).
they reuse the upstream operator's DDS reference number and comply by tracking it. Limited registration + notification obligations remain.
traders also no longer file a DDS; their duty is to collect and retain the upstream operator's DDS reference number. SME traders have an even lighter regime. They just keep traceability records of who they bought from and who they sold to.
SME operators (still required to file a DDS) can re-use an existing DDS from an upstream party under Art. 4(8)/(9) and benefit from the "simplified due diligence" path of Art. 13 when their goods are sourced exclusively from low-risk countries.
Annex I of the Regulation lists the commodities and the customs codes (HS prefixes) that bring them in scope. The full list runs to several hundred specific codes, but the seven families are:
| Commodity | HS family (illustrative) |
|---|---|
| Cattle | 0102, 0201, 0202, 0206, 0210 |
| Cocoa | 1801–1806 |
| Coffee | 0901 |
| Oil palm | 1511, 1513, 2306 |
| Rubber | 4001, 4005, 4006, 4011, 4012 |
| Soya | 1201, 1208, 1507, 2304 |
| Wood | Chapter 44 (most), 47, 48, 9401, 9403, 9406 |
The engine returns the canonical mapping at /v1/reference/commodities.
For each shipment the operator must answer "yes" to all three:
The plot of land from which the commodity comes must not have been deforested on or after 31 December 2020. "Deforestation" means human-induced conversion of forest to non-forest land use, whether the land was forest on the cut-off date is a question of fact. Satellite-based products like Hansen Global Forest Change and ESA WorldCover are the practical instruments most operators use to answer it.
The production must comply with the relevant legislation of the country of production. Land-use rights, environmental protection, forest-related rules, third-party rights, labour, human rights, tax, anti-corruption, trade, and customs. The Regulation does not adjudicate those laws; it just requires the operator to confirm compliance with them.
Every plot must be identified by a GeoJSON polygon, except:
Coordinates use WGS84 (EPSG:4326). At least six decimal places of precision is the form expected by Commission guidance and accepted by TRACES NT v2; this is operator guidance rather than a statutory wording from the regulation itself.
These three tests together produce the DDS.
The Regulation specifies the contents of the Due Diligence Statement in Annex II. The mandatory fields are:
Art. 3 (the three tests above).
eudr.dev generates the JSON shape that an EU IS (TRACES NT v2) submission expects, signs it under the engine's ed25519 key with a CIDv1 content anchor, and returns it. The operator still has to submit it to TRACES under their own EU Login.
The Commission publishes a country benchmark classifying every country (and sometimes sub-region) as high-risk, standard, or low-risk for deforestation. The list is at:
The classification matters because operators sourcing from low-risk countries can use the simplified due diligence of Art. 13. They still file a DDS but skip the risk-assessment + mitigation steps of Arts. 10 and 11. High-risk sourcing triggers the full Art. 10/11 obligations.
The engine returns the current table at /v1/reference/countries.
The Regulation's cut-off is 31 December 2020. I.e. Land that was forest on that date and was converted to non-forest land use after that date is the disqualifying class. Deforestation that took place before 2020-12-31 is in scope of older regulations (notably the Timber Regulation 995/2010 for wood) but is not disqualifying under EUDR.
Concretely:
Regulation's concern (but the land must still be currently usable for the declared commodity).
Hansen detection threshold.
The engine's signed receipts always include the Hansen loss year verbatim per cell
If you are a medium or large operator, 2026-12-30 is the date the obligation becomes enforceable for you.
eudr.dev produces vs. What it does notWhat the engine produces:
negligible, non_negligible, or indeterminate.What the engine does not do:
The operator submits via their own EU Login.
is a tool to help the operator's own due-diligence judgement, not a regulator-issued attestation.
Tenure, permits, FPIC (Free, Prior and Informed Consent), and labour-rights checks are out of scope of the baseline module; partner providers plug in via the LegalityProvider trait.
(default 7 days). You hold the regulatory record under Art. 12.
This page is our explanation. The official text is authoritative.