EEA Industrial Emissions & Facility Intelligence
Pricing
$7.50 / 1,000 successful unique emission records
EEA Industrial Emissions & Facility Intelligence
Official EEA E-PRTR facility releases in kg/year. Filter country, main sector, pollutant, year and quantity; separate air/water/land rows, exact facility IDs and reported parent companies. Verified v16 snapshot, 2007–2024. JSON/CSV for Clay and n8n.
Pricing
$7.50 / 1,000 successful unique emission records
Rating
0.0
(0)
Developer
AFK Digital
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Security
Limited permissionsShare
Get European E-PRTR facility pollutant releases, with official facility identifiers, reported parent-company names when available, main activity, country, city, year and release medium. Export JSON or CSV for Clay, n8n and other data workflows.
Verified data edition: EEA Industrial Reporting v16, published 20 February 2026, covering 2007–2024. This Actor uses an indexed, pinned snapshot of the official open Access download. It is not a live reporting-year-2026 feed. The EEA catalogue was checked on 30 October 2026; v16 was the newest available edition. A new edition requires a verified snapshot/build refresh.
What one result means
One result is one unique country + facility INSPIRE ID + reporting year + pollutant code + release medium record. AIR, WATER and LAND remain separate. Different pollutants, including CO2 and CO2 excluding biomass, remain separate. Quantities are the source's kg/year totals for that specific pollutant and medium. Accidental releases are already included in the total; this Actor does not add them again.
This product covers E-PRTR releases. It does not provide EU ETS verified emissions, allowances, carbon trading, or LCP installation-part emissions. Source reporting thresholds and incomplete country/year coverage apply. Missing records do not prove zero emissions, compliance, inactivity, or absence of a facility.
Inputs
| Input | Meaning |
|---|---|
| countryCode | Optional exact EEA country code, such as DE, FR, GR or GB. Blank includes all. |
| industrySector | Optional main E-PRTR sector code 1–9, or an exact sector name from the list below. |
| pollutant | Optional exact source pollutant code, or case-insensitive name substring. |
| reportingYear | Integer 2007–2024. Omitted means 2024. No fallback to an earlier year. |
| minReleaseKg | Minimum kg/year for an individual result; default 0. |
| maxResults | Integer 1–10,000; default 25. |
| releaseMedium | Optional AIR, WATER or LAND. Blank returns separate rows for all media. |
| maxChargeUsd | Additional record-event spending cap; default USD 1.00. Rounded down to whole records. |
Example:
{"countryCode": "DE","industrySector": "1","pollutant": "NOX","reportingYear": 2024,"minReleaseKg": 10000,"maxResults": 25,"maxChargeUsd": 1}
Supported country codes: AT, BE, BG, CH, CY, CZ, DE, DK, EE, ES, FI, FR, GB, GR, HR, HU, IE, IS, IT, LT, LU, LV, MT, NL, NO, PL, PT, RO, RS, SE, SI, SK.
Main sectors: 1 Energy sector; 2 Production and processing of metals; 3 Mineral industry; 4 Chemical industry; 5 Waste and wastewater management; 6 Paper and wood production and processing; 7 Intensive livestock production and aquaculture; 8 Animal and vegetable products from the food and beverage sector; 9 Other activities.
Output fields and identity rules
| Field | Official mapping / meaning |
|---|---|
| facility_inspire_id | 2f_PollutantRelease.Facility_INSPIRE_ID; exact facility identity, never site or installation ID. |
| facility_name | 2_ProductionFacility.nameOfFeature, exact facility dimension join. |
| parent_company_name | 2_ProductionFacility.parentCompanyName; blank, placeholder or confidential means null. Never inferred. |
| country_code | 0b_DataCollectionMetadata_EPRTR_LCP.countryCode via exact fileId; year and country consistency checked. |
| city | 2_ProductionFacility.city; withheld address means null. |
| main_activity_sector | E-PRTR sector 1–9 derived from the published mainActivityCode, with official sector labels. |
| pollutant_name / pollutant_code | 2f_PollutantRelease.pollutantName / pollutantCode. |
| total_release_kg | 2f_PollutantRelease.totalPollutantQuantityKg; annual kg, no pollutant/medium aggregation. |
| reporting_year | 2f_PollutantRelease.reportingYear, validated against its submission metadata. |
| release_medium | 2f_PollutantRelease.medium: AIR, WATER or LAND. |
| reporting_unit_type | production_facility. |
| source_url / source_data_url | Official edition DOI and download location. |
| fetched_at | Time this result was delivered from the snapshot, UTC. |
| source_fetched_at | Time the official source download completed, UTC. |
| administrative_reporting_year | Submission year associated with the official shared facility dimension. |
| annual_details_match | Whether exact facility ID + release year exists in 2a_ProductionFacilityDetails. |
Additional fields include record_key, main_activity_code, main_activity_sector_code, release_unit, administrative_join, source_table, source_version, source_published_at, license and attribution.
Administrative attributes are snapshot attributes, not annual ownership history. The source has one shared facility dimension per INSPIRE ID. Its submission year is disclosed separately; names and ownership are not presented as verified annual changes. Missing dimension joins leave administrative fields null. No fuzzy matching or site/installation substitution is performed.
Source-quality handling: the pinned snapshot contains 629,583 valid unique release records, including 3,319 LAND records. Six keys with contradictory source quantities are quarantined entirely. Eighty-one missing, invalid or confidential source rows are excluded. The run's SOURCE_MANIFEST and OUTPUT records disclose counts and edition details.
Pricing and limits
Pay per event: USD 0.0075 per successfully saved unique emission record (USD 7.50 per 1,000).
Event name: emission-record. One event is charged only after one valid, unique output record is saved to the default Dataset. No start fee. Duplicates, quarantined/confidential/invalid rows, empty searches and failed writes are not charged. Dedupe scope is one run, including its restarts; separate new runs are separate deliveries. Platform spending limits and maxChargeUsd apply together with maxResults. Standard-run platform usage is included in this event price.
The Actor queries its indexed snapshot with keyset pagination, caps output at 10,000 rows and stops its work after about 230 seconds (platform timeout 300 seconds). Restarted runs read existing Dataset keys before writing. Apify SDK handles storage/API retries and timeouts; the source acquisition tool separately uses bounded HTTP retries and validates the official source hash. No browser, login scraping, proxy or user API key is required.
JSON / CSV integration
Start the Actor using the Apify API or the n8n Apify node. After completion, read the default Dataset:
GET https://api.apify.com/v2/datasets/{DATASET_ID}/items?format=json&clean=trueGET https://api.apify.com/v2/datasets/{DATASET_ID}/items?format=csv&clean=true
Use your Apify connection or Authorization header where required. Poll the run until it finishes before importing CSV into Clay or mapping JSON records into n8n. Dataset GET supports offset and limit for downstream pagination. The Output tab links to JSON, CSV and the run summary.
Source, licence and attribution
Source: European Environment Agency (EEA), Industrial Reporting v16, published 20 February 2026.
Access: official catalogue-linked public download, Industrial_dataset_v_16_2026_02_16.accdb. Direct DiscoData access returned HTTP 403 from the build host, so this edition uses the official open file.
Data licence: Creative Commons Attribution 4.0 International. Copyright holder: European Environment Agency. Reuse, including commercial reuse, is permitted under its attribution terms. Retain credit, the licence link, the edition/source link and a notice of changes when redistributing.
Suggested attribution: “European Environment Agency (EEA), Industrial Reporting v16 (2026), CC BY 4.0. Filtered, field-normalised and indexed by AFK MESH; invalid/confidential and conflicting records excluded.” This Actor is independent of EEA and is not endorsed by it.
Data completeness varies by country and year. Historical E-PRTR identifiers include EEA's own historical mapping; the Actor preserves those official IDs. The source metadata describes country reporting gaps and hidden records. No suppressed information is reconstructed.
Reproducibility
Project version: 0.1.1. Python Apify SDK: 4.2.0. See data/manifest.json for raw-download and SQLite SHA-256 values, coverage and transformation counts. tools/fetch_source.py fetches only fixed official EEA resources, tools/prepare_snapshot.py prepares the dataset, and tests/ verifies semantics and delivery limits.