Researchers & Developers

Data & API

YourWaterReport.com aggregates county-level groundwater quality data from federal and state databases into a structured, queryable format. Our API and bulk data downloads are designed for researchers, public health professionals, environmental consultants, and developers building water quality tools.

What data is available

Our dataset covers county-level groundwater quality aggregates for the contiguous United States, derived from the Water Quality Portal (WQP), USGS NWIS, and supplementary state sources. See our Methodology page for full source documentation.

County-level analyte aggregates

For each county-analyte combination with sufficient WQP records, we provide:

  • Median concentration (50th percentile)
  • 90th percentile concentration
  • Detection frequency (% of samples above method detection limit)
  • Sample count (n)
  • Date range of included records
  • Primary aquifer type(s) sampled

Analytes covered

Arsenic, nitrate, uranium, radium-226, radium-228, fluoride, iron, manganese, pH, hardness (Ca+Mg), and turbidity. Coverage varies by county based on available monitoring data in the underlying databases.

Housing age index

County-level percentage of housing units built before 1986 (lead solder era), derived from U.S. Census Bureau American Community Survey 5-year estimates. Used as a proxy for lead exposure risk from premise plumbing.

Data update schedule

County-level aggregates are refreshed quarterly. Housing age data follows the ACS release schedule. Each API response includes a last_updated timestamp for the county's data.

Licensing

Underlying data from USGS, EPA, and Census Bureau is in the public domain. Our aggregated county-level dataset is made available under the Creative Commons Attribution 4.0 International (CC BY 4.0) license. You are free to use, share, and adapt it with attribution.

Attribution format: "County groundwater data from YourWaterReport.com, aggregated from USGS Water Quality Portal and NWIS. yourwaterreport.com/data/"

Research use

If you are using our data in a research publication or public health study, we would appreciate hearing about it. Researchers who share their work help us improve our coverage and methodology. Contact us at the address below.

Contact

For API access questions, bulk data requests, research partnerships, or data corrections: data@yourwaterreport.com

API Overview

The YourWaterReport.com API provides programmatic access to county-level groundwater quality aggregates. The API is REST-based and returns JSON. All endpoints are read-only. No authentication is required for the current public beta.

API Status: Public Beta. Endpoints and response formats may change. We will provide advance notice of breaking changes via this page and to registered users. Rate limit: 100 requests per minute per IP.

Base URL

https://api.yourwaterreport.com/v1

Endpoints

GET /county/{fips}

Returns all available analyte aggregates for a single county, identified by its 5-digit FIPS code.

Parameters:

  • fips (path, required) — 5-digit county FIPS code, e.g., 26161 for Washtenaw County, Michigan

Example request:
GET https://api.yourwaterreport.com/v1/county/26161

Example response:

{
  "fips": "26161",
  "county_name": "Washtenaw County",
  "state": "Michigan",
  "last_updated": "2026-01-15T00:00:00Z",
  "analytes": {
    "arsenic": {
      "median_ppb": 3.2,
      "p90_ppb": 11.4,
      "detection_pct": 72,
      "sample_count": 184,
      "date_range": ["1993-04-01", "2024-11-30"]
    },
    "nitrate": {
      "median_mg_l": 1.1,
      "p90_mg_l": 4.8,
      "detection_pct": 58,
      "sample_count": 312,
      "date_range": ["1987-06-01", "2024-11-30"]
    }
  },
  "housing_pre1986_pct": 41.2
}

GET /county/{fips}/analyte/{analyte}

Returns data for a single analyte in a single county.

Parameters:

  • fips (path, required) — 5-digit county FIPS code
  • analyte (path, required) — analyte slug: arsenic, nitrate, uranium, radium226, radium228, fluoride, iron, manganese, ph, hardness, turbidity

GET /state/{state_abbr}/summary

Returns county-level summaries for all counties in a state.

Parameters:

  • state_abbr (path, required) — two-letter state abbreviation, e.g., MI

Error responses

StatusMeaning
200Success
404FIPS code not found or no data available for requested county/analyte
429Rate limit exceeded
500Server error — please report via data@yourwaterreport.com

Bulk data downloads

Full county-level datasets are available as CSV and JSON downloads. These are refreshed quarterly and are available without API rate limits.

Available files

File Format Description
county_arsenic_aggregates.csv CSV Arsenic median, P90, detection %, sample count for all U.S. counties with data
county_nitrate_aggregates.csv CSV Nitrate (as N) aggregates by county
county_radionuclides_aggregates.csv CSV Uranium, Ra-226, Ra-228 aggregates by county
county_aesthetics_aggregates.csv CSV Iron, manganese, pH, hardness, turbidity aggregates by county
county_housing_age.csv CSV Pre-1986 housing percentage from Census ACS by county
county_all_aggregates.json JSON All analytes in a single JSON file, keyed by FIPS code

Access

Bulk download files are available at https://data.yourwaterreport.com/bulk/. Email data@yourwaterreport.com to register for download access and be notified of quarterly refresh updates.

Column definitions

ColumnDefinition
fips5-digit county FIPS code (zero-padded)
county_nameCounty name
state_abbrTwo-letter state abbreviation
analyteAnalyte name (WQP characteristic name)
median50th percentile of all measurements; units in column header
p9090th percentile
detection_pctPercentage of samples above method detection limit
nSample count
date_minEarliest sample date (YYYY-MM-DD)
date_maxMost recent sample date (YYYY-MM-DD)
last_updatedDate this county's aggregate was last recomputed

Methodology reference

See our Methodology page for complete documentation of data sources, processing steps, and known limitations before using this data in research or applications.