Skip to content

🌎 environment

U.S. environmental data spanning air quality (EPA AQS monitored concentrations and AQI), toxics and greenhouse-gas emissions (EPA TRI and GHGRP by facility), surface water (USGS streamflow and monitoring sites) and county-level water-use withdrawals by sector (USGS water_use_county, 2015 census), public drinking-water systems (EPA SDWIS), and the EPA facility registry with compliance and enforcement history (ECHO/FRS). Each row is a place-and-period observation or a facility record joinable to geo (states/counties), sec (regulated companies), econ, and weather. Together they describe environmental quality, pollution sources, water availability/use, and regulatory status across the United States.

22 datasets · 272 columns

air_quality_annual · table

EPA AirData annual-summary air quality — arithmetic mean concentration, peak value, observation count, and valid-day count for PM2.5, Ozone, SO2, NO2, and CO. Source file is one row per monitor per pollutant per year, but no monitor/site id is retained here (only state_fips/county_fips), and the annual file carries no AQI column, so aqi is always null here — for AQI use air_quality_daily, which is also site-level. Keyless national bulk file annual_conc_by_monitor_.zip. Moved here from the weather schema. Joins geo.state_ref via state_fips and geo.counties via county_fips.

Column Type Null Description
state_fips string no 2-digit state FIPS code (e.g. '06' for California)
county_fips string yes 5-digit county FIPS code (FK to geo.counties)
parameter_code string yes Pollutant code (88101, 44201, etc.)
parameter_name string yes Pollutant name (e.g. 'PM2.5 - Local Conditions')
year integer no Calendar year
arithmetic_mean double yes Annual mean concentration
first_max_value double yes Highest recorded value
observation_count integer yes Number of observations
valid_day_count integer yes Days with valid data
aqi integer yes Air Quality Index

air_quality_daily · table

EPA AirData daily-summary air quality by monitoring site — one row per site per day per pollutant standard, with mean concentration, peak value, AQI, and observation count (plus site lat/lon). Unlike air_quality_annual (county-level, no AQI), this table retains site_number and a real AQI value. Keyless national bulk files daily__.zip, one per pollutant-year. Moved here from the weather schema. Joins geo.state_ref/geo.counties.

Column Type Null Description
state_fips string no 2-digit state FIPS code (e.g. '06' for California)
county_fips string yes 5-digit county FIPS code (FK to geo.counties)
site_number string yes Monitoring site number
parameter_code string yes Pollutant code (88101, 44201, etc.)
parameter_name string yes Pollutant name
year integer no Calendar year
date string no Sample date (YYYY-MM-DD)
sample_duration string yes Sample duration (e.g. '24-HR BLK AVG', '1 HOUR')
pollutant_standard string yes Pollutant standard used for AQI calculation
arithmetic_mean double yes Daily mean concentration
first_max_value double yes Highest recorded value for the day
aqi integer yes Air Quality Index (null for non-daily-standard measurements)
observation_count integer yes Number of observations
latitude double yes Site latitude
longitude double yes Site longitude

aqs_monitors · table

EPA AQS monitor metadata — one row per (site, parameter) with location (lat/lon, local site name, city, CBSA name), monitor type, monitoring networks, and operating span (first_year through last_sample_date). Keyless reference file aqs_monitors.zip. Snapshot; joins air_quality_daily by site and geo by county_fips.

Column Type Null Description
state_fips string yes 2-digit state FIPS code (e.g. '06' for California)
county_fips string yes 5-digit county FIPS code (FK to geo.counties)
site_number string yes Monitoring site number
parameter_code string yes Pollutant/parameter code
parameter_name string yes Parameter name
latitude double yes Monitor latitude
longitude double yes Monitor longitude
monitor_type string yes Monitor type (e.g. SLAMS, SPM)
networks string yes Monitoring networks
first_year integer yes First year of data
last_sample_date string yes Last sample date
local_site_name string yes Local site name
city_name string yes City name
cbsa_name string yes Core-Based Statistical Area name

tri_releases · table

EPA Toxics Release Inventory — one row per facility × chemical × year, with release amounts by pathway (fugitive air, stack air, surface water) plus on-site, off-site, and total release totals, primary NAICS, and facility location (city, county, state, zip, lat/lon). Per-year national bulk CSV (efservice mv_tri_basic_download). Delta by year. Joins geo via state_abbr + county name; frs_id links epa_facilities.

