How statuses are worked out
The principle
err on the side of safety. If there is some likelihood the water could be compromised, show it; authorities may gloss over potential risk. Where a rule is uncertain, the more cautious reading applies and the page says why.
So where a rule is uncertain, the cautious reading applies and the page says why: a discharge with no reported end does not fade quietly, a record with no status stays yellow for a while, and the caution after the authority's window is the evidence-based span rather than the shortest one anyone uses.
Source: rules.json version 2026-11-02b (data/rules.json in the project, copied into the export), owner decision 2026-11-02.
DirtyWaterWatch reads reports that sewer operators, state agencies and EPA publish, places each one on the water it reaches, and colours that water by the reports in effect. It does not test water. Waters drawn without colour are not covered by any source we follow yet.
The rules
Each water's status is worked out for every hour from the event records. When several rules apply, the strictest wins: red, then yellow, then unresolved, then grey.
Advisory in effect
- A discharge is reported as ongoing (for up to 7 days with no end reported); or
- it ended less than the authority's own period ago (the table below, by state); or
- an official advisory is in effect: a beach closure or bacteria advisory, a cyanobacteria advisory, or a shellfish closure tied to a sewage discharge, until the authority lifts it.
Caution
- The authority's period has passed but the discharge ended less than the caution span ago: 72 hours by default, longer or shorter for some event types and water kinds (below); or
- a discharge record with no status (an alert with no incident report, a notice we could not read) was reported less than 14 days ago; or
- a precautionary rainfall advisory is posted at a beach.
Unresolved: no end reported
A discharge reported as ongoing whose end was never reported: after 7 days it turns hatched yellow, "unresolved: no end reported", until day 30, and it is listed with the discharges in effect. After that it leaves the map but stays flagged on its water and event pages.
No current report
At least one source covers the water and none of the rules above applies. It is drawn as an outline only.
Source not updating
A source covering the water has not answered, or has not changed, within the schedule we expect of it. The water keeps its colour and gets a hatched purple band, and its page says since when. Each feed's schedule and health are on the sources page.
A time known only to the day counts as the whole day. Hours count from the reported end of the discharge.
Rain-triggered caution is not yet shown. Heavy rain over a combined-sewer community with no notice received will be shown yellow ("discharge likely; no report received") once it is built from each permittee's own history and rainfall data. Until then, a water with no report after heavy rain stays grey.
Rivers: the modeled downstream reach
A river is not coloured as a whole: one outfall in Springfield says nothing about the river in Northfield. A discharge colours a stretch below its outfall instead, drawn dashed: Modeled downstream reach (estimate, not verified by sampling). It is traced down the river network (USGS NLDI and NHDPlus) to the head of tide or the first lake, 40 km at most, with travel times from the flow at the nearest USGS gauge (Jobson 1996). A ring marks where the model stops. Lakes, ponds and reservoirs are still coloured as a whole.
Why 40 km: Owner's safety principle: the modeled reach runs to the head of tide or the first lake, with 40 km as the outer cap (the Connecticut is tidal about 27 km below Springfield's first outfall, so the whole non-tidal reach to Windsor is covered). The cap is drawn and labelled on the map.
Every event keeps three layers apart: the outfall the operator reported, the waters the notice itself names (quoted, never extended), and the modeled reach, which is our calculation and not an official advisory area.
How long a water stays coloured, and why
Advisory windows the status computation applies (docs/plan.md section 2). Owner decision 2026-11-02: 72 hours is the site default for the yellow caution, overridable by event type, water kind and water body, each with its rationale, so the rule can be adjusted and explained. Red is always the authority's own window, quoted as theirs. Hours count from the reported end of the discharge (ended_at); while a discharge is ongoing it is red. Resolution order for yellow: by_water > by_water_kind > by_event_type > default. Every override must carry a rationale and a source; the methods page prints this file.
Red: the authority's own period, by state
Advisory in effect: the authority's stated period after the discharge ends. Null means the authority states no period, so the water is red only while the discharge is ongoing.
| State | Period | Counted from | Basis, as the authority puts it | Research |
|---|---|---|---|---|
| Massachusetts | 48 hours | end of discharge | 314 CMR 16.04(10)(g): every notice must say "Avoid contact with these water bodies for 48 hours after the discharge or overflow ceases" | research/ma/report.md |
| Vermont | 48 hours | end of discharge | 10 V.S.A. 1295(e): signs stay in place for 48 hours after the untreated discharge has stopped; DEC advice: avoid swimming, wading, boating or fishing after overflows | research/nh-vt/report.md |
| Connecticut | 48 hours | end of discharge | CT DEEP, 2026-07-07: "During and within 48-72 hrs of rain events, the Connecticut River and the Long Island Sound may see elevated health risk" (DEEP counts from rain; the site counts from the reported end and shows both) | research/ct/report.md; research/science/report.md 2.6 |
| Rhode Island | 48 hours | end of discharge | Narragansett Bay Commission CSO Alarm Map: "During rainstorms and up to 48 hours after a sewage overflow, there may be increased health risks from non-contact recreational activities, such as paddling, fishing, etc."; no statewide rule | research/ri/report.md |
| New Hampshire | 72 hours | end of discharge | RSA 485-A:8 III: CSO partial-use criteria apply during discharges "and up to 3 days following cessation"; EPA permits require 2-hour notice but state no public window | research/nh-vt/report.md |
| Maine | none stated | end of discharge | No authority states a post-discharge period; Maine Healthy Beaches rainfall advisories say avoid contact for at least 24-48 h after rain ceases (applied to rain_advisory records, not discharges) | research/me/report.md |
| New York | none stated | end of discharge | SPRTK notices state no period; NYC DEP's waterbody advisory system issues its own "on advisory until" times, which are used when present | research/ny/report.md |
Yellow: the site's caution span
Caution: the site's reading of the evidence, applied after the red window (or from the end of the discharge where there is no red window). Hours count from the reported end of the discharge.
Default: 72 hours. Recovery to criteria takes about three days in the only large daily dataset (Ackerman and Weisberg 2003: elevated up to 5 days, generally under standards within 3); surfer illness concentrated in the 2-3 days after rain (Arnold 2017); sewage aged about 3 days brings modelled swimmer risk under the benchmark (Boehm 2018); the EU's short-term pollution definition is about 72 h; NH's statute assumes up to 3 days. Longer in cold or turbid water and in still water; shorter at the outfall of a big river at high flow. Treated as a site default to be adjusted per water and type as evidence arrives (docs/decisions.md section 8).
Overrides, most specific first (a water, then a kind of water, then a type of event):
| Applies to | Span | Rationale | Source |
|---|---|---|---|
| Event type: Combined sewer overflow | 72 hours | Untreated sewage and stormwater; CSO effluent median 215,000 fecal coliform/100 mL (EPA 2004), needing about a thousandfold dilution to reach the beach value; the default applies | research/science/report.md 2.8 |
| Event type: Sanitary sewer overflow | 72 hours | Raw sewage, often dry weather, higher strength per gallon than a CSO (dry-weather SSO up to 10^9/100 mL) but usually smaller volume and no stormwater dilution; the default applies until local evidence says otherwise | research/science/report.md 2.8 |
| Event type: Bypass | 72 hours | Partially treated or untreated flow around a plant; strength depends on which process was bypassed and whether disinfection ran, which notices rarely say; the default applies | research/science/report.md 2.8 |
| Event type: Treatment plant bypass | 72 hours | Same as bypass | research/science/report.md 2.8 |
| Event type: Blended (partially treated) discharge | 72 hours | Blended discharges are partially treated flows mixed with treated effluent and often disinfected, which would justify 48 h (disinfected effluent under 200/100 mL against a CSO median of 215,000, EPA 2004); but notices rarely confirm disinfection, so under the owner's safety principle the full 72 h applies unless the notice confirms the discharge was disinfected (then 48). | research/science/report.md 2.8; docs/decisions.md 8 |
| Event type: Beach advisory | follows the authority | Follows the authority: the advisory stands until the authority lifts it (next sample under the standard); no site window | docs/science.md |
| Event type: Beach closure | follows the authority | Follows the authority | docs/science.md |
| Event type: Rainfall advisory | follows the authority | Follows the authority's rain rule (Maine Healthy Beaches 24-48 h after rain ceases; NYC 12-24 h by rainfall depth); no site window | research/me/report.md |
| Event type: Cyanobacteria advisory | follows the authority | Cyanobacteria advisories stand until the authority lifts them; aged out 14 days after the last confirmation | research/nh-vt/report.md |
| Event type: Shellfish closure | follows the authority | Follows DEM/DMR; a shellfish closure tied to a plant is shown as context for swimmers and boaters, not as a swimming advisory | research/ri/report.md; research/me/report.md |
| Event type: Annual total | follows the authority | Never colours a water; history only | docs/plan.md |
| Event type: Unclassified record | 72 hours | An unparsed discharge notice is treated as a discharge | docs/plan.md |
| Water kind: lake | 96 hours | Still water does not flush the plume; enterococci T90 in lake water reached 13.5 days and growth was seen at 5-10 C in nutrient-rich water (Environment Agency SC250004/R 2026); sediment stores and resuspends bacteria (Korajkic 2019). Proposed, to adjust. | research/science/report.md 2.8 |
| Water kind: pond | 96 hours | As lake | research/science/report.md 2.8 |
| Water kind: reservoir | 96 hours | As lake | research/science/report.md 2.8 |
No end reported
Events whose source never reports an end (sources often skip the ceased notice). Under the safety principle they do not fade quietly.
| Case | Shown | Rationale |
|---|---|---|
| Reported ongoing, no end | Red for 7 days | An ongoing notice stays red until the source reports an end or 7 days pass; the permittee not reporting an end is itself a signal (MassDEP: Worcester WOR001 notices 'ongoing' for weeks; VT reports pending for months). |
| Still no end after that | Hatched yellow, "unresolved", to day 30 | From day 7 to day 30 the reach or water is shown hatched yellow 'unresolved: no end reported', listed under active discharges with that label; after 30 days it leaves the map but stays flagged unresolved on the water and event pages. |
| Discharge record with status unknown | Yellow for 14 days, then unresolved | A discharge record with status unknown (an alert with no incident report, an unparsed notice) is yellow for 14 days from its report time, then unresolved as above. |
Conditions shown beside a status
Shown beside the status as conditions, never as a change to the window until calibrated: water temperature under 15 C and turbidity over 200 NTU from the nearest gauge extend persistence (Kay 2005; Korajkic 2019); high flow dilutes and moves the plume downstream faster (Jobson 1996 travel times).
- cold water c: 15
- turbid ntu: 200
Rain-likely caution
Not yet shown. Phase 2 (owner's safety principle): heavy rain over a CSO community's sewershed with no notice received is shown yellow 'discharge likely; no report received'. Thresholds per outfall are derived from the permittee's own history (MassDEP records carry rainfallData for 19,399 events) and from published rules (SWSC permit dry day < 0.1 in; NBC/RI DEM shellfish closures at 0.5 in; NYC 1.5 in). Rainfall from MRMS QPE at the outfall point. Until built, the methods page says rain-triggered caution is not yet shown.
Source: rules.json version 2026-11-02b (data/rules.json in the project, copied into the export), owner decision 2026-11-02.
What each colour means, and what it does not
- Advisory in effect
A sewage discharge on this water is reported as ongoing, or it ended less than the authority's advice window ago (48 hours in most New England wording), or an official advisory or closure is in effect. The authorities' advice is to avoid contact with the water.
It does not mean: It is not a water-quality measurement. It does not say how much sewage reached a given spot, and the water can carry bacteria for longer than the window.
On the map: solid line.
- Caution
The authority's window has passed but the discharge ended less than 72 hours ago, or a discharge with no reported end began in the last 7 days, or a rainfall advisory is posted. Research on sewage-borne illness points to about three days of raised risk.
It does not mean: It is not an official advisory, and it is not a test result. The 72-hour span comes from the research, not from the authority.
On the map: dashed line.
- Unresolved: no end reported
A discharge here was reported but its end never was. Sources often skip the "ceased" notice, so after the first week the water is shown hatched yellow until 30 days have passed, and the event stays flagged on its pages after that.
It does not mean: It does not mean the discharge is still running; nobody has said either way. It is shown because a missing end report is itself a reason for caution.
On the map: hatched yellow.
- No current report
At least one source we follow covers this water, and nothing it reports applies right now.
It does not mean: It is not a finding about the water. Discharges go unreported, reports arrive late, and storm runoff carries bacteria too. Follow posted signs and local health advice.
On the map: hollow outline.
- Source not updating
A source that covers this water has not answered or changed within its usual schedule, so a recent discharge may be missing here.
It does not mean: It does not mean a discharge is happening; it means we cannot see as much as usual.
On the map: hatched band.
There is no green. A water with no current report may still carry sewage from an unreported overflow, from storm runoff, or from upstream.
Three times, kept apart
Every event shows three kinds of time, because they can be days apart:
- The event: when the discharge started and ended, at the precision the source gives (to the minute, hour or only the day).
- The source: when the operator reported it, when the agency published it, and when the source last updated the record. Massachusetts operators often file the morning after; a Friday overflow may not be reported until Monday.
- Our fetch: when DirtyWaterWatch last read the record, in UTC.
Statuses use the event's own times. The map's replay shows what we now know was in effect at each hour, including reports filed later.
Citations
Every status, event and figure carries a source line in one form: the authority and the source, the record's id, the source's own time, and our fetch time, with a link to the notice. Each colour also names the rule applied and its statute or study.
Placing a report on a water
Each record says how it was placed: by the outfall's ID in the outfall registry (EPA's inventory and the state layers), by the water's name in the report, by its coordinates, or inferred from the discharger's receiving water. A report that cannot be placed is still listed, under its discharger and in the full event list, but colours no water.
Revisions
Sources revise reports: an "ongoing" notice is followed by a "ceased" update, an estimate by a verified volume. Revisions are kept and linked; the newest one decides the status.
The law, by state
- Massachusetts: 314 CMR 16.04(10)(g): every notice must say "Avoid contact with these water bodies for 48 hours after the discharge or overflow ceases"
- Vermont: 10 V.S.A. 1295(e): signs stay in place for 48 hours after the untreated discharge has stopped; DEC advice: avoid swimming, wading, boating or fishing after overflows
- Connecticut: CT DEEP, 2026-07-07: "During and within 48-72 hrs of rain events, the Connecticut River and the Long Island Sound may see elevated health risk" (DEEP counts from rain; the site counts from the reported end and shows both)
- Rhode Island: Narragansett Bay Commission CSO Alarm Map: "During rainstorms and up to 48 hours after a sewage overflow, there may be increased health risks from non-contact recreational activities, such as paddling, fishing, etc."; no statewide rule
- New Hampshire: RSA 485-A:8 III: CSO partial-use criteria apply during discharges "and up to 3 days following cessation"; EPA permits require 2-hour notice but state no public window
- Maine: No authority states a post-discharge period; Maine Healthy Beaches rainfall advisories say avoid contact for at least 24-48 h after rain ceases (applied to rain_advisory records, not discharges)
- New York: SPRTK notices state no period; NYC DEP's waterbody advisory system issues its own "on advisory until" times, which are used when present
Source: rules.json version 2026-11-02b (data/rules.json in the project, copied into the export), owner decision 2026-11-02.
The science
A two-page summary of research/science/report.md (checked 2026-11-01; 189 numeric criteria in research/science/thresholds.json). It says what is known, what is inferred, and what the site may and may not say. A discharge report is never a safety verdict.
The criteria, by state
Per 100 mL (cfu or MPN). GM is the geometric mean; STV is the statistical threshold value (no more than 10% of samples above it). Nearly all of these numbers protect swimming. None was derived for a sewage plume.
| Jurisdiction | Beaches (health dept.): single sample / GM | Water quality standard, swimming | Boating and paddling, in force today |
|---|---|---|---|
| EPA 2012 (recommendation, not law) | E. coli 235, enterococci 70 (beach action values; 36 illnesses per 1,000 swimmers) | E. coli GM 126 / STV 410; enterococci 35 / 130 | No criterion |
| Massachusetts | Marine enterococci 104 / 35; fresh E. coli 235 / 126, or enterococci 61 / 33 | E. coli 126 / 410; enterococci 35 / 130 | "Secondary contact", but its numbers (E. coli 630 / 1,260; enterococci 175 / 350) apply only to Class C and SC, and no MA water is in them. A January 2026 proposal (E. coli 244 / 794; enterococci 68 / 252) is not in effect |
| Connecticut | E. coli 235 / 126; enterococci 104 / 35 | E. coli GM under 126; single sample 235 at designated swimming areas, 410 non-designated; enterococci under 35 / 104 | "All other uses": E. coli 576; enterococci 500 (boating not named; inferred) |
| Rhode Island | Enterococci action value 60, fresh and salt | Enterococci only: salt 35 / 104; fresh 33 at designated beaches (54 elsewhere) / 61 | Secondary contact; narrative criteria only |
| New Hampshire | Designated beaches E. coli 47 / 88; tidal enterococci 35 / 104 | Class A E. coli 47 / 153; Class B 126 / 406 | No split: one use, "swimming and other recreation in and on the water", includes boating |
| Vermont | E. coli guidance 235 | E. coli GM 126, no more than 10% above 235 (60 days; 30 in CSO waters) | Separate use, narrative criteria only |
| Maine | Marine enterococci 104; fresh E. coli 190 (recommended, not formal) | E. coli 64 / 236 (AA, A, B), 100 / 236 (C), lakes 29 / 194; marine enterococci 8 / 54 | No split: same numbers. The strictest in the region |
| New York (comparison) | E. coli 235; enterococci 61 fresh, 104 marine | Enterococci 35 / 130; coastal fresh E. coli 126 / 410 | Secondary contact; Class I enterococci 72 / 266 (column inferred) |
Sources: 105 CMR 445.031 and 314 CMR 4.05 (MA); RCSA 22a-426-9 and DPH guidelines 2016 (CT); 216-RICR-50-10-3 and 250-RICR-150-05-1 (RI); RSA 485-A:8 (NH); Water Quality Standards Chapter 29A and Dept. of Health guidance, April 2026 (VT); 38 MRSA §465 (ME); 6 NYCRR 703.4 (NY).
Boating: no regulator in New England has a number that says "safe to paddle". Showing a "boating only" verdict would mean choosing a threshold no agency has adopted. EPA has no secondary-contact criterion (2024 user guide); the old "five times swimming" rule came from a 1968 committee's opinion.
Where the 48 hours comes from
Massachusetts requires this text in every permittee notice (314 CMR 16.04(10)(g)): "Avoid contact with these water bodies for 48 hours after the discharge or overflow ceases". Vermont requires signs for 48 hours after a discharge stops (10 V.S.A. §1295). CT DEEP (naming paddlecraft), Nashua, the Narragansett Bay Commission, Boston, Cambridge and the Charles River flags use it too. The clocks differ: MA permittees and Vermont start at the end of the discharge; MWRA, the Mystic group and CT DEEP start at the end of rain.
Origin, inferred from the record: not the Massachusetts statute, which sets no number; MassDEP's response to comments cites no study; it was regional practice before 2021 (MWRA, Boston, watershed groups), and Vermont wrote it into statute in 2016. EPA sets no number.
The nearest evidence points to about 72 hours:
- California beaches stayed elevated up to 5 days after storms and generally fell below standards within 3 (Ackerman and Weisberg 2003). San Diego surfers' excess illness fell in the 2 to 3 days after rain (Arnold 2017). The EU defines short-term pollution as about 72 hours.
- Sewage aged about 3 days brings median swimmer risk below 30 per 1,000 (Boehm, Graham and Jennings 2018).
- New Hampshire's statute assumes up to 3 days after a CSO stops (RSA 485-A:8, III). CT DEEP's July 2026 release says "48-72 hrs".
- Shorter windows exist (DC Water 24 hours; the Mystic model puts advisories in the 1 to 2 days after heavy rain). At Haverhill in 2026, after a sewer break, 4 of 7 Merrimack sites were still over the limit 4 days after the discharge stopped.
Nothing was found that measures how long the Connecticut River at Holyoke, Springfield and Chicopee stays above criteria after a CSO. The site may present 48 hours as the authority's advice. It may not present it as a finding that water is acceptable afterwards. A 72-hour caution, if the owner approves it, is labelled as the site's reading of the evidence.
What a bacteria result tells you, and does not
- E. coli and enterococci indicate fecal contamination; most strains are not what makes people ill.
- A result is yesterday's water. Culture takes 18 to 48 hours (EPA 2014); Vermont's Department of Health says 18 to 24. Same-day qPCR (under 4 hours) exists, but the programs the research looked at use culture.
- A result under a criterion is not a finding of safety. Norovirus and protozoa outlast indicators (Boehm 2018). Cloudy storm water switches off sunlight die-off above about 200 NTU (Kay 2005); sediment holds bacteria (Korajkic 2019).
- Sampling misses CSOs: weekly samples understate peaks (Madoux-Humery 2016). A plume moves downstream as a parcel and hugs the bank (Passerat 2011; Madoux-Humery 2016); that launches are exposed is inferred.
- A single sample over a beach value and a GM or STV over 30 to 90 days answer different questions. Do not blend them.
Risk by activity
- EPA's numbers mean 36 (or 32) excess illnesses per 1,000 swimmers at beaches mostly affected by treated effluent. They are not rates for untreated CSO water.
- Water swallowed per outing: fresh-water beach adults about 22 mL, children 6 to 10 about 59 mL (DeFlorio-Barker 2017); capsizing canoeists about 6 mL, kayakers about 5 mL; rowing and non-capsizing paddling up to 10 to 12 mL an hour at the upper limit (Dorevitch 2011).
- Paddlers still got sick. Chicago CHEERS (Dorevitch 2012; 11,297 people): paddlers, rowers, boaters and anglers had about 14 to 15 extra stomach illnesses per 1,000, on ordinary urban waters too. Indicator counts did not predict illness (Dorevitch 2015).
- Also: stomach and respiratory symptoms in white-water canoeists (Fewtrell 1992); a 42% attack rate at a Copenhagen triathlon after extreme rain (Harder-Lauridsen 2013); more ear and wound infections in San Diego surfers after rain (Arnold 2017); Massachusetts emergency visits for stomach illness up for 4 days after extreme CSOs (Haley 2024; a population study).
- Children and people with chronic stomach conditions are at higher risk.
- Summary (inferred): paddling lowers exposure per trip; it does not remove it. Capsizing, swimming at the launch, children and face splashing close much of the gap.
Sources by name
EPA Recreational Water Quality Criteria 2012 (820-F-12-058); EPA 1986 criteria and 40 CFR 131.41; EPA cyanotoxin criteria 2019; EPA National Beach Guidance 2014; EPA Report to Congress on CSOs and SSOs 2004; EPA secondary contact user guide 2024 (820-B-24-001); 40 CFR 122.38. Studies: Ackerman and Weisberg 2003; Arnold et al. 2017; Boehm et al. 2018; Kay et al. 2005; Korajkic et al. 2019; Madoux-Humery et al. 2016; Passerat et al. 2011; Dorevitch et al. 2011, 2012, 2015; DeFlorio-Barker et al. 2017; Fewtrell et al. 1992; Harder-Lauridsen et al. 2013; Haley et al. 2024; Schoen 2010 (UMass and PVPC); Connecticut River Conservancy E. coli report 2019 to 2023. Some papers were read as abstracts only (Boehm 2018, Sinton 2002). Cyanobacteria advisory numbers are in the full file.
Source: docs/science.md, the project's summary of research/science/report.md (checked 2026-11-01).
Disclaimer
DirtyWaterWatch shows what public agencies and sewer operators report. A report is not a water-quality test, and the absence of a report does not mean the water is fit for swimming, paddling or fishing. Reports can be late, incomplete or wrong. Follow posted signs and the advice of local health officials.
Data as of 2026-11-02 11:56 UTC.