The EU Emissions Trading System register (EU Transaction Log) as one table: power plants, factories, aircraft operators and shipping companies, with operator, LEI, activity, permit and address, plus verified emissions, free allocation and surrendered allowances for every year since 2005. In Delta mode you only receive what changes.
Quick answer: The roughly 23,500 installations and operators in the EU Emissions Trading System (EU Transaction Log) in one table: operator, LEI, activity, permit and verified emissions, free allocation and surrendered allowances for every year since 2005, with a Delta mode that returns only openings, closures and newly verified emissions. Run it with the Rastriq public actor on Apify; the sample of real rows downloads without signing up.
The European Commission publishes the EU Transaction Log every day split across several files, with one row per installation per year on a fixed 2005-2030 grid.
One row per installation. The actor joins the files, keeps only the years with data and computes the latest-year figures: verified emissions, previous year, % change, free allocation, surrendered allowances and their gap, the lifetime total and the full yearly history.
Source calendar. Verified emissions for year N are reported by 31 March of N+1 and allowances are surrendered by 30 September, so the latest-year figures can move during that period.
| Type | What it is |
|---|---|
| stationary_installation | Stationary installation: power plants, cement, steel, refineries, chemicals… |
| aircraft_operator | Aircraft operator |
| maritime_operator | Shipping company |
| ets2_regulated_entity | ETS2 fuel supplier |
Installation types in the actor filter. Activity also comes with its EUTL code (20 combustion, 24 steel, 29 cement clinker…).
What the source does not keep. The Commission publishes the picture of the day, not a log of openings, closures or newly verified emissions. The actor does: in Delta mode every run compares the complete file with the previous one and returns only what is new (new), what changed (changed, with changed_fields and the old values in previous_values) and what disappeared (removed).
Filters never fool the history. The actor always reads the whole source; filters only decide which rows you receive. So a removal is never missed or invented because of a filter, and runs where the source has not changed finish in seconds and only charge the start fee.
Five use cases: who uses them, what you do and which fields you need.
verified_emissions_latest, free_allocation_latest, surrender_gap_latest, activity_typeoperator_lei to add up a listed group's emissions and follow its trend since 2005 with the yearly history.Result: emissions per group and historical trend.operator_lei, operator_name, verified_emissions_total, historyinstallation_name, activity_code, city, verified_emissions_latestpermit_id, activity_type, verified_emissions_latest, latest_emissions_yearchange_type, changed_fields, previous_values, statusReal rows from existing runs. The sample downloads without signing up.
| installation_name | activity_type | city | verified_emissions_latest | emissions_change_pct |
|---|---|---|---|---|
| ARCELORMITTAL ESPAÑA, S.A. | Production of pig iron or steel | Avilés y Gijón (Asturias) | 4,673,784 | -2.24 |
| Aboño Generaciones Eléctricas, S.L.U. | Combustion of fuels | Aboño (Asturias) | 2,642,623 | -33.84 |
| Repsol Petróleo S.A. | Refining of mineral oil | Cartagena (Murcia) | 2,370,702 | -6.01 |
| Repsol Petróleo S.A. - Instalación de… | Refining of mineral oil | La Pobla de Mafumet… | 2,080,917 | -3.68 |
| Petróleos del Norte S.A. | Refining of mineral oil | Muskiz (Vizcaya) | 1,956,497 | -7.53 |
| Unión Eléctr. de Canarias Generación-CT… | Combustion of fuels | Granadilla de Abona (Santa… | 1,941,603 | 2.22 |
| Unión Eléct.Canarias Generac.-CT Barranco… | Combustion of fuels | San Bartolomé de Tirajana… | 1,660,505 | 2.08 |
| C.T. Velilla del Río Carrión, Grupo 2 | Combustion of fuels | Velilla del Río Carrión… | 1,533,383 | -14.66 |
Real rows from a run on 24 October 2026: stationary installations in Spain sorted by latest verified emissions (tCO2e).
| registry_code | installation_type | installation_name | change_type |
|---|---|---|---|
| IS | maritime_operator | Anglo-Eastern Cruise Management Inc. | baseline |
| IS | maritime_operator | Compass Shipping 37 Corporation Limited | baseline |
| IS | stationary_installation | Geymslusvæði Carbfix hf. á Hellisheiði | baseline |
| LI | stationary_installation | Hilcona AG | baseline |
First Delta run (baseline) on 12 October 2026 for Iceland and Liechtenstein: 57 rows, 37 aircraft operators, 12 stationary installations and 8 shipping companies.
No personal data. Some account holders are individuals (private aircraft or small farms). When the operator name is not recognisably an organisation, the name, registration number and street address are set to null and the row is flagged; the figures stay.
Paste the input into the actor's JSON tab and press Start. Countries use the registry code (ES, DE, PL…).
| Task | Input (JSON) | What it is for |
|---|---|---|
| Installations in Spain | {"mode": "snapshot", "countries": ["ES"], "installationTypes": ["stationary_installation"], "maxItems": 100} | The sample run. |
| Cement plants in Germany and Poland | {"mode": "snapshot", "countries": ["DE", "PL"], "activityCodes": ["29"], "includeHistory": false} | Example from the actor README. |
| Weekly alerts for a country | {"mode": "delta", "countries": ["ES"], "minVerifiedEmissions": 0} | First run as baseline, then only changes. |
| Full register | {"mode": "snapshot", "maxItems": 0} | About 23,500 installations with yearly history. |
Rows are sorted by latest verified emissions, highest first.
| Mode | What it returns | When to use it |
|---|---|---|
| snapshot | The full list with your filters | One-off extract |
| delta | 1st run: baseline. Then: new, changed and removed | Scheduled: alerts and history |
One row per installation.
| Field | Description |
|---|---|
installation_key | Stable registry-installation key |
registry_code · installation_name · permit_id · eprtr_id | Registry country, name, permit and E-PRTR ID |
installation_type · activity_code · activity_type | EUTL type and activity |
status | active or closed (permit revoked or final emissions year) |
operator_name · operator_lei · operator_company_registration_number | Account holder, normalised LEI and company number |
latest_emissions_year · verified_emissions_latest · verified_emissions_previous_year · emissions_change_pct | Latest verified year, previous year and change (tCO2e) |
free_allocation_latest · surrendered_latest · surrender_gap_latest | Free allocation, surrendered allowances and gap |
verified_emissions_total · history | Lifetime total and one entry per year with data |
change_type · changed_fields · previous_values | baseline / new / changed / removed |
quality_flags | operator_redacted_possible_person, operator_no_legal_form, no_operator, missing_address, invalid_lei |
Run it yourself, receive it on a schedule or commission the project.
From the European Commission's public daily EU Transaction Log (Union Registry) extracts. Each row carries the extract date in source_updated_at.
In Delta, weekly or daily is plenty: the source refreshes daily and verified emissions are reported once a year, in spring.
Because the installation has no verified emissions on record: it is new, closed long ago or an ETS2 entity before its first reporting year.
Yes: the history field has one entry per year. Export as JSON or flatten it in your tool.
No. Holders that look like people lose name, registration number and street address, and the row is flagged. The free-text account label is never output.
No. Neither transactions nor holdings, nor the linked Swiss registry columns.
Tell us countries, activities or groups and we will send an extract in the schema you would receive.