Column Type Null Description
tri_facility_id string yes TRI facility id
frs_id string yes FRS registry id (FK to epa_facilities.registry_id)
facility_name string yes Facility name
city string yes City
county string yes County name
state_abbr string yes State (USPS abbr)
zip string yes ZIP code
latitude double yes Facility latitude
longitude double yes Facility longitude
primary_naics string yes Primary NAICS code
chemical string yes Chemical name
cas_number string yes CAS registry number
unit_of_measure string yes Unit of measure for release amounts
fugitive_air double yes Fugitive air release
stack_air double yes Stack air release
water_release double yes Surface-water discharge
on_site_release_total double yes Total on-site releases
off_site_release_total double yes Total off-site releases
total_releases double yes Total releases (on-site + off-site)

ghg_facilities · table

EPA GHGRP facility dimension — one row per reporting facility per year with location (city, state, county, zip, lat/lon), NAICS code, parent company, reported industry types, and facility type (e.g. 'Direct Emitter'). Envirofacts efservice full-year CSV. Delta by year. Join ghg_emissions on (facility_id, year) for the emissions themselves; frs_id links epa_facilities. parent_company is unstructured (no per-row id — facility_id is per-facility, not per-parent-company). ref.canonical_org_entity carries it as an already-resolved identity (ghg_parent_company_name, with an LEI/SEC CIK when matched); join there on the name rather than re-running a fuzzy match against gleif_entities.legal_name by hand.

Column Type Null Description
facility_id string no GHGRP facility id
facility_name string yes Facility name
latitude double yes Facility latitude
longitude double yes Facility longitude
city string yes City
state_abbr string yes State (USPS abbr)
county_fips string yes 5-digit county FIPS code (FK to geo.counties)
county string yes County name
zip string yes ZIP code
naics_code string yes NAICS code
frs_id string yes FRS registry id (FK to epa_facilities.registry_id)
parent_company string yes Parent company
reported_industry_types string yes Reported industry types
facility_types string yes Facility types (e.g. 'Direct Emitter')

ghg_emissions · table

EPA GHGRP emissions facts — CO2-equivalent emissions keyed by facility × year × sector × subsector × gas. Envirofacts efservice full-year CSV. Delta by year. Per-facility annual total = SUM(co2e_emission) over the facility-year; join ghg_facilities on (facility_id, year) for geography.

Column Type Null Description
facility_id string no GHGRP facility id (FK to ghg_facilities.facility_id)
sector_id integer yes GHGRP sector id
subsector_id integer yes GHGRP subsector id
gas_id integer yes Gas id (1=CO2, 2=CH4, 3=N2O, ...)
co2e_emission double yes Emissions in metric tons CO2-equivalent

egrid_emission_rates · table

EPA eGRID (Emissions & Generation Resource Integrated Database) regional emission rates — one row per eGRID subregion per year (~27 subregions, e.g. RFCE, CAMX, ERCT), with annual net/nonbaseload generation, total NOx/SO2/CO2/CO2e emissions, overall output emission rates (lb/MWh, all fuels combined), and per-fuel-type output emission rates for NOx/SO2/CO2 broken out by coal, oil, gas, and fossil-fuel-total (also lb/MWh), plus each fuel's share of subregion generation (coal/oil/gas/nuclear/hydro/ renewables generation_pct). This is the SRL (subregion) tab of eGRID's multi-tab XLSX workbook — the workbook also carries UNT/GEN/PLNT (unit/generator/plant-level) and ST/BA/NRL/US (state/balancing-authority/NERC-region/national) tabs; none of those have this fuel-type breakdown (plant-level rates are for the whole plant, dominated by its single primary fuel) and none are in this table. EPA publishes eGRID roughly every 1-2 years, historically each January of year+2 (eGRID2023, released 2025-01 and revised 2025-06, covers 2023 generation/emissions). The download URL is unpredictable — it embeds a publish date and a revision suffix that both vary by year and are not derivable from the data year — so this transformer discovers the year's workbook link by scraping EPA's historical-egrid-data listing page, falling back to download-data for the most-recently-released vintage (not yet moved to the historical archive at build time, 2026-08-02, eGRID2023 was download-data-only). A year with no discoverable link yields zero rows for that year, not an error — check the ETL log for "no data workbook link found" to distinguish "not published this way" from a real failure.

