EPA Contaminated Site Screener — Superfund/NPL Proximity Check
Pricing
from $5.50 / 1,000 results
EPA Contaminated Site Screener — Superfund/NPL Proximity Check
Multi-database Phase I ESA regulatory-records screen. Screen a US address or coordinate for nearby EPA sites across Superfund/NPL, RCRA, TRI, UST, LUST, Brownfields, plus optional ASTM E1527-21 search-distance verdicts. Keyless EPA Envirofacts + ECHO + ArcGIS + Census geocoder.
Pricing
from $5.50 / 1,000 results
Rating
0.0
(0)
Developer
Kyle Maloney
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
14 hours ago
Last modified
Categories
Share
EPA Contaminated Site Screener — Phase I ESA Multi-Database Records Search
Screens a US address or coordinate against six EPA regulatory databases for nearby contaminated and regulated sites — the multi-database records search that sits at the core of a Phase I Environmental Site Assessment (ASTM E1527). Built for Phase I consultants, CRE buyers and lenders, environmental attorneys, and underwriters who need to triage a property or a portfolio before ordering the full report. Optional astmMode adds an ASTM E1527-21 standard search-distance verdict per database. No API key.
Programs covered
Each nearby site becomes one row, tagged with its program:
program | EPA database | Source |
|---|---|---|
SUPERFUND | NPL / Superfund (SEMS) | EPA Envirofacts data.epa.gov/efservice/ENVIROFACTS_SITE |
RCRA | Hazardous-waste handlers / corrective action | EPA ECHO |
TRI | Toxic Release Inventory reporters | EPA ECHO |
UST | Underground storage tank facilities | EPA UST Finder (ArcGIS) |
LUST | Leaking underground storage tank releases | EPA UST Finder (ArcGIS) |
BROWNFIELD | Brownfields / ACRES | EPA FRS (ArcGIS) |
Addresses are geocoded with the free US Census geocoder. Per-program fetch failures warn and continue, so one database being down never fails the run — you get the hits from the programs that answered.
Two modes
assets mode (default) — screen your properties. For each asset, the actor queries every selected program within your radius and returns one row per nearby site, carrying program, list, site_name, distance_miles, status, and an on_npl flag. An asset with no hits still returns one clear row; a bad input returns one error row. Each asset item is either { "address": "...", "label": "..." } or { "lat": <n>, "lon": <n>, "state": "<2-letter>", "label": "..." }. The state field is required with lat/lon because Superfund/SEMS is fetched per state. Leave programs empty to screen all six; maxHitsPerProgram (default 50) caps the nearest hits kept per program per asset. Set astmMode: true to add one extra ASTM E1527-21 search-distance summary row per asset (see below); it's off by default so existing integrations see no change.
{"mode": "assets","assets": [{ "lat": 39.8037, "lon": -104.9986, "state": "CO", "label": "Denver warehouse" },{ "address": "5980 Lipan St, Denver, CO 80221", "label": "Denver warehouse (by address)" }],"radiusMiles": 1,"programs": ["SUPERFUND", "RCRA", "TRI", "UST", "LUST", "BROWNFIELD"],"maxHitsPerProgram": 50,"astmMode": true}
inventory mode — list the raw EPA SEMS/Superfund site roster for the states you name (Superfund only; the other five programs don't apply here).
{ "mode": "inventory", "states": ["CO", "NJ"], "onlyNpl": true }
Key output fields (assets mode)
result_type—listing(a hit),clear(screened, nothing within radius), orerror.program,list— the EPA program and its readable database name.site_name,site_address,site_city,site_state,site_zip— the listed site;site_id,registry_idits identifiers.distance_miles— great-circle distance from the asset to the site.status,status_detail— program-specific (NPL status, open/closed UST counts, LUST substance/date, brownfield type).on_npl— true only for an active NPL/Superfund hit, the highest-concern signal.phase1_flag— true on any listing row.asset_*,radius_miles,checked_at,error,disclaimer,source_url.
NPL/Superfund proximity rollup (per asset)
Classic Phase I ESA metrics, one set of values repeated on every row for that asset (same pattern as asset_label/asset_lat):
nearest_npl_site_name,nearest_npl_distance_miles,nearest_npl_status— the closest NPL-lifecycle SEMS site (Final NPL, part-of-listed-site, Proposed, Deleted, or Removed-from-proposed) to the asset. Computed against the asset's entire state SEMS inventory (already fetched for the SUPERFUND program — no extra API calls), so it's not bounded byradiusMiles: a Phase I report conventionally states the nearest NPL site and its distance even when that distance exceeds the search radius. Null when the state has no coordinate-mapped NPL-lifecycle site, or whenSUPERFUNDisn't inprograms.npl_sites_within_radius— count of coordinate-mapped NPL-lifecycle sites actually withinradiusMiles.phase1_esa_flag— per-asset rollup: true when the asset has any program hit within radius OR any NPL-lifecycle site within radius. Check any one row for this asset to know if it needs a closer look.phase1_summary— one-line plain-English rollup, e.g.1 EPA-listed site(s) within 1 mi (SUPERFUND); 1 NPL-track site(s) within 1 mi; nearest NPL-track site: "BRODERICK WOOD PRODUCTS" 0.05 mi (Final NPL).
Caveat: only ~10–15% of SEMS/Superfund records nationwide carry coordinates, so nearest_npl_* and npl_sites_within_radius can only rank/count the coordinate-mapped subset — an un-geocoded NPL site in the same county won't surface here.
ASTM E1527-21 search distances (astmMode, assets mode)
Built for Phase I ESA consultants who need a quick pre-check against the ASTM E1527-21 "Standard Environmental Record Sources & Search Distances" table (Sec. 8.2.1) before ordering (or while scoping) the formal records review. Set astmMode: true and the actor emits one extra row per asset, after its normal listing/clear rows, with row_type: "astm_summary":
{"mode": "assets","assets": [{ "lat": 39.8037, "lon": -104.9986, "state": "CO", "label": "Denver warehouse" }],"radiusMiles": 1,"astmMode": true}
The summary row carries:
row_type—"astm_summary"(null on every other row type).astm_effective_radius_miles— the radius actually fetched for the summary:max(radiusMiles, 1.0), since ASTM's widest standard search distance (NPL) is 1 mile. This only widens what's fetched for the summary — your normal hit/clear rows still respectradiusMilesexactly as before.astm_databases— an object keyed by database, one entry per program you screened (this actor's programs mapped to the ASTM table below), each withrequired_radius_mi,hits_within_required_radius,nearest_distance_mi, andastm_flag.astm_overall_verdict—"REC potential — hits within ASTM search distances"if any database has a hit inside its required radius, else"No mapped hits within ASTM search distances".astm_disclaimer— the standard advisory (see FAQ below).
The mapping used (this actor's programs -> ASTM E1527-21 Sec. 8.2.1 search distances):
ASTM database (astm_databases key) | Required search radius | This actor's program |
|---|---|---|
| NPL (Superfund, Final) | 1.0 mi | SUPERFUND (on_npl = true) |
| Delisted NPL / SEMS-CERCLIS (non-NPL) | 0.5 mi | SUPERFUND (on_npl = false) |
| RCRA CORRACTS/TSD & LQG/SQG generators | 1.0 mi (conservative) | RCRA |
| LUST | 0.5 mi | LUST |
| UST (registered) | 0.25 mi | UST |
| Brownfields / institutional controls | 0.5 mi | BROWNFIELD |
TRI is not one of ASTM's standard regulatory record sources, so it never gets an astm_databases entry even if you screen it. RCRA's ASTM table actually has two line items (CORRACTS/TSD facilities at 1.0 mi vs. LQG/SQG generators at 0.25 mi) — EPA ECHO's RCRAFlag doesn't expose which one applies to a given facility, so this actor conservatively uses the wider 1.0 mi radius for every RCRA hit rather than guess.
Inventory-mode rows use a separate field set (epa_id, npl_status_code/npl_status_name, is_superfund, federal_facility, archived, lat/lon, etc.).
Caveats worth knowing
- This is a screening aid, not a Phase I ESA. It does not replace a licensed environmental professional's records search — use it to triage, then order the real report on flagged properties.
- Coverage and geocoding vary by program. Roughly 85–90% of SEMS/Superfund records nationwide have no coordinates (old archived/NFRAP sites) and can't be distance-screened, so a
clearresult means "no geocoded listing within radius," not a guarantee of no history. Use inventory mode withonlyWithCoords: falseto see the full raw SEMS roster. distance_milesis measured to a database point (often a parcel centroid or address match), not a property boundary, so treat it as approximate.nearest_npl_*is the closest coordinate-mapped NPL-lifecycle SEMS site state-wide, not capped byradiusMiles— that's intentional (matches how a Phase I report states the nearest NPL site even beyond the search radius), but it means a very "far" nearest-NPL distance in a low-density state is normal, not a bug.
Pair it with state tank & spill registries
Federal EPA data is only half a Phase I records search. The companion State UST, LUST & Spill Registry Screener screens the same coordinates against state-level registries — NY DEC Spills and California GeoTracker cleanup cases (LUST, military UST, land disposal) — with case status, contaminant, and an open-case flag. Run both on a portfolio for federal + state coverage in one pass.
Use as an MCP tool
A Pay-Per-Result API discoverable to AI agents through mcp.apify.com. Hand an agent an address or a list of properties and it gets back structured multi-program environmental-risk hits, with no scraping or manual EPA lookups.
FAQ
Which databases does it search? Superfund/NPL, RCRA, TRI, UST, LUST, and Brownfields/ACRES — pick a subset via programs or leave it empty for all six.
Does this replace a Phase I ESA? No. It is a pre-screen; order a licensed Phase I ESA for anything flagged.
Can I screen a whole portfolio at once? Yes — pass as many items as you want in assets; each site hit is one row.
What are the ASTM E1527 search distances? ASTM E1527-21 (Sec. 8.2.1) sets a standard minimum radius per regulatory database that a Phase I ESA records review must cover — e.g. 1.0 mile for NPL/Superfund, 0.5 mile for LUST, 0.25 mile for UST. Set astmMode: true to get a per-asset summary row scoring this actor's databases against those distances.
Does this satisfy an ASTM E1527 records review? No. astmMode is a screening aid that approximates the standard's search-distance table against this actor's six EPA databases — it is not an ASTM E1527-21 Phase I Environmental Site Assessment and does not by itself satisfy the standard's records-review requirement. Order a licensed Phase I ESA from an Environmental Professional for anything flagged.
How is billing calculated? One dataset row per site hit (assets mode, including the optional astm_summary row when astmMode is on) or per SEMS site (inventory mode).