EPA ECHO Facility Compliance & Enforcement Scraper
Pricing
from $1.75 / 1,000 results
EPA ECHO Facility Compliance & Enforcement Scraper
Scrape US EPA ECHO facility data: compliance status (air, water, hazardous waste), violations, inspections, penalties ($), major-polluter flag, %minority, coordinates and program IDs. For ESG, due diligence and compliance research. Not affiliated with the EPA.
Pricing
from $1.75 / 1,000 results
Rating
0.0
(0)
Developer
Haketa
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Search and extract US EPA environmental-compliance data for any facility: compliance status (air, water, hazardous waste, drinking water), violations, inspections, formal actions, penalties ($), major-polluter flag, environmental-justice %minority, coordinates and program IDs. Search by company name and/or location (state, city, ZIP, NAICS/SIC). Clean JSON/CSV/Excel in seconds — built for ESG, due diligence, risk and compliance research.
What This Actor Does
This Actor searches the US EPA's Enforcement & Compliance History Online (ECHO) database and returns rich, structured records for regulated facilities. For each facility it captures:
- Identity & location — facility name, full address, county, EPA region, coordinates, FRS Registry ID
- Industry — SIC and NAICS codes
- Compliance status — overall plus per-statute: air (Clean Air Act), water (Clean Water Act), hazardous waste (RCRA) and drinking water (SDWA)
- Violations — significant non-complier flag, quarters in non-compliance, 3-year compliance history
- Enforcement — inspection count and last inspection date, formal action count and date
- Penalties — total penalties (USD), penalty count, last penalty date and amount
- Risk & ESG — major-polluter flag, surrounding % minority (environmental-justice indicator)
- Program IDs — air, water (NPDES), hazardous waste (RCRA), toxics (TRI) and greenhouse-gas (GHG) identifiers
- Detailed report — a direct link to the facility's full ECHO report
Why Use This
- See who is in violation. Filter to facilities with current violations or significant non-compliance — the exact list a risk, ESG or compliance team needs.
- Quantify enforcement. Penalties in dollars, inspection counts and formal actions — hard numbers, not prose.
- Screen supply chains & counterparties. Check any company's US facilities for environmental risk before you onboard, invest or lend.
- Official & free. Reads EPA's own public database — no key, no anti-bot, no browser.
Quick Start
Run it in the console (no code)
- Add a facility name (e.g.
exxon mobil) and/or a location filter (state, city, ZIP, NAICS/SIC). - Optionally tick Only facilities with violations or Only major facilities.
- Set Max facilities, click Start, and export as JSON, CSV, Excel or HTML.
Find environmental violators in a state (Python)
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run_input = {"states": ["TX", "CA"],"onlyWithViolations": True,"maxItems": 1000,}run = client.actor("YOUR_USERNAME/epa-echo-scraper").call(run_input=run_input)for f in client.dataset(run["defaultDatasetId"]).iterate_items():print(f["name"], "·", f["complianceStatus"], "·", f["totalPenaltiesUsd"], "USD")
Screen one company's facilities (Python)
run = client.actor("YOUR_USERNAME/epa-echo-scraper").call(run_input={"searchTerms": ["exxon mobil"], "states": ["TX"], "maxItems": 500,})for f in client.dataset(run["defaultDatasetId"]).iterate_items():if f.get("significantViolator") or (f.get("totalPenaltiesUsd") or 0) > 0:print(f["name"], f["city"], "→", f["totalPenaltiesUsd"], "USD", f["detailedReportUrl"])
Input Parameters
| Field | Type | Description |
|---|---|---|
searchTerms | array | Facility/company name keywords. Combined with the location filters. |
states | array | Two-letter US state codes (e.g. TX, CA). |
cities | array | City names (optional). |
zipCodes | array | ZIP codes (optional). |
naicsCodes | array | NAICS industry codes (optional). |
sicCodes | array | SIC industry codes (optional). |
onlyMajor | boolean | Only facilities flagged as major. |
onlyWithViolations | boolean | Only facilities with a current violation / significant non-compliance / recent NC quarters. |
maxItems | integer | Max facilities across all searches. 0 = no limit. |
proxyConfiguration | object | Apify Proxy. Datacenter is enough (public API). |
Provide at least one criterion — a facility name and/or a location filter.
Output
Each facility is one record:
{"registryId": "110000599273","name": "BAYTOWN OLEFINS PLANT","street": "5000 BAYWAY DR", "city": "BAYTOWN", "state": "TX", "zip": "77520","county": "HARRIS", "epaRegion": "06","latitude": 29.74, "longitude": -95.01,"naicsCodes": ["325110"], "sicCodes": ["2869"],"majorFacility": true,"complianceStatus": "Significant Violation","airComplianceStatus": "Significant Violation","waterComplianceStatus": "No Violation Identified","significantViolator": true,"quartersInNonCompliance": 4,"inspectionCount": 12, "lastInspectionDate": "09/18/2025","formalActionCount": 2,"totalPenaltiesUsd": 2204913, "penaltyCount": 3, "lastPenaltyAmountUsd": 1500000,"percentMinority": 62.4,"airIds": ["TX0001"], "toxicsReleaseIds": ["77520XXNPL"],"detailedReportUrl": "https://echo.epa.gov/detailed-facility-report?fid=110000599273"}
About coverage: identity, address and coordinates are present for essentially every facility. Compliance status, penalties and program IDs are populated by EPA for regulated/assessed facilities (industrial and major sites) — small retail sites (e.g. some gas stations) legitimately have little or no compliance history. Use onlyWithViolations or onlyMajor to focus on facilities with rich enforcement data.
Use Cases
1. ESG & sustainability screening
Score companies and portfolios on environmental compliance, violations and penalties across their US facilities.
2. Due diligence & risk
Check a target, supplier or counterparty for environmental violations and enforcement history before onboarding, investing or lending.
3. Compliance & legal research
Build lists of significant non-compliers, penalty actions and inspection histories by state, industry or region.
4. Journalism & research
Map polluters, penalties and environmental-justice indicators (% minority) by geography and sector.
Tips
onlyWithViolationsis the fastest way to a list of active environmental violators.totalPenaltiesUsdandpenaltyCountquantify enforcement in dollars.significantViolatorflags the EPA's "significant non-complier" designation.naicsCodes/sicCodeslet you focus on an industry (e.g. refineries, chemicals, power).detailedReportUrllinks straight to the full ECHO report for any facility.- Schedule it with Apify Schedules to monitor a state or company over time.
Frequently Asked Questions
Do I need an account or key? No. The ECHO database is public and free — no login, key or anti-bot.
What is a Registry ID? It is the facility's EPA FRS (Facility Registry Service) identifier — a stable ID used to join across EPA program systems.
Why do some facilities have empty compliance fields?
EPA populates compliance, penalty and program data for regulated and assessed facilities. Smaller sites with no regulated activity legitimately have little history. Filter with onlyWithViolations or onlyMajor for the data-rich subset.
Which environmental programs are covered? Clean Air Act (air), Clean Water Act (water/NPDES), RCRA (hazardous waste), SDWA (drinking water), plus TRI (toxics) and GHG identifiers.
What export formats are supported? JSON, CSV, Excel, HTML, or via API — plus Google Sheets, webhooks, Make and Zapier.
Legal & Responsible Use
This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by the US Environmental Protection Agency (EPA). All trademarks are the property of their respective owners. It reads only public compliance records. Use the data responsibly and in line with applicable terms and laws.