Column Type Null Description
year integer no Calendar year
subregion_acronym string no eGRID subregion acronym (e.g. RFCE, CAMX, ERCT); PK component
subregion_name string yes eGRID subregion name
nameplate_capacity_mw double yes Subregion total nameplate capacity (MW)
annual_net_generation_mwh double yes Subregion annual net generation (MWh)
annual_nonbaseload_generation_mwh double yes Subregion annual nonbaseload generation (MWh)
annual_nox_emissions_tons double yes Subregion annual NOx emissions (tons)
annual_so2_emissions_tons double yes Subregion annual SO2 emissions (tons)
annual_co2_emissions_tons double yes Subregion annual CO2 emissions (tons)
annual_co2e_emissions_tons double yes Subregion annual CO2-equivalent emissions (tons)
nox_output_rate_lb_per_mwh double yes Subregion annual NOx total output emission rate, all fuels combined (lb/MWh)
so2_output_rate_lb_per_mwh double yes Subregion annual SO2 total output emission rate, all fuels combined (lb/MWh)
co2_output_rate_lb_per_mwh double yes Subregion annual CO2 total output emission rate, all fuels combined (lb/MWh)
co2e_output_rate_lb_per_mwh double yes Subregion annual CO2e total output emission rate, all fuels combined (lb/MWh)
coal_nox_rate_lb_per_mwh double yes Subregion annual NOx output emission rate, coal-fired generation only (lb/MWh)
oil_nox_rate_lb_per_mwh double yes Subregion annual NOx output emission rate, oil-fired generation only (lb/MWh)
gas_nox_rate_lb_per_mwh double yes Subregion annual NOx output emission rate, gas-fired generation only (lb/MWh)
fossil_nox_rate_lb_per_mwh double yes Subregion annual NOx output emission rate, all fossil-fired generation (lb/MWh)
coal_so2_rate_lb_per_mwh double yes Subregion annual SO2 output emission rate, coal-fired generation only (lb/MWh)
oil_so2_rate_lb_per_mwh double yes Subregion annual SO2 output emission rate, oil-fired generation only (lb/MWh)
gas_so2_rate_lb_per_mwh double yes Subregion annual SO2 output emission rate, gas-fired generation only (lb/MWh)
fossil_so2_rate_lb_per_mwh double yes Subregion annual SO2 output emission rate, all fossil-fired generation (lb/MWh)
coal_co2_rate_lb_per_mwh double yes Subregion annual CO2 output emission rate, coal-fired generation only (lb/MWh)
oil_co2_rate_lb_per_mwh double yes Subregion annual CO2 output emission rate, oil-fired generation only (lb/MWh)
gas_co2_rate_lb_per_mwh double yes Subregion annual CO2 output emission rate, gas-fired generation only (lb/MWh)
fossil_co2_rate_lb_per_mwh double yes Subregion annual CO2 output emission rate, all fossil-fired generation (lb/MWh)
coal_generation_pct double yes Coal share of subregion annual generation (resource mix, percent)
oil_generation_pct double yes Oil share of subregion annual generation (resource mix, percent)
gas_generation_pct double yes Gas share of subregion annual generation (resource mix, percent)
nuclear_generation_pct double yes Nuclear share of subregion annual generation (resource mix, percent)
hydro_generation_pct double yes Hydro share of subregion annual generation (resource mix, percent)
renewables_generation_pct double yes Total renewables share of subregion annual generation (resource mix, percent)

water_sites · table

USGS NWIS surface-water monitoring sites — one row per active stream site with location, HUC, and drainage area. Fetched per state from the NWIS site service (RDB, expanded output). Snapshot. site_no joins streamflow; state_fips/county_fips join geo.

Column Type Null Description
site_no string no USGS site number (PK)
agency_cd string yes Reporting agency code
station_name string yes Station name
site_type string yes Site type code (ST = stream)
latitude double yes Decimal latitude
longitude double yes Decimal longitude
state_fips string yes 2-digit state FIPS code (e.g. '06' for California)
county_fips string yes 5-digit county FIPS code (FK to geo.counties)
huc_code string yes Hydrologic unit code
drainage_area_sqmi double yes Drainage area (square miles)

streamflow · table

USGS NWIS daily streamflow — one row per (site, date) with discharge (cfs) and gage height (ft). Fetched per (state, year) from the NWIS daily-values service (RDB; concatenated per-site blocks with dynamically-named value columns, normalized by the transformer). Delta by year; current year is re-fetched. site_no joins water_sites.

Column Type Null Description
site_no string no USGS site number (FK to water_sites.site_no)
obs_date date no Observation date
discharge_cfs double yes Daily mean discharge (cubic feet per second)
discharge_qual string yes Discharge qualifier (A=approved, P=provisional, e=estimated)
gage_height_ft double yes Daily mean gage height (feet)
gage_height_qual string yes Gage-height qualifier

water_withdrawals · table

USGS county-level water withdrawals by sector — public supply, domestic, industrial, irrigation, mining, and thermoelectric power, plus an all-sector total — split into groundwater/surface-water freshwater withdrawal (Mgal/d) and, where the sector reports a saline component, total withdrawal including saline. A proxy for whether a county has spare water-withdrawal capacity for a new industrial user: compare a target sector's historical draw against the county's total. Quinquennial census (2000, 2005, 2010, 2015 — the last county-grain vintage published; USGS moved to an annual/HUC12/model-based approach after 2015). Livestock and aquaculture are omitted: their sector-code assignment is ambiguous before 2005 and immaterial to industrial-siting screening. state_fips/ county_fips join geo.

Column Type Null Description
state_fips string no 2-digit state FIPS code (e.g. '06' for California)
county_fips string no 5-digit county FIPS code (FK to geo.counties)
year integer no Calendar year
sector string no Water-use sector: public_supply, domestic, industrial, irrigation, mining, thermoelectric, or total (all sectors combined); PK component
groundwater_fresh_mgd double yes Groundwater withdrawal, freshwater, in million gallons per day
surfacewater_fresh_mgd double yes Surface-water withdrawal, freshwater, in million gallons per day
total_fresh_mgd double yes Total withdrawal, freshwater (groundwater + surface water), in million gallons per day
total_withdrawal_mgd double yes Total withdrawal, fresh + saline, in million gallons per day. Null for domestic and irrigation (no saline component reported) and, in 2000, for public supply as well (that vintage did not break out saline withdrawals for public supply/domestic).

drinking_water · table

EPA SDWIS public water systems — one row per active public water system (PWS) with type (CWS/NTNCWS/TNCWS), population served, service connections count, owner type, and primary source-water type (ground vs. surface). Envirofacts efservice full-state CSV (active systems only). Snapshot. pwsid joins drinking_water_violations; state_abbr joins geo.state_ref.

Column Type Null Description
pwsid string no Public Water System id (PK)
pws_name string yes Public water system name
pws_type_code string yes PWS type (CWS, NTNCWS, TNCWS)
primacy_agency_code string yes Primacy agency code
epa_region string yes EPA region
population_served_count long yes Population served
service_connections_count long yes Service connections
owner_type_code string yes Owner type code
gw_sw_code string yes Ground-water / surface-water code
primary_source_code string yes Primary source-water type
city_name string yes City
zip_code string yes ZIP code
state_abbr string yes State (USPS abbr)

epa_facilities · table

EPA ECHO Exporter — one row per regulated facility (~3.2M) with registry identity, location (address, lat/lon, NAICS/SIC codes — naics_codes is backfilled from sic_codes for some SIC-only facilities, see naics_codes_derived), and a rolled-up compliance/enforcement summary: inspection count and last-inspection date, formal enforcement action count, total penalties, significant-noncompliance flag, overall plus per-statute (CAA/CWA/RCRA/SDWA) compliance status, and violation-frequency rollups — quarters (of the last 12) in noncompliance overall and per statute (CAA/CWA/RCRA), plus the CWA effluent-limit exceedance count over the last 13 quarters (null when none). Keyless weekly-snapshot bulk zip. registry_id links TRI/GHGRP frs_id; the facility_compliance view projects the compliance subset.

Column Type Null Description
registry_id string yes FRS registry id (PK). Nullable: the keyless ECHO Exporter bulk feed itself omits REGISTRY_ID for a small fraction of facilities, and there is no other natural key to substitute.
facility_name string yes Facility name
street string yes Street address
city string yes City
state_abbr string yes State (USPS abbr)
zip string yes ZIP code
county_fips string yes 5-digit county FIPS code (FK to geo.counties)
latitude double yes Facility latitude
longitude double yes Facility longitude
naics_codes string yes NAICS codes (space-separated); source-native, or a 2-digit NAICS sector backfilled from sic_codes when the source has none — see naics_codes_derived. Still blank for ~9% of facilities: those with no sic_codes either, or whose sic_codes span more than one NAICS sector (EpaFacilitiesNaicsBackfillTransformer will not guess a sector). A naics_codes-only industrial-sector filter that also wants those excludes them; sic_codes is the fallback classification.
naics_codes_derived boolean no True when naics_codes was backfilled from sic_codes via the Census 1997-NAICS-to-1987-SIC crosswalk (govdata-ops#694) rather than sourced natively from FAC_NAICS_CODES. A derived value is a coarse 2-digit NAICS sector, not a precise source-native code.
sic_codes string yes SIC codes (space-separated)
compliance_status string yes Overall compliance status
snc_flag string yes Significant non-compliance flag. Derived from FAC_PROGRAMS_WITH_SNC (count of programs currently in SNC), not FAC_SNC_FLG — EPA no longer populates FAC_SNC_FLG in the ECHO Exporter feed (constant 'N'), while FAC_PROGRAMS_WITH_SNC varies and agrees with the per-statute CWA/RCRA/SDWA_SNC_FLAG columns in the same source.
inspection_count integer yes Inspections/evaluations count
date_last_inspection string yes Date of last inspection
formal_action_count integer yes Formal enforcement actions count
total_penalties double yes Total penalties (USD)
qtrs_in_noncompliance integer yes Quarters (of last 12) in noncompliance/SNC/HPV, any program
caa_qtrs_in_noncompliance integer yes Quarters (of last 12) in CAA noncompliance/HPV
cwa_qtrs_in_noncompliance integer yes Quarters (of last 12) in CWA noncompliance/SNC
rcra_qtrs_in_noncompliance integer yes Quarters (of last 12) in RCRA noncompliance
cwa_effluent_exceedance_count integer yes CWA effluent-limit exceedance violations, last 13 quarters. Null both for facilities with no CWA/NPDES permit at all and for permitted dischargers with zero reported exceedances (source represents both as blank, not 0) — confirmed live: ~93% of facilities under active CWA compliance tracking still carry a blank value here. Not a coverage gap; a positive count reliably indicates a real exceedance history.
caa_compliance_status string yes Clean Air Act compliance status
cwa_compliance_status string yes Clean Water Act compliance status
rcra_compliance_status string yes RCRA compliance status
sdwa_compliance_status string yes Safe Drinking Water Act compliance status

drinking_water_violations · table

EPA SDWIS drinking-water violations — one row per violation per public water system, with violation type/category (MR=monitoring, MCL, TT, ...), health-based and major-violation indicators, contaminant code, measured value, and compliance period. Envirofacts efservice full-state CSV, filtered by primacy_agency_code (the state column; the literal state column silently no-ops). Snapshot. pwsid joins drinking_water.

Column Type Null Description
pwsid string no Public Water System id (FK to drinking_water.pwsid)
violation_id string no Violation id (PK component)
violation_code string yes Violation type code
violation_category_code string yes Violation category (MR=monitoring, MCL, TT, ...)
is_health_based string yes Health-based violation indicator (Y/N)
contaminant_code string yes Contaminant code
compliance_status_code string yes Compliance/return-to-compliance status
is_major_violation string yes Major violation indicator (Y/N)
viol_measure double yes Violation measurement value
unit_of_measure string yes Unit of measure
compl_per_begin_date string yes Compliance period begin date
compl_per_end_date string yes Compliance period end date
rule_code string yes Regulatory rule code
pws_type_code string yes PWS type (CWS, NTNCWS, TNCWS)

superfund_sites · table

EPA SEMS Superfund sites — one row per site (national, ~55K) with site name, street address, National Priorities List status (npl_status_code 'F' = Final NPL), federal-facility indicator, and location (county_fips, state_abbr, lat/lon). Envirofacts efservice full table. Snapshot.

Column Type Null Description
site_id string no SEMS site id (PK)
epa_id string yes EPA site id (e.g. CTD000604546)
site_name string yes Site name
npl_status_code string yes NPL status code (F=Final NPL, N=not on NPL)
npl_status_name string yes NPL status description
street string yes Street address
city string yes City
state_abbr string yes State (USPS abbr)
county_name string yes County name
county_fips string yes 5-digit county FIPS code (FK to geo.counties)
latitude double yes Site latitude
longitude double yes Site longitude
federal_facility string yes Federal facility indicator

rcra_facilities · table

EPA RCRAInfo hazardous-waste handlers — one row per current handler, with generator status and activity flags (transporter, treatment/storage/ disposal, recycler) plus location (city, county_code, zip, lat/lon). Envirofacts efservice full-state CSV filtered to current_record='Y' (the source table is multi-cycle history). Snapshot. Joins geo.state_ref via state_abbr.

Column Type Null Description
handler_id string no EPA RCRA handler id (PK)
handler_name string yes Handler name
location_city string yes City
state_abbr string yes State (USPS abbr)
location_zip string yes ZIP code
county_code string yes County code
fed_waste_generator string yes Federal hazardous-waste generator status (1/2/3/N)
transporter string yes Transporter activity flag
tsd_activity string yes Treatment/storage/disposal activity flag
recycler_activity string yes Recycler activity flag
latitude double yes Handler latitude
longitude double yes Handler longitude

water_quality_samples · table

USGS/EPA Water Quality Portal — measured water-quality sample results (nitrate, metals, bacteria, pH, etc.) at monitoring locations. Fetched per (state FIPS, year) from the Result service. Delta by year; large/slow, so DQ samples via dqRowLimit. monitoring_location_id joins USGS/STORET sites.

Column Type Null Description
organization_id string yes Reporting organization id
monitoring_location_id string yes Monitoring location id
activity_id string yes Sampling activity id
activity_start_date string yes Sample date (YYYY-MM-DD)
activity_media string yes Sample medium (Water, ...)
characteristic_name string yes Measured characteristic (e.g. Nitrate, pH, Lead)
sample_fraction string yes Sample fraction (Total, Dissolved, ...)
result_value double yes Measured result value
result_unit string yes Result unit of measure
usgs_pcode string yes USGS parameter code
result_status string yes Result status (Accepted, Preliminary, ...)

water_use_county · table

USGS county-level water-use census for 2015 (usco2015v2.0.csv, USGS data release https://doi.org/10.5066/F7TB15V5, cited in USGS Circular 1441) — one row per county (3,223 counties/county-equivalents, all 50 states + DC/PR/USVI). Reports total population and, per sector (public supply, self-supplied domestic, industrial, irrigation, livestock, aquaculture, mining, thermoelectric power), withdrawals in million gallons per day (Mgal/d) broken out by groundwater/surface-water and, where applicable, fresh/saline; thermoelectric is further split into once-through vs. recirculating cooling with power generated (GWh) and consumptive use. total_withdrawals_mgd/total_fresh_groundwater_mgd/total_fresh_surfacewater_mgd/ total_saline_withdrawals_mgd are cross-sector sums; total_consumptive_use_partial_mgd covers only irrigation + thermoelectric (the only sectors USGS estimates consumptive use for in this release) — not a full-sector total, per USGS's own "Partial" naming. Verified live 2026-09-21: summing total_withdrawals_mgd nationally gives 321.7 Bgal/d, matching USGS Circular 1441's published 322 Bgal/d 2015 total; Monroe County, MI (DTE's Monroe coal plant, Lake Erie once-through cooling) shows 1,791 Mgal/d thermoelectric withdrawal and 25,252 GWh generated, consistent with that plant's known ~3,400 MW nameplate capacity. IMPORTANT CAVEAT — this is a WITHDRAWAL-CAPACITY proxy for "does this county have a track record of sector water use," not a legal water-rights/allocation record: it does not show unallocated headroom, permitted-but- unused rights, or legal availability under drought curtailment. USGS publishes this compilation once every 5 years (Circulars 1950-2015 then per-category ScienceBase releases from 2020); this table currently holds only the 2015 vintage — the last year published as one combined all-sector county file — see the dataset_type note above for why later vintages are not mechanically addable. Joins geo.state_ref via state_fips and geo.counties via county_fips.

Column Type Null Description
state string no USPS state/territory abbreviation
state_fips string no 2-digit state FIPS code (e.g. '06' for California)
county_name string yes County or county-equivalent name
county_fips string no 5-digit county FIPS code (FK to geo.counties)
census_year integer yes USGS water-use census year this row represents (2015 for this release)
total_population_thousands double yes Total county population, in thousands
public_supply_population_thousands double yes Population served by public water supply, in thousands
public_supply_withdrawals_mgd double yes Public-supply total withdrawals, fresh+saline, groundwater+surface (Mgal/d)
public_supply_fresh_groundwater_mgd double yes Public-supply freshwater groundwater withdrawals (Mgal/d)
public_supply_fresh_surfacewater_mgd double yes Public-supply freshwater surface-water withdrawals (Mgal/d)
domestic_selfsupplied_population_thousands double yes Population self-supplied for domestic use (own well, not public supply), in thousands
domestic_selfsupplied_withdrawals_mgd double yes Self-supplied domestic freshwater withdrawals (Mgal/d)
domestic_public_supply_deliveries_mgd double yes Domestic deliveries from public supply (Mgal/d) — not a withdrawal, a sub-allocation of public_supply_withdrawals_mgd
industrial_withdrawals_mgd double yes Self-supplied industrial total withdrawals, fresh+saline, groundwater+surface (Mgal/d)
industrial_fresh_groundwater_mgd double yes Self-supplied industrial freshwater groundwater withdrawals (Mgal/d)
industrial_fresh_surfacewater_mgd double yes Self-supplied industrial freshwater surface-water withdrawals (Mgal/d)
industrial_saline_withdrawals_mgd double yes Self-supplied industrial saline withdrawals, groundwater+surface (Mgal/d)
irrigation_withdrawals_mgd double yes Irrigation (crop + golf course) freshwater withdrawals, groundwater+surface (Mgal/d)
irrigation_groundwater_mgd double yes Irrigation freshwater groundwater withdrawals (Mgal/d)
irrigation_surfacewater_mgd double yes Irrigation freshwater surface-water withdrawals (Mgal/d)
irrigation_consumptive_use_mgd double yes Irrigation freshwater consumptive use (Mgal/d)
irrigated_acres_thousands double yes Total irrigated acres (sprinkler + microirrigation + surface/flood), in thousand acres
livestock_withdrawals_mgd double yes Livestock freshwater withdrawals, groundwater+surface (Mgal/d)
aquaculture_withdrawals_mgd double yes Aquaculture total withdrawals, fresh+saline, groundwater+surface (Mgal/d)
aquaculture_fresh_withdrawals_mgd double yes Aquaculture freshwater withdrawals, groundwater+surface (Mgal/d)
mining_withdrawals_mgd double yes Mining total withdrawals, fresh+saline, groundwater+surface (Mgal/d)
mining_fresh_groundwater_mgd double yes Mining freshwater groundwater withdrawals (Mgal/d)
mining_fresh_surfacewater_mgd double yes Mining freshwater surface-water withdrawals (Mgal/d)
thermoelectric_withdrawals_mgd double yes Thermoelectric-power total withdrawals, fresh+saline, groundwater+surface (Mgal/d)
thermoelectric_fresh_groundwater_mgd double yes Thermoelectric-power freshwater groundwater withdrawals (Mgal/d)
thermoelectric_fresh_surfacewater_mgd double yes Thermoelectric-power freshwater surface-water withdrawals (Mgal/d)
thermoelectric_saline_withdrawals_mgd double yes Thermoelectric-power saline withdrawals, groundwater+surface (Mgal/d)
thermoelectric_consumptive_use_mgd double yes Thermoelectric-power total consumptive use, fresh+saline (Mgal/d)
thermoelectric_power_generated_gwh double yes Electricity generated by thermoelectric plants in the county (gigawatt-hours)
thermoelectric_oncethrough_withdrawals_mgd double yes Thermoelectric total withdrawals from once-through-cooled generating units only (Mgal/d)
thermoelectric_recirculating_withdrawals_mgd double yes Thermoelectric total withdrawals from recirculating-cooled generating units only (Mgal/d)
total_withdrawals_mgd double yes All-sector total withdrawals, fresh+saline, groundwater+surface (Mgal/d) — cross-sector sum
total_fresh_groundwater_mgd double yes All-sector total freshwater groundwater withdrawals (Mgal/d) — cross-sector sum
total_fresh_surfacewater_mgd double yes All-sector total freshwater surface-water withdrawals (Mgal/d) — cross-sector sum
total_saline_withdrawals_mgd double yes All-sector total saline withdrawals, groundwater+surface (Mgal/d) — cross-sector sum
total_consumptive_use_partial_mgd double yes Consumptive use total, fresh+saline, for irrigation + thermoelectric ONLY (Mgal/d) — USGS's own "Partial" label; not a full-sector total, other sectors have no consumptive-use estimate in this release

ocean_sst_monthly · table

Monthly sea surface temperature (SST) and SST anomaly for the 11 U.S.-adjacent NOAA large marine ecosystems (LMEs), 1985 to present — one row per (LME, month). Source is the NOAA Coral Reef Watch CoralTemp v3.1 5 km monthly mean analysis served by the CoastWatch ERDDAP dataset NOAA_DHW_monthly_Lon0360 (keyless; public domain, cite NOAA Coral Reef Watch). The grid is thinned server-side to every 5th cell (0.25 degrees) and each cell center is assigned to the first LME polygon containing it (NOAA LME boundary set, simplified; point-in-polygon on the cell center); cells over land or outside every LME, and cells with no SST, are dropped. mean_sst_c and mean_sst_anomaly_c are unweighted means of the cell values in degrees Celsius. The anomaly is the monthly mean SST minus the CoralTemp monthly-mean climatology, whose baseline period is 1985-1990 plus 1993 (derived from 1985-2012 data and re-centered; see https://coralreefwatch.noaa.gov/product/5km/methodology.php), so recent anomalies are against a mid-1980s reference and run warm. cell_count is the number of valid 0.25 degree cells averaged, so area is roughly cell_count x ~690 km2 at 40 N. Region key: lme_number / lme_name (the fisheries regional_ecosystem names follow the same LME naming) and state_abbrs, a comma-separated list of the coastal states whose adjacent waters the LME covers (the Caribbean Sea LME spans the whole Caribbean basin, not just PR and VI, and the Beaufort Sea LME extends into Canadian waters). Months NOAA has not yet published return no rows. Pairs with the fisheries landings and salmon tables on lme_name, year and month.

Column Type Null Description
lme_number integer no NOAA large marine ecosystem number (1 East Bering Sea, 2 Gulf of Alaska, 3 California Current, 5 Gulf of Mexico, 6 Southeast U.S. Continental Shelf, 7 Northeast U.S. Continental Shelf, 10 Insular Pacific-Hawaiian, 12 Caribbean Sea, 54 Northern Bering-Chukchi Seas, 55 Beaufort Sea, 65 Aleutian Islands)
lme_name string no NOAA large marine ecosystem name
state_abbrs string no Comma-separated 2-letter codes of the coastal states and territories adjacent to the LME (e.g. 'WA,OR,CA' for the California Current)
year integer no Calendar year
month string no 2-digit month (01-12) of the monthly mean composite
mean_sst_c double no Mean sea surface temperature over the LME's valid 0.25 degree cells, degrees Celsius (CoralTemp v3.1 monthly mean)
mean_sst_anomaly_c double yes Mean SST anomaly over the LME's valid cells, degrees Celsius, relative to the CoralTemp monthly climatology (baseline period 1985-1990 plus 1993)
cell_count integer no Number of valid 0.25 degree grid cells (after server-side 5x thinning of the 5 km grid) averaged into the row

ghg_facility_annual · view

Per-facility-year total greenhouse-gas emissions (SUM of co2e_emission across sectors/subsectors/gases, in metric tons CO2e) with facility location (state_abbr, county_fips, lat/lon) and NAICS code, joining ghg_emissions to ghg_facilities on (facility_id, year). For gas/sector- level detail, query ghg_emissions directly.

View — columns are resolved by the query engine at runtime.

facility_compliance · view

Compliance/enforcement projection of epa_facilities — registry_id, facility_name, state_abbr, plus significant-noncompliance flag, inspection count, formal enforcement action count, total penalties, violation-frequency rollups (quarters in noncompliance overall and per statute, CWA effluent exceedance count), and overall plus per-statute (CAA/CWA/RCRA/SDWA) compliance status.

View — columns are resolved by the query engine at runtime.

air_quality_annual_by_county · view

County-year average concentration and peak value per pollutant, grouped by parameter_name from air_quality_annual (whose aqi is always null, so peak_aqi here is null too — for real AQI use air_quality_daily). Joinable to geo.counties.

View — columns are resolved by the query engine at runtime.

environmental_burden_by_county · view

County-year pollutant concentration (one row per pollutant, from air_quality_annual) alongside ACS poverty rate and race/ethnicity composition for the same county-year — a cross-schema join to census.acs_poverty and census.acs_race_ethnicity on county_fips + year, in the spirit of EPA's EJSCREEN environmental-justice methodology. white_alone_pct and hispanic_latino_pct are separate race and ethnicity measures (Hispanic/Latino can be of any race), not mutually exclusive categories. aqi is always null here (annual file carries no AQI column) — for site-level AQI use air_quality_daily.

View — columns are resolved by the query engine at runtime.