Methodology & Data Sources
Data Sources
PlainLakes compiles records from two official federal data systems, and only these two:
- EPA ATTAINS (Assessment, Total Maximum Daily Load Tracking and Implementation System). ATTAINS is the EPA system that holds the Integrated Reports: the water-quality assessment decisions that states, and tribal nations with Clean Water Act section 518 authority, are required to submit under Clean Water Act sections 303(d) and 305(b). It is the official federal record of whether a waterbody supports its designated uses, which uses are impaired, and what the reported causes of impairment are.
- USGS National Water Information System (NWIS) (waterdata.usgs.gov/nwis). NWIS is the U.S. Geological Survey's national hydrologic database. PlainLakes draws daily lake and reservoir water-surface elevation, reservoir storage, and gage height observations for the trailing 365 days at monitored sites.
Data Vintage & Coverage
The two sources move on different clocks, and PlainLakes presents them separately:
- Assessment data (ATTAINS): assessment decisions are made by the environmental agency of the government that reports the waterbody, and submitted to EPA on reporting cycles that are typically every 2 years. Some reporting agencies lag behind that schedule, so the most recent assessment shown for a lake can be several years old. Each page shows the reporting cycle its verdicts come from, and names the government that filed them.
- Whether a report is final: ATTAINS records how far through its own process each government's Integrated Report is, and not every one is finished. Six governments are serving a cycle that is open for public comment and three are under an interim EPA action; on 3,550 records (1,541 of them with a page here) the verdict was decided inside one of those unfinished cycles, and can change before it is submitted to EPA. Every one of those pages says so, above its figures. A verdict carried into an unfinished report from an earlier cycle was decided in the earlier one and is not qualified. PlainLakes uses EPA's own words for the status and adds no meaning to them: EPA publishes the code list but no definitions for it.
- Whose decision each verdict is: ATTAINS records the agency responsible for every designated-use verdict and every 303(d) listing, and it is not always the government that filed the report. On 75 records (49 of them with a page here) at least one determination is EPA's rather than the reporting agency's, and on 38 of those pages every determination is. The Clean Water Act provides for EPA to identify waters a state has not identified when EPA does not approve that state's list (section 303(d)(2)); ATTAINS records which agency is responsible, never why, so PlainLakes names the agency and stops there. Every affected page marks the individual rows and says so above its figures, and both the per-lake and per-state exports carry the agency per determination.
- Water-level data (NWIS): the trailing 365 days of daily values at sites with an active USGS gage. Readings are ingested as daily-batch snapshots, never real-time. A daily value is one statistic of that day's readings: usually the daily mean, sometimes the day's maximum or minimum or a single reading at a fixed clock time. USGS records which. Where USGS files more than one statistic for the same gauge and parameter, choosing between them is PlainLakes' own rule: the daily mean is preferred, then a timed observation, and a maximum or a minimum is taken only when nothing else is filed. Every page that prints a reading names the statistic it is showing. See which daily figure.
- Geographic coverage: PlainLakes covers the lake-type waterbodies that a state or tribal government has reported to EPA ATTAINS under the Clean Water Act from the 50 states and the District of Columbia. That register is the whole corpus: it is not a census of every lake in the United States. USGS water-level records are matched onto waterbodies that are already in that register, so a gauge adds a water level to a lake PlainLakes covers — it never adds the lake. A lake that USGS monitors but no agency has reported to EPA does not appear here. ATTAINS also carries assessment units an agency has retired — closed permanently, usually because the water was re-divided into new units assessed in its place. Every total on this site counts the current register only, because a retired unit and the units that replaced it would otherwise count the same water twice. Retired units keep their pages, which say so, and each state page reports how many it has. EPA ATTAINS also carries 24 lake-type assessment units filed from U.S. territories that PlainLakes does not cover: Puerto Rico 18 of 358 active units, and the Northern Mariana Islands 6 of 90 active units. EPA types every one of those filing organizations “State”, the same as a state agency.
How We Process the Data
The pipeline transforms the raw federal records into searchable pages:
- Download assessment records from EPA ATTAINS and daily observation records from USGS NWIS
- Match assessment units and monitoring sites to named lakes and reservoirs, and match waterbodies to their states (the gauge match is PlainLakes' own inference: see how a lake gets a water-level record)
- Normalize the reported use-support verdicts (Fully Supporting, Not Supporting, and related categories) and the reported impairment causes into consistent labels
- Attach the trailing 365 days of water-level observations where a lake has an active gage
- Load everything into a structured database from which every page is rendered
No data is fabricated, interpolated, or editorially modified. Assessment verdicts, impairment causes, and water-level readings come directly from the source records. PlainLakes does not compute its own water-quality scores and does not reclassify any reporting agency's decision. Where a source field is missing for a waterbody, the page says the data is not available rather than filling the gap.
PlainLakes republishes two public records. It also makes fifteen decisions of its own, which are choices between things the sources filed rather than figures derived from them, and every one of them is stated here rather than buried.
- Which filed units are one lake. States file one lake as several assessment units at different acreages. Where PlainLakes judges several filed units to be one water, because they report the same acreage or their identifiers are one identifier with a segment suffix on it, it ranks them as one lake and shows the largest unit, saying so on the row. Units it cannot tie together stay separate, so a lake filed in pieces with unrelated identifiers can still appear more than once.
21,238 filed units judged to share a lake with another, 1,308 with a page here. - Which filed units are one lake, where no acreage can say. A ranking row stands for one water, and PlainLakes decides which filed units that means by the acreage the states file: two units under one name in one state, agreeing to the rounded acre, are the same water filed twice. 2,407 units carry no acreage — some are filed in shoreline miles, some in square miles, some with no figure at all — and for those the measured agreement that licenses a collapse does not exist. Michigan files six different “Round Lake” units, each one declared by Michigan to be an entire lake; they are six lakes. So PlainLakes collapses a sizeless group only where the filer’s own location text declares every member a part of one water — a named span between two endpoints, or the words “portion of”. Where the filer says nothing, the units stay separate. That asymmetry is the judgement: collapsing two real lakes into one hides a lake from its own ranking and a reader can never see that it happened, while keeping them apart at worst shows two rows under one name that a reader can see and open.
163 filed units with no acreage to identify them by, 50 with a page here. - Whether a filed unit is a lake or a category of lakes. Some states file assessment units that stand for a group of waters rather than for one water — “Unassessed Lakes in HUC 041000020203”, “Lakes and Reservoirs near the Colorado River”, “Presumed Use Lakes”, “Hanson, Lower Cannon, Dog, Slide Rock and Horse Heaven Lakes”. ATTAINS has no dedicated field marking them. Where the filer says so itself, PlainLakes follows the filer: New York records the location of 378 units as “total area of both lakes” or “total area of all three lakes”, which states that the reported acreage is a sum over several waters, and those records are treated as groups on that basis rather than on ours. Everywhere else the judgement is PlainLakes’ own and is made on the filed name: a plural water word used as a category rather than as a proper name — located by an area, qualified by a filing status, or naming its members outright as a list. Every such record is kept and says what it is; none is counted in the populations the word “lakes” counts.
2,478 filed units ruled filing categories, none with a page here. - Whether a filed unit is the lake it is named for. Michigan files the protection zone around each public drinking-water intake as its own assessment unit and names it after the lake the intake sits in, so 36 records arrive under five Great Lakes names carrying a standard 1.5 square miles rather than the size of any water. ATTAINS has no field marking them. The filer says so itself on both sides — each zone’s location text names the plant and its intake, and the units that are the lakes read “not including Drinking Water CAZs” — so PlainLakes follows the filer in treating the two as different things. The judgement that is PlainLakes’ own is what follows from that: such a record is not counted among lakes, not ranked or compared by area, and not offered to search engines as a lake page. Every one is kept and says what it is.
36 filed units ruled drinking-water intake zones, none with a page here. - Which monitoring site belongs to which lake. The link between an assessed waterbody and a monitoring site is inferred by PlainLakes rather than republished: no federal source publishes a crosswalk between an ATTAINS assessment unit and an NWIS monitoring site, so PlainLakes matches them by name, declines any name that fits more than one waterbody, and names the site it reads wherever a lake carries more than one. This decides whether a lake has a water-level record at all.
123 waterbodies linked to a monitoring site, 106 with a page here. Stated in full below. - A site name that fits more than one assessed lake. Where a monitoring site’s name fits more than one assessed waterbody in its state, PlainLakes declines the site rather than guessing which lake it belongs to, and those lakes publish no water level. The refusal is stated because it is this portal’s act and not a gap in federal monitoring: a site declined here is still in NWIS.
219 assessed lakes whose only matching site names were refused as ambiguous, 96 with a page here. - Which of several sites on one lake is the lake’s record. Where several monitoring sites carry a lake’s name, the record follows the one reporting the densest 365-day series, with the lowest NWIS site number breaking a tie. Every term is a property of the data rather than of the order the inventory listed its sites in, so the site a page reads does not change when the inventory is re-published.
16 lakes carrying more than one monitoring site, 13 with a page here. - The opening location sentence, where the state filed codes. Where a state files its location as county codes rather than a sentence, PlainLakes composes the sentence from those codes, naming up to three counties and counting the rest. The counties are the state's; the wording is PlainLakes'.
20,643 sentences composed from county codes, 1,218 with a page here. - The opening location sentence, where the state filed prose. Where the location sentence that opens a waterbody page is the state's own free text and the state welded a non-geographic clause onto it (an instruction to its own reviewers, or the name of a private individual said to own the property), PlainLakes removes that clause and keeps the geography. No assessment verdict, cause, count or gauge reading is altered.
10 state sentences with a clause removed, 9 with a page here. - What a water-level reading is measured from. Where USGS names no reference frame for a series and the published reading sits hundreds of feet below the monitoring site’s own land-surface altitude, PlainLakes rules the series onto a local project zero rather than the national datum the site inventory files. That is an inference from the reading, and it can only rule a sea-level datum out; it never rules one in. Where USGS does name the frame, its answer stands unchanged.
8 series ruled onto a local zero, 1 with a page here. - Which filed method block describes a series. USGS may file more than one method note for the same gauge and parameter, each with its own readings. Where more than one of them describes the lake, PlainLakes chooses which one the series is.
5 series with more than one block to choose from, 2 with a page here. - A method note naming a different water. Some of the notes USGS files name the released flow below a dam rather than the lake behind it. PlainLakes refuses such a note as that lake’s own record, and where every note USGS filed for a series names a different water it publishes no level for that series rather than substituting one.
2 series with a block refused as a different water, none with a page here. - Which daily statistic a reading is. A USGS daily value is one statistic of that day’s readings. Where USGS files several for the same gauge and parameter, PlainLakes prefers the daily mean, then a timed observation, and takes a maximum or a minimum only when nothing else is filed. Every page that prints a reading names the statistic it is showing.
181 series whose daily statistic was chosen, 6 with a page here. - Which parameter is the lake’s level. USGS files a lake’s water-surface elevation under several parameter codes: most name the vertical datum the reading is measured from and one leaves it unstated, and a gauge may also file a gage height, measured from its own local zero rather than from any datum. Where a gauge files more than one reading in feet, PlainLakes publishes the one whose reference frame the source names, in preference to one the source leaves unnamed, and an elevation in preference to a gage height.
29 gauges filing more than one reading in feet, 10 with a page here. - A reservoir storage series offered as a level. USGS files reservoir storage against the same gauges it files water levels against. Storage is a volume in acre-feet, not a height, so PlainLakes refuses it as a lake’s level: where a gauge files storage alongside a reading in feet the reading in feet is published, and where storage is all it files PlainLakes publishes no level for that lake rather than printing a volume under a level heading. The storage series is still shown, named as what it is.
106 gauges whose reservoir storage was refused as a level, 17 with a page here.
Each of these is a choice between records the sources filed, or a clause removed from one. None of them changes an assessment verdict, an impairment cause, a count, or a gauge reading.
How a Lake Gets a Water-Level Record
Neither EPA nor USGS publishes a crosswalk between an ATTAINS assessment unit and an NWIS monitoring site. The two records name the same lakes in different vocabularies and share no common identifier, so PlainLakes has to decide which gauge, if any, belongs to which waterbody. A monitoring site is attached to a lake only on an exact name match within the same state that identifies one assessed waterbody, and only when that site reports daily values: a name fitting two waterbodies is left unlinked rather than guessed. Where several sites on one lake carry its name, the record follows the one with the densest 365-day series and names it.
That rule is deliberately strict, and the cost of the strictness belongs on this page: of 1,383 active sites in the USGS National Water Information System that it files as lake or reservoir monitoring sites ingested, 1,187 carry no name that identifies a single assessed waterbody and were left unlinked. The 196 that did match reach 167 waterbodies rather than 196, because 16 lakes carry more than one site: those 29 extra sites matched a waterbody too, and are counted here as matched rather than folded into the unlinked figure above. Of those 167 waterbodies, 44 are attached to a gauge reporting no daily water level or reservoir storage values in the trailing 365-day window, so no level record renders for them either. That leaves 123 waterbodies carrying a water-level record.
11 of the 1,383 ingested sites are registered in NWIS to an agency other than USGS (TX071 and USCE); none of them reports daily values, so no water level PlainLakes publishes comes from one. NWIS publishes the code, not an agency name, so this page names the code as filed; the station names those sites carry begin with the operators’ own abbreviations.
The practical consequence for a reader: a lake showing no water level here has not been shown to lack USGS monitoring. The likeliest explanation is that no site name pointed at one waterbody and PlainLakes declined to choose between them. A wrong gauge attached to a lake would put a real, precise, federally-sourced number on the wrong body of water, which is a worse failure than showing none, so a name fitting two waterbodies is refused outright. The mirror case is not ambiguity and is not refused: a lake can legitimately carry several monitoring points. Where several monitoring sites carry a lake’s name, the record follows the one reporting the densest 365-day series, with the lowest NWIS site number breaking a tie. Every term is a property of the data rather than of the order the inventory listed its sites in, so the site a page reads does not change when the inventory is re-published. Those records name every site on the lake and the one they read. To check whether a specific lake is gauged, search the USGS National Water Information System directly.
Who Reports the Assessments
ATTAINS is often described as a state register, and that description is wrong often enough to matter. Under section 518 of the Clean Water Act, EPA can approve a federally recognized tribe for "treatment in a similar manner as a State" (commonly written TAS). A tribe with that approval sets water-quality standards for waters under its jurisdiction, assesses them, and files its own Integrated Report to EPA. Those decisions are the tribe's own; the state whose borders the water sits inside did not make them and cannot change them.
In the lake and reservoir records PlainLakes publishes, 50 state
agencies and 16 sovereign tribal nations are
the reporting organizations. The tribal nations file 228 assessment
units across 8 states, of which 54 meet
the threshold for a published lake page. Every page names the government that filed the
record it shows; the page for each of those 8 states names every
tribal nation reporting inside its borders with the number of units each filed, because a
state total on this site is the sum of what all of those governments filed rather than the
state agency's own file. This site classifies a
filer using EPA's own organizationTypeText field, never a hand-maintained list,
so a nation that EPA approves for TAS after this page was written is described correctly
the first time its records appear.
The practical consequence for a reader: if you disagree with an assessment verdict, the government to take it up with is the one named on the page, which is not always the state the lake sits in.
How Rankings Treat Duplicate and Administrative Units
A ranking of lakes has to answer two questions the raw assessment file does not. Every waterbody page still renders its own unit's data exactly as filed; only the ranked lists apply these two rules:
- The same lake filed twice. A reporting agency sometimes files one waterbody under two active unit IDs. Alaska carries Iliamna Lake twice at an identical 960,000 acres, and Minnesota files Lake of the Woods both under its bare name and as "(Main)" at 301,348 acres. A ranking collapses units that share a state, a canonical name, and an identical rounded acreage, keeping the unit that best answers the question that ranking asks: the largest where the ranking is by size, the most-listed where it is by impairment count. Keeping the fuller assessment in a size ranking would rank a lake by whichever segment the state studied hardest. The rule is deliberately narrow: a parenthetical is usually a real distinction, not a duplicate, so "Long (Milton)" and "Long (Shefld)" or "Timber Lake (North)" and "Timber Lake (South)" remain separate entries. Nested units filed under genuinely different names (a whole-lake unit alongside a named bay) are also listed separately rather than merged on a guess.
- Units that are not waterbodies. A few states file administrative buckets as assessment units: Illinois reports "All Other Uncoded Lakes" and "Collectively, Illinois Lakes … Not Assigned to a Specific Assessment Unit", and Nevada files units named only "Station 93" and "Station 96". These are real source records, but they describe a collection or a monitoring point rather than a named lake, so they are excluded from rankings instead of being presented as lakes. They remain inside the state and national totals, which report what the reporting agencies filed. Two units are excluded from those totals as well, and only two: EPA ships a test organization inside the production register, and its two fixture records (one openly named "Test AU" in Arizona, one indistinguishable from a real lake in New Mexico) are dropped by organization identifier, never by a name pattern that would eventually delete a genuine Test Lake.
How "Similar Lakes" Peers Are Picked
Every waterbody page's "similar lakes" panel is a nearest-neighbor match on two independent axes: comparable EPA ATTAINS-filed acreage, and comparable listed impairment-cause count, always excluding lakes from the same state. Cause peers skip any lake already listed in the acreage column, so the two link sets stay distinct rather than repeating the same names twice.
What the Assessment Terms Mean
The verdicts on PlainLakes pages are the reporting government's own regulatory categories. "Fully Supporting" means the reporting agency found the waterbody meets the water-quality standard for a designated use, such as recreation or aquatic life. "Not Supporting" means it found the waterbody does not, and the waterbody is typically listed as impaired for that use. An impairment cause names the reported problem, for example mercury, nutrients, or pathogens. Waterbodies impaired and still needing a cleanup plan appear on that government's section 303(d) list.
Limitations
- Not every lake is assessed. Reporting agencies assess a subset of their waters each cycle. A lake with no assessment on PlainLakes has not been assessed and reported; that does not mean its water is clean, and it does not mean it is polluted.
- Assessment data lags, and the cycle is not the measure of it. Reporting cycles are typically 2 years and some agencies submit late, so a verdict can describe conditions from an earlier period. The reporting cycle is when the state submitted the finding, not when it measured. Where the state filed a monitoring year, that year is shown beside the cycle on the lake page, and it is the one to read for how current the evidence is: the two can be decades apart. Where the state filed no monitoring year, the lake page says so rather than falling back to the cycle.
- Methods differ between reporting governments. Each state, and each tribal nation with section 518 authority, applies its own water-quality standards and monitoring strategy, so comparing assessment outcomes across those lines is not an apples-to-apples comparison.
- Water levels are daily-batch snapshots, and the latest reading is always provisional. Readings are the trailing 365 days of daily values, refreshed in batches, never real-time. USGS marks every daily value approved for publication or provisional, and quality review runs months behind collection: on the current build the latest reading is provisional on every gauge record this site publishes, and about half of each 365-day window is still awaiting approval. Each gauge record names the date USGS has approved it through, and a provisional value is subject to revision by USGS.
- Most assessed lakes carry no water-level record. A lake shows no level record for one of six reasons, ordered here by how often each applies on this build:
- the waterbody carries a name, and no monitoring site in NWIS carries one that identifies it, at any status, in either the lake-site inventory or among the sites reporting lake or reservoir level under another site type, so there is nothing to match it to (64.2% of them)
- the assessment unit is filed without a name, so the name match PlainLakes relies on was never possible for it (28.8% of them)
- NWIS lists a lake monitoring site named for the waterbody, but the site is not active, and PlainLakes ingests only the active inventory, so there is no series to attach (6.5% of them)
- a site carries the lake’s name, but that name fits more than one assessed waterbody in the state, and PlainLakes declines it rather than guessing (0.3% of them)
- a site was matched, but it reports no daily water level or reservoir storage values in the trailing 365-day window (44 lakes)
- NWIS carries a monitoring site named for the waterbody that records lake or reservoir level, but files it under a site type PlainLakes does not fetch, so the site is not in the inventory this portal matches names against (7 lakes)
- This data is provided for informational purposes only.
Fish Consumption: Check the Advisory First
A fish-consumption use status is a starting point, not advice on what is safe to eat. ATTAINS records whether the reporting agency found the fish-consumption use supported or impaired, but fish advisory programs publish the specific guidance: which species to limit, how many meals per month, and stricter limits for children and pregnant women. Advisories are more specific and more current than ATTAINS use verdicts. Before eating fish from any lake, consult the fish advisory program for those waters, which is run by your state health or environmental agency and, for waters under a tribal government's jurisdiction, by that government. This site does not provide medical advice.
Data reuse and citation
- CSV download (live): plainlakes-state-lake-statistics.csv - state-level ATTAINS assessment rollups matching the national statistics page. License: CC BY 4.0 for this derived file; cite PlainLakes and EPA ATTAINS.
- Embeds: charts and tables on lake and state pages are rendered HTML with named sources. We do not offer third-party iframe embeds today. Reuse derived counts with attribution.
- Commercial data licensing, API access, and bulk extracts beyond the published CSV are not activated - contact us if you need a custom arrangement.
Monetization and partnership readiness
Readiness only, nothing below activates revenue without operator review. PlainLakes is in the AdSense getting-ready queue for display advertising. If approved, ad units would follow Module 36 density ceilings and would never sit adjacent to fish-consumption or other health-adjacent interpretive advice (this site publishes registry-style ATTAINS/USGS figures only). YMYL-compliant affiliate or referral placements are not live; any future activation would require clearly labeled, non-advice adjacency and operator sign-off. Alternative ad-network eligibility paperwork may be prepared against standard environmental-data publisher criteria (for example Media.net content guidelines), but activation remains operator-gated.
Contact
Questions about the methodology or data? Contact us, or report a suspected data error to corrections@plainlakes.com. Corrections are checked against the cited source records.
PlainLakes is rendered directly from EPA ATTAINS assessment decisions and USGS NWIS daily water-level observations, as this page documents, no number is typed in by an editor. This methodology page is itself part of the trust fabric it describes: every filer count, gauge-link figure, and coverage exclusion above is queried from the database, never typed by an editor. See our editorial standards & corrections policy, the methodology behind these numbers, or report a data error. Data current as of 2026-08-17.