Primary mill residues (t/yr)
primary_mill_residues_tpy
Optional
Primary mill residues available within 50 miles, in metric tons per year.
EPA Brownfield-to-Solar Site Finder - RE-Powering Mapper
Pricing
from $5.50 / 1,000 re-powering candidate sites
Find EPA RE-Powering pre-screened contaminated land, landfills and abandoned mine sites with renewable-energy redevelopment potential. Filter 190,976 sites by state, technology, acreage, solar and wind resource and 2022 interconnection context, ranked as development candidates.
Pricing
from $5.50 / 1,000 re-powering candidate sites
Rating
0.0
(0)
Developer
Kyle Maloney
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
EPA cross-reference number
site_ref
Optional
EPA's RE-Powering cross-reference number (the Ref column). Stable identifier for the site inside the RE-Powering Mapper and the key used in the site profile URL.
Program site ID
site_id
Optional
The identifier assigned by the originating cleanup program, for example an EPA RCRA handler ID or a state program number. Not unique across programs.
Site name
site_name
Optional
Site name as published by EPA. Null when EPA published the single-space sentinel instead of a name, which happens on 1,675 sites (mostly state abandoned coal mine areas).
Site name not published
site_name_withheld_by_epa
Optional
True when EPA published no site name for this record. Distinguishes a genuinely unnamed site from a fetch problem.
Cleanup program (verbatim)
program
Optional
The originating cleanup program exactly as EPA publishes it. 49 distinct values, from short federal codes such as SUPERFUND and RCRA to full state program names.
Program category
program_category
Optional
Coarse category derived from the verbatim program name: abandoned_mine_land, brownfield, landfill, superfund, rcra_corrective_action, underground_storage_tank, institutional_control or state_cleanup_program.
Federal program
program_is_federal
Optional
True when the program is one of EPA's six federal programs, false when it is a state program. Null when no program was published.
EPA region
epa_region
Optional
EPA regional office number (1-10) covering the site.
ArcGIS OBJECTID
objectid
Optional
The ArcGIS feature OBJECTID for this row. Useful for reproducing a query; not stable across EPA republications.
State
state
Optional
Two-letter US state or territory postal code.
County
county
Optional
County name as published by EPA.
City
city
Optional
City name as published by EPA. Null on the 19,675 sites carrying the single-space sentinel.
Street address
address
Optional
Street address as published by EPA. Null on the 22,261 sites carrying the single-space sentinel.
ZIP code
zip_code
Optional
ZIP code as published by EPA. Null on the 61,533 sites carrying the single-space sentinel. EPA does not zero-pad, so New England ZIPs may be four digits.
Latitude (WGS84)
latitude
Optional
Site latitude in decimal degrees, read from EPA's Latitude column. Null when missing or when the value failed a coordinate-range check.
Longitude (WGS84)
longitude
Optional
Site longitude in decimal degrees, read from EPA's Longitude column. Verified to agree with an outSR=4326 geometry to nine decimal places.
Coordinate status
coordinate_status
Optional
ok, missing, null_island, or out_of_range_possible_projection_drift. A coordinate outside plus or minus 90/180 is rejected rather than published, because Web Mercator metres are in the millions.
Acreage (acres)
acreage_acres
Optional
Site acreage. NULL when EPA published 0, because 0 is a null sentinel on this layer meaning acreage is unknown (108,888 sites), not zero acres.
Acreage as published
acreage_raw_value
Optional
EPA's raw Acreage value before the null-sentinel rule is applied, so the 0 sentinel remains visible on the row.
Acreage is the null sentinel
acreage_is_null_sentinel
Optional
True when EPA published acreage 0, meaning acreage is unknown. On 108,886 of those 108,888 sites EPA also sets No Acreage PV, confirming it could not size an array because acreage was missing.
Acreage implausibly large
acreage_implausible
Optional
True when acreage exceeds the plausibility threshold. Some EPA acreage values are clearly not the site footprint, for example an urban Denver brownfield published at 43,000 acres. Flagged rather than dropped, because the intended figure is unknowable. Null when acreage is unknown.
Implausibility threshold (acres)
acreage_implausible_threshold_acres
Optional
The acreage above which this actor flags acreage as implausible. Published so the flag can be re-derived.
Known landfill
is_known_landfill
Optional
True when EPA flags the site as a known landfill (18,298 sites). False means EPA did not flag it, which is weaker than EPA determining it is not a landfill.
Landfill flag (verbatim)
known_landfill_raw
Optional
EPA's Landfill column verbatim: Y, or null where EPA published the single-space sentinel.
Abandoned mine land
is_abandoned_mine_land
Optional
True when EPA flags the site as known Abandoned Mine Land (17,756 sites).
AML flag (verbatim)
abandoned_mine_land_raw
Optional
EPA's AML column verbatim: Y, or null where EPA published the single-space sentinel.
Utility-scale PV screened
utility_scale_pv
Optional
True when EPA's screen flagged the site for utility-scale photovoltaics (17,649 sites). This is the meaningful solar discriminator; EPA's summary Solar column is Y on all 190,976 sites and carries no information.
Utility-scale PV (verbatim)
utility_scale_pv_raw
Optional
EPA's UtilPV column verbatim: Y, or null for the single-space sentinel.
Distributed-scale PV screened
distributed_scale_pv
Optional
True when EPA flagged the site for distributed-scale photovoltaics (64,268 sites).
Distributed-scale PV (verbatim)
distributed_scale_pv_raw
Optional
EPA's DistribPV column verbatim: Y, or null for the single-space sentinel.
Off-grid PV screened
offgrid_pv
Optional
True when EPA flagged the site for off-grid photovoltaics (82,090 sites).
Off-grid PV (verbatim)
offgrid_pv_raw
Optional
EPA's OffgridPV column verbatim: Y, or null for the single-space sentinel.
No acreage for PV sizing
no_acreage_pv
Optional
True when EPA recorded that it could not size a PV array because site acreage was unknown. Co-occurs with acreage_is_null_sentinel on 108,886 sites.
EPA estimated PV capacity (MW)
est_pv_capacity_mw
Optional
EPA's estimated PV capacity. Read the capped and usable flags before using it: it sits on a 600 MW plateau (362 sites read exactly 600 MW) but 600 is NOT a ceiling -- 16 sites exceed it, up to 11,788.08 MW, so never filter on est_pv_capacity_mw <= 600. Underneath the plateau the figure is a flat national multiple of acreage at roughly 0.1449 MW/acre, so it carries no site-specific engineering information.
PV capacity is at or above EPA's 600 MW plateau
est_pv_capacity_is_capped
Optional
True when EPA's estimate is at or above 600 MW. Measured live 2026-08-19: 362 sites read exactly 600 across an acreage range of 4,144 to 2,669,225 acres, and 16 more exceed 600 (maximum 11,788.08 MW), so 600 is a plateau rather than a hard ceiling. On all of those sites the number is formulaic, not a site-specific estimate. Null when EPA published no capacity.
PV capacity usable for ranking
est_pv_capacity_usable_for_ranking
Optional
False when the capacity is missing or capped, and therefore must not be used to rank or compare sites. This actor's score never uses EPA capacity for that reason.
PV capacity note
est_pv_capacity_note
Optional
Why the capacity is or is not usable: published, at_or_above_600mw_plateau, or not_published.
Derived PV density (MW/acre)
pv_density_mw_per_acre_derived
Optional
EPA's estimated PV capacity divided by acreage, computed by this actor. Published so a buyer can see for themselves that EPA's capacity figure is a constant-density desktop calculation. Null when either input is unknown.
Maximum annual GHI (kWh/m2/day)
ghi_kwh_m2_day
Optional
Maximum annual Global Horizontal Irradiance modelled at the site. Measured range across the layer is 2.0 to 6.9.
Solar resource class
solar_resource_class
Optional
Band derived from GHI: excellent (5.75+), strong (5.25+), moderate (4.75+), marginal (4.25+) or weak. Null when EPA published no GHI.
Utility-scale wind screened
utility_scale_wind
Optional
True when EPA flagged the site for utility-scale wind (601 sites nationally).
Utility-scale wind (verbatim)
utility_scale_wind_raw
Optional
EPA's UtilWnd column verbatim: Y, or null for the single-space sentinel.
Community-scale wind screened
community_scale_wind
Optional
True when EPA flagged the site for community-scale wind (9,770 sites).
Community-scale wind (verbatim)
community_scale_wind_raw
Optional
EPA's CommunWnd column verbatim: Y, or null for the single-space sentinel.
Facility-scale wind screened
facility_scale_wind
Optional
True when EPA flagged the site for facility-scale wind (18,851 sites).
Facility-scale wind (verbatim)
facility_scale_wind_raw
Optional
EPA's FacilWnd column verbatim: Y, or null for the single-space sentinel.
No acreage for wind sizing
no_acreage_wind
Optional
True when EPA recorded that it could not size a wind project because site acreage was unknown.
EPA estimated wind capacity (MW)
est_wind_capacity_mw
Optional
EPA's estimated wind capacity. Capped at 1600 MW, which is never exceeded anywhere in the layer. Read the capped flag before using it.
Wind capacity is at EPA's ceiling
est_wind_capacity_is_capped
Optional
True when EPA's estimate is at or above the 1600 MW ceiling (49 sites). Null when EPA published no wind capacity.
Wind capacity usable for ranking
est_wind_capacity_usable_for_ranking
Optional
False when the wind capacity is missing or capped and therefore must not be used to rank sites.
Wind capacity note
est_wind_capacity_note
Optional
Why the wind capacity is or is not usable: published, at_or_above_epa_ceiling, or not_published.
Wind speed at 40 m (m/s)
wind_speed_40m_ms
Optional
Modelled annual average wind speed at 40 m.
Wind speed at 80 m (m/s)
wind_speed_80m_ms
Optional
Modelled annual average wind speed at 80 m.
Wind speed at 100 m (m/s)
wind_speed_100m_ms
Optional
Modelled annual average wind speed at 100 m, the hub height modern turbines actually use and the basis for wind_resource_class.
Wind resource class
wind_resource_class
Optional
Band derived from the 100 m wind speed: excellent (8.5+), strong (7.5+), moderate (6.5+), marginal (5.5+) or weak. Null when no wind speed was published.
Biopower facility potential
biopower_potential
Optional
True when EPA flagged the site as a candidate for a biopower facility (30,909 sites).
Biopower potential (verbatim)
biopower_potential_raw
Optional
EPA's BioPwrPot column verbatim: Y, or null for the single-space sentinel.
Biorefinery facility potential
biorefinery_potential
Optional
True when EPA flagged the site as a candidate for a biorefinery (3,667 sites).
Biorefinery potential (verbatim)
biorefinery_potential_raw
Optional
EPA's BioRefPot column verbatim: Y, or null for the single-space sentinel.
Cumulative biopower residues (t/yr)
cumulative_biopower_residues_tpy
Optional
Cumulative biopower residues available within 50 miles of the site, in metric tons per year.
Cumulative biorefinery residues (t/yr)
cumulative_biorefinery_residues_tpy
Optional
Cumulative biorefinery residues available within 50 miles, in metric tons per year.
Crop residues (t/yr)
crop_residues_tpy
Optional
Crop residues available within 50 miles, in metric tons per year.
Forest residues (t/yr)
forest_residues_tpy
Optional
Forest residues available within 50 miles, in metric tons per year.
Primary mill residues (t/yr)
primary_mill_residues_tpy
Optional
Primary mill residues available within 50 miles, in metric tons per year.
Secondary mill residues (t/yr)
secondary_mill_residues_tpy
Optional
Secondary mill residues available within 50 miles, in metric tons per year.
Urban waste wood (t/yr)
urban_waste_wood_tpy
Optional
Urban waste wood residues available within 50 miles, in metric tons per year.
Geothermal heat pump potential
geothermal_heat_pump_potential
Optional
EPA's geothermal heat pump flag. Note that this is Y on 190,956 of 190,976 sites (99.99%), so it is effectively a constant and is not offered as a filter.
Geothermal heat pump (verbatim)
geothermal_heat_pump_raw
Optional
EPA's GeoHeatPmp column verbatim: Y, or null for the single-space sentinel.
Surface temperature (deg C)
surface_temperature_c
Optional
Modelled annual average surface temperature at the site, used by EPA in its geothermal heat pump screen.
Permafrost present
permafrost_present
Optional
True when EPA flagged permafrost at the site. Only 20 sites nationally, all in Alaska.
Permafrost (verbatim)
permafrost_raw
Optional
EPA's PermFrost column verbatim: Y, or null for the single-space sentinel.
Distance to substation (mi, 2022 estimate)
substation_distance_miles_2022_screening_estimate
Optional
EPA's 2022 precomputed distance to the nearest substation. A FROZEN SCREENING ESTIMATE, not a live measurement. Run hifld-grid-proximity-screener on this row's coordinates for the current figure.
Nearest substation voltage (2022 estimate)
substation_voltage_volts_2022_screening_estimate
Optional
EPA's 2022 precomputed nearest substation voltage, published by EPA in the Volts column though the values are in kV magnitude. Null on sites where EPA published none.
Nearest substation voltage (kV)
substation_voltage_kv_derived
Optional
The substation voltage restated for convenience. EPA's column is labelled Volts but publishes values such as 115 and 230, which are kV, so this actor does not rescale it and says so.
Distance to transmission (mi, 2022 estimate)
transmission_distance_miles_2022_screening_estimate
Optional
EPA's 2022 precomputed distance to the nearest transmission line. A frozen screening estimate, not a live measurement.
Nearest transmission voltage (kV, 2022 estimate)
transmission_line_kv_2022_screening_estimate
Optional
EPA's 2022 precomputed nearest transmission line voltage in kilovolts.
Nearest transmission status (2022 estimate)
transmission_line_status_2022_screening_estimate
Optional
EPA's 2022 precomputed status of the nearest transmission line. Measured vocabulary: IN SERVICE, INACTIVE, NOT AVAILABLE, UNDER CONST.
Transmission status contradicts voltage
transmission_status_contradicts_voltage
Optional
True when EPA reports the nearest line status as NOT AVAILABLE while also publishing a voltage above zero. This internal contradiction affects 16,803 sites and is surfaced rather than silently resolved. Null when either input is missing.
Nearest interconnection distance (mi, 2022)
nearest_interconnection_distance_miles_2022
Optional
The smaller of EPA's 2022 substation and transmission distances. A frozen screening estimate used for ranking only.
Distance to nearest road (mi)
road_distance_miles
Optional
EPA's precomputed distance to the nearest graded road.
Distance to nearest rail (mi)
rail_distance_miles
Optional
EPA's precomputed distance to the nearest rail line.
Interconnection data is live
interconnection_data_is_live
Optional
Always false. Every interconnection figure on this row comes from EPA's frozen 2022 precomputation, never from a live grid query.
Interconnection note
interconnection_note
Optional
Full-text warning that EPA's grid fields are a 2022 precomputation, are internally inconsistent on 16,803 sites, and must not be used to size an interconnection.
Verify interconnection with
verify_interconnection_with
Optional
The sibling actor to run on this row's coordinates for a live line and substation measurement.
Technologies flagged by EPA
technologies_flagged
Optional
Every renewable technology EPA's screen flagged for this site, from the scale-specific columns: utility_solar, distributed_solar, offgrid_solar, utility_wind, community_wind, facility_wind, biopower, biorefinery.
Number of technologies flagged
technologies_flagged_count
Optional
Count of technologies EPA flagged for this site.
Highest-value flagged technology
best_flagged_technology
Optional
The flagged technology with the greatest typical project value, ordered utility_solar, utility_wind, distributed_solar, community_wind, facility_wind, biopower, biorefinery, offgrid_solar. Null when EPA flagged none.
Development-candidate score (0-100)
development_candidate_score
Optional
An EDITORIAL 0-100 ranking score computed by this actor from EPA's screening inputs: resource, site size, 2022 interconnection proximity, road access and reuse archetype. Rescaled to the components that were actually available. NULL, never 0, when no component could be computed. This is a ranking aid, not a feasibility determination.
Score components available
score_components_available
Optional
Which of the five scoring components had inputs on this site.
Score components missing
score_components_missing
Optional
Which scoring components could not be computed because EPA published no input.
Score weight available
score_weight_available
Optional
How much of the 100-point weight was actually computable on this site. A score built on 45 of 100 available weight is far weaker evidence than one built on 100.
Score is incomplete
score_is_incomplete
Optional
True when at least one scoring component could not be computed, so the score rests on partial inputs.
Score basis
score_basis
Optional
Plain-language statement of exactly how this row's score was computed and what was excluded from it.
EPA screening result only
epa_screening_only
Optional
Always true. Everything on this row is EPA's desktop pre-screen output.
Is an entitlement
is_entitlement
Optional
Always false. An EPA RE-Powering screening result confers no permit, no land right, no interconnection position and no approval of any kind.
Screening disclaimer
screening_disclaimer
Optional
Full-text statement that EPA RE-Powering is a desktop pre-screen and not an entitlement, feasibility study or site-control position.
Flag semantics note
flag_semantics_note
Optional
Full-text explanation that EPA publishes no explicit negative value, so a false on any flag means EPA did not flag it rather than EPA determining the negative.
Capacity ceiling note
capacity_ceiling_note
Optional
Full-text explanation of EPA's 600 MW PV plateau (which 16 sites exceed, so it is NOT a ceiling), the genuine 1600 MW wind ceiling, and the constant-density national basis of both estimates. Every figure in this sentence is asserted live against the layer by the pv_plateau_integrity drift probe before any row is billed.
EPA site information URL
epa_site_info_url
Optional
EPA or state program page for the underlying cleanup site.
EPA RE-Powering profile URL
epa_repowering_profile_url
Optional
EPA's own RE-Powering Site Profile page for this site, where every value on this row can be independently checked against EPA.
Data vintage
data_vintage
Optional
The vintage of EPA's RE-Powering Mapper layer. EPA states it in the service name itself.
Source layer title
layer_title
Optional
The EPA ArcGIS layer this row came from.
Source URL
source_url
Optional
The EPA ArcGIS FeatureServer layer endpoint queried for this row.
Checked at
checked_at
Optional
UTC timestamp when this run queried EPA.
Sites matching the query
matched_sites_total
Optional
The exact number of sites matching the query, read from EPA's free returnCountOnly endpoint before any row was fetched. Compare with the row count to see whether the answer was capped.
Results truncated
results_truncated
Optional
True when more sites matched than were returned, because maxResults capped the run. A capped answer can therefore never be mistaken for a complete one.
Max results requested
max_results_requested
Optional
The maxResults cap in force for this run.
Filters applied
filters_applied
Optional
Every filter this run actually applied, so a buyer can confirm the query they thought they asked for is the query that ran.
WHERE clause
where_clause
Optional
The exact SQL WHERE clause sent to EPA's FeatureServer. Published so the result is reproducible.
Drift gate status
drift_gate_status
Optional
verified when all six live drift probes passed, or verified_degraded when every load-bearing probe passed but a corroborating probe could not complete. A run never emits rows in any other state.
Drift probes verified
drift_probes_verified
Optional
Which drift probes completed and measured what was expected on this run.
Drift gate note
drift_gate_note
Optional
Plain-language summary of what the live drift gate verified before any billable row was produced.
Layer status
layer_status
Optional
ok when every drift probe passed, ok_degraded when a corroborating probe was unavailable. A failed layer never reaches this field because the run fails first.