Data sources
Everything on the map comes from public datasets: EPA records for regulated facilities, and OpenStreetMap for scrap yards, recycling centers and data centers. Nothing here is original reporting, and nothing is a measurement of what a facility is actually emitting. These are regulatory records about which programs a facility is enrolled in and how it has fared under inspection.
What's loaded right now
| Source | Records | Mappable | Data as of | Last ingest |
|---|---|---|---|---|
| Loading… | ||||
Records counts raw rows per source, so a facility present in both ECHO and FRS is counted twice here. The map collapses those into one point. Mappable is the subset that has usable coordinates.
The sources
EPA Facility Registry Service (FRS)
FRS is the EPA's master index of regulated sites. Its job is to assign every facility a
single registry_id and record which EPA programs that facility appears in.
It is the spine that lets the other datasets be joined together, but it carries almost no
detail of its own. Knowing a site is "in RCRA" tells you it handles hazardous waste,
not how much or how well.
EPA ECHO (Enforcement and Compliance History Online)
ECHO is where the substance is. For each facility it records current compliance status, and counts of inspections, enforcement actions and penalties over the last five years. It also carries the permit-type fields that drive the subcategories on the map: whether a hazardous waste site is a large or small quantity generator, whether an air permit is for a major or minor source, and so on.
OpenStreetMap
Scrap yards and recycling centers come from OpenStreetMap: features tagged
industrial=scrap_yard, and those tagged amenity=recycling with
recycling_type=centre. That second rule leaves out street-side bottle banks
and collection bins, which OpenStreetMap tags the same way. These are
community-contributed rather than regulatory, so coverage is uneven: dense in populated
areas, sparse elsewhere. A missing scrap yard means nobody has mapped it, not that it
does not exist.
Data centers
The EPA has no data center program, so this category is assembled from two places.
OpenStreetMap supplies sites tagged telecom=data_center or
building=data_center. EPA records are added when the facility's industry
code is 518210 (data processing and hosting) or its registered name says it is a data
center. Those usually appear in EPA data because their backup diesel generators need air
permits, or because construction needs a stormwater permit, so some are sites still
being built.
Expect gaps, and some sites shown twice: smaller facilities are often missing from both sources, and a site known to both appears as two nearby points until the records can be matched.
How to read it
Presence on this map is not an accusation. Most facilities shown are ordinary businesses complying with the rules that apply to them. A dentist's office can appear as a hazardous waste generator because it disposes of small amounts of amalgam. The categories describe regulatory status, not wrongdoing.
A few specific caveats worth knowing:
- Locations are approximate. The EPA picks the best coordinate it has for each facility, but that is often geocoded from a mailing address, or is the center of a ZIP code or town, rather than a survey of the site itself. Treat a point as the rough vicinity of a facility rather than its exact footprint.
- Enforcement history covers five years. ECHO's inspection, enforcement and penalty figures only look back five years, so older problems don't appear here. A large penalty total may also come from a single action rather than an ongoing problem.
- Absence of a violation is not a clean bill of health. It frequently means the facility has not been inspected recently. Inspection coverage varies enormously by program and by state.
- Subcategories only exist where ECHO has permit data. A facility known only to FRS shows under its parent category with no subcategory, which is why some counts do not add up to their parent.
Getting the data yourself
All of it is freely downloadable, and if you want to do your own analysis you should go to the primary sources rather than scrape this site: