Hannah Hansen

The California beaches that fail after every rain

Across 280 state-monitored California beaches, bacteria samples fail 2.0× as often after rain. In Santa Cruz County the jump is 3.2×.

Hannah · · 4 min read

The old advice is to stay out of the ocean for about three days after it rains, because storm drains flush bacteria from streets, pets and leaky sewers to the beach. We wanted to see how strong that effect is in the state’s own sampling data, beach by beach.

We matched 538,835 bacteria sample results from California’s Beach Watch program (January 2020 to October 2026) to the nearest NOAA rain gauge, and compared days after rain with dry days.

The beaches whose water quality changes most after rainShare of sampled days over a state bacteria standard: dry days vs days after 0.1 in. of rain
  • Dry days
  • After rain
Range chart0%20%40%60%80%100%Colorado Lagoon: 18% of 184 dry days vs 86% of 29 days after rainColorado Lagoon (Los Angeles (Long…+68 ptsAlamitos Bay Beach: 12% of 286 dry days vs 78% of 41 days after rainAlamitos Bay Beach (Los Angeles (Lo…+66 ptsIslais Creek Channel: 7% of 271 dry days vs 71% of 187 days after rainIslais Creek Channel (San Francisco)+64 ptsAliso County Beach: 15% of 248 dry days vs 76% of 38 days after rainAliso County Beach (Orange)+61 ptsManhattan Beach: 4% of 1445 dry days vs 60% of 152 days after rainManhattan Beach (Los Angeles)+56 ptsDana Point Harbor: 30% of 307 dry days vs 85% of 33 days after rainDana Point Harbor (Orange)+55 ptsAquatic Park: 35% of 272 dry days vs 88% of 43 days after rainAquatic Park (San Mateo)+53 ptsHermosa Beach: 3% of 1420 dry days vs 56% of 144 days after rainHermosa Beach (Los Angeles)+53 ptsWill Rogers State Beach: 21% of 1676 dry days vs 73% of 186 days after rainWill Rogers State Beach (Los Angele…+53 ptsLakeshore Park: 39% of 273 dry days vs 91% of 43 days after rainLakeshore Park (San Mateo)+52 pts
Range chart0%25%50%75%100%Colorado Lagoon: 18% of 184 dry days vs 86% of 29 days after rainColorado Lagoon (Los Angeles (Long Beach))+68 ptsAlamitos Bay Beach: 12% of 286 dry days vs 78% of 41 days after rainAlamitos Bay Beach (Los Angeles (Long Beach))+66 ptsIslais Creek Channel: 7% of 271 dry days vs 71% of 187 days after rainIslais Creek Channel (San Francisco)+64 ptsAliso County Beach: 15% of 248 dry days vs 76% of 38 days after rainAliso County Beach (Orange)+61 ptsManhattan Beach: 4% of 1445 dry days vs 60% of 152 days after rainManhattan Beach (Los Angeles)+56 ptsDana Point Harbor: 30% of 307 dry days vs 85% of 33 days after rainDana Point Harbor (Orange)+55 ptsAquatic Park: 35% of 272 dry days vs 88% of 43 days after rainAquatic Park (San Mateo)+53 ptsHermosa Beach: 3% of 1420 dry days vs 56% of 144 days after rainHermosa Beach (Los Angeles)+53 ptsWill Rogers State Beach: 21% of 1676 dry days vs 73% of 186 days after rainWill Rogers State Beach (Los Angeles)+53 ptsLakeshore Park: 39% of 273 dry days vs 91% of 43 days after rainLakeshore Park (San Mateo)+52 pts

Source: State Water Board Beach Watch results, NOAA GHCN-Daily rain gauges, 2020–2026 · Data: env.json · Code: can-i-swim

Show the data (10 rows)
BeachCountyDry daysDry exceedAfter-rain daysAfter-rain exceedJump (pts)
Colorado LagoonLos Angeles (Long Beach)18418%2986%67.7
Alamitos Bay BeachLos Angeles (Long Beach)28612%4178%66.2
Islais Creek ChannelSan Francisco2717%18771%64.1
Aliso County BeachOrange24815%3876%61.0
Manhattan BeachLos Angeles14454%15260%56.3
Dana Point HarborOrange30730%3385%54.6
Aquatic ParkSan Mateo27235%4388%53.4
Hermosa BeachLos Angeles14203%14456%53.0
Will Rogers State BeachLos Angeles167621%18673%52.6
Lakeshore ParkSan Mateo27339%4391%51.5

Statewide: twice as likely to fail after rain

Across 280 beaches and 95,850 sampled beach-days, a beach exceeded at least one state single-sample bacteria standard on 20.8% of dry days and 42.3% of days after rain, 2.0× as often.

The pattern is broad. Of the 161 beaches with enough wet and dry samples to compare, 142 failed more often after rain. The median beach’s failure rate rose by 17.4 percentage points, and 76 beaches rose by 20 points or more.

Many of the biggest jumps are at lagoons, harbors and channels, where water mixes slowly with the open ocean. At Colorado Lagoon in Long Beach, samples failed on 18% of dry days and 86% of days after rain. At Manhattan Beach, which is usually clean (3.6% of dry days), the after-rain failure rate was 60%.

After rain, more samples fail in almost every countyShare of beach-days over a state standard, dry vs after rain, by county
  • Dry days
  • After rain
Paired bar chartLos Angeles (Long Beach): 25% of 1,321 dry beach-days vs 80% of 165 after rain (3 beaches)Los Angeles (Long Beach)25%80%Los Angeles: 25% of 15,970 dry beach-days vs 62% of 1,686 after rain (25 beaches)Los Angeles25%62%San Mateo: 32% of 5,720 dry beach-days vs 48% of 1,170 after rain (24 beaches)San Mateo32%48%Orange: 17% of 7,274 dry beach-days vs 47% of 541 after rain (23 beaches)Orange17%47%San Francisco: 10% of 2,470 dry beach-days vs 43% of 1,084 after rain (9 beaches)San Francisco10%43%San Diego: 31% of 23,420 dry beach-days vs 41% of 1,538 after rain (60 beaches)San Diego31%41%Alameda/Contra Costa (East Bay Parks): 27% of 499 dry beach-days vs 40% of 86 after rain (2 beaches)Alameda/Contra Costa (East B…27%40%Santa Cruz: 11% of 3,155 dry beach-days vs 35% of 671 after rain (25 beaches)Santa Cruz11%35%Ventura: 3% of 5,760 dry beach-days vs 29% of 568 after rain (28 beaches)Ventura3%29%Santa Barbara: 7% of 4,310 dry beach-days vs 28% of 348 after rain (17 beaches)Santa Barbara7%28%Humboldt: 9% of 863 dry beach-days vs 18% of 309 after rain (6 beaches)Humboldt9%18%Marin: 9% of 2,235 dry beach-days vs 13% of 223 after rain (21 beaches)Marin9%13%San Luis Obispo: 7% of 2,780 dry beach-days vs 10% of 162 after rain (10 beaches)San Luis Obispo7%10%Sonoma: 2% of 785 dry beach-days vs 5% of 110 after rain (7 beaches)Sonoma2%5%Mendocino: 1% of 657 dry beach-days vs 1% of 130 after rain (5 beaches)Mendocino1%1%Monterey: 4% of 1,877 dry beach-days vs 0% of 30 after rain (15 beaches)Monterey4%0%
Paired bar chartLos Angeles (Long Beach): 25% of 1,321 dry beach-days vs 80% of 165 after rain (3 beaches)Los Angeles (Long…25%80%Los Angeles: 25% of 15,970 dry beach-days vs 62% of 1,686 after rain (25 beaches)Los Angeles25%62%San Mateo: 32% of 5,720 dry beach-days vs 48% of 1,170 after rain (24 beaches)San Mateo32%48%Orange: 17% of 7,274 dry beach-days vs 47% of 541 after rain (23 beaches)Orange17%47%San Francisco: 10% of 2,470 dry beach-days vs 43% of 1,084 after rain (9 beaches)San Francisco10%43%San Diego: 31% of 23,420 dry beach-days vs 41% of 1,538 after rain (60 beaches)San Diego31%41%Alameda/Contra Costa (East Bay Parks): 27% of 499 dry beach-days vs 40% of 86 after rain (2 beaches)Alameda/Contra Co…27%40%Santa Cruz: 11% of 3,155 dry beach-days vs 35% of 671 after rain (25 beaches)Santa Cruz11%35%Ventura: 3% of 5,760 dry beach-days vs 29% of 568 after rain (28 beaches)Ventura3%29%Santa Barbara: 7% of 4,310 dry beach-days vs 28% of 348 after rain (17 beaches)Santa Barbara7%28%Humboldt: 9% of 863 dry beach-days vs 18% of 309 after rain (6 beaches)Humboldt9%18%Marin: 9% of 2,235 dry beach-days vs 13% of 223 after rain (21 beaches)Marin9%13%San Luis Obispo: 7% of 2,780 dry beach-days vs 10% of 162 after rain (10 beaches)San Luis Obispo7%10%Sonoma: 2% of 785 dry beach-days vs 5% of 110 after rain (7 beaches)Sonoma2%5%Mendocino: 1% of 657 dry beach-days vs 1% of 130 after rain (5 beaches)Mendocino1%1%Monterey: 4% of 1,877 dry beach-days vs 0% of 30 after rain (15 beaches)Monterey4%0%

Source: State Water Board Beach Watch results, NOAA GHCN-Daily rain gauges, 2020–2026 · Data: env.json · Code: can-i-swim

Show the data (16 rows)
CountyBeachesDry beach-daysDry exceedAfter-rain beach-daysAfter-rain exceed
Los Angeles (Long Beach)31,32125%16580%
Los Angeles2515,97025%1,68662%
San Mateo245,72032%1,17048%
Orange237,27417%54147%
San Francisco92,47010%1,08443%
San Diego6023,42031%1,53841%
Alameda/Contra Costa (East Bay Parks)249927%8640%
Santa Cruz253,15511%67135%
Ventura285,7603%56829%
Santa Barbara174,3107%34828%
Humboldt68639%30918%
Marin212,2359%22313%
San Luis Obispo102,7807%16210%
Sonoma77852%1105%
Mendocino56571%1301%
Monterey151,8774%300%

One county stands out the other way: Monterey’s 15 beaches had no exceedances on the 30 after-rain beach-days we could classify. That is a small sample: only 30 of Monterey’s 2,194 sampled beach-days followed rain.

Santa Cruz County

In Santa Cruz County, the after-rain effect is larger than the statewide average. Its 25 monitored beaches failed on 10.9% of dry days and 34.9% after rain, 3.2× as often.

Santa Cruz County beaches, dry vs after rainBeaches with at least 15 after-rain and 30 dry sampled days, 2020–2026
  • Dry days
  • After rain
Range chart0%20%40%60%80%100%Main Beach: 25% of 412 dry days vs 57% of 95 after rain; 7 station(s)Main Beach+32 ptsCowell Beach: 25% of 420 dry days vs 54% of 95 after rain; 6 station(s)Cowell Beach+29 ptsCapitola City Beach: 24% of 257 dry days vs 48% of 46 after rain; 2 station(s)Capitola City Beach+24 ptsMitchell's Cove Beach: 12% of 263 dry days vs 45% of 65 after rain; 1 station(s)Mitchell's Cove Beach+33 ptsSeabright Beach: 2% of 364 dry days vs 31% of 84 after rain; 1 station(s)Seabright Beach+28 ptsMoran Lake, County Beach: 0% of 49 dry days vs 25% of 16 after rain; 1 station(s)Moran Lake, County Beach+25 ptsCorcoran Lagoon Beach: 2% of 49 dry days vs 24% of 17 after rain; 1 station(s)Corcoran Lagoon Beach+22 ptsTwin Lakes State Beach: 4% of 191 dry days vs 23% of 39 after rain; 1 station(s)Twin Lakes State Beach+19 ptsNatural Bridges State Beach: 2% of 306 dry days vs 21% of 75 after rain; 1 station(s)Natural Bridges State Bea…+19 ptsSeacliff State Beach: 3% of 187 dry days vs 21% of 34 after rain; 1 station(s)Seacliff State Beach+17 ptsNew Brighton State Beach: 0% of 128 dry days vs 17% of 23 after rain; 1 station(s)New Brighton State Beach+17 ptsRio del Mar Beach: 4% of 162 dry days vs 12% of 26 after rain; 1 station(s)Rio del Mar Beach+7 pts
Range chart0%25%50%75%100%Main Beach: 25% of 412 dry days vs 57% of 95 after rain; 7 station(s)Main Beach+32 ptsCowell Beach: 25% of 420 dry days vs 54% of 95 after rain; 6 station(s)Cowell Beach+29 ptsCapitola City Beach: 24% of 257 dry days vs 48% of 46 after rain; 2 station(s)Capitola City Beach+24 ptsMitchell's Cove Beach: 12% of 263 dry days vs 45% of 65 after rain; 1 station(s)Mitchell's Cove Beach+33 ptsSeabright Beach: 2% of 364 dry days vs 31% of 84 after rain; 1 station(s)Seabright Beach+28 ptsMoran Lake, County Beach: 0% of 49 dry days vs 25% of 16 after rain; 1 station(s)Moran Lake, County Beach+25 ptsCorcoran Lagoon Beach: 2% of 49 dry days vs 24% of 17 after rain; 1 station(s)Corcoran Lagoon Beach+22 ptsTwin Lakes State Beach: 4% of 191 dry days vs 23% of 39 after rain; 1 station(s)Twin Lakes State Beach+19 ptsNatural Bridges State Beach: 2% of 306 dry days vs 21% of 75 after rain; 1 station(s)Natural Bridges State Beach+19 ptsSeacliff State Beach: 3% of 187 dry days vs 21% of 34 after rain; 1 station(s)Seacliff State Beach+17 ptsNew Brighton State Beach: 0% of 128 dry days vs 17% of 23 after rain; 1 station(s)New Brighton State Beach+17 ptsRio del Mar Beach: 4% of 162 dry days vs 12% of 26 after rain; 1 station(s)Rio del Mar Beach+7 pts

Source: State Water Board Beach Watch results, NOAA GHCN-Daily rain gauges, 2020–2026 · Data: env.json · Code: can-i-swim

Show the data (12 rows)
BeachStationsDry daysDry exceedAfter-rain daysAfter-rain exceed
Main Beach741225%9557%
Cowell Beach642025%9554%
Capitola City Beach225724%4648%
Mitchell's Cove Beach126312%6545%
Seabright Beach13642%8431%
Moran Lake, County Beach1490%1625%
Corcoran Lagoon Beach1492%1724%
Twin Lakes State Beach11914%3923%
Natural Bridges State Beach13062%7521%
Seacliff State Beach11873%3421%
New Brighton State Beach11280%2317%
Rio del Mar Beach11624%2612%

Main Beach and Cowell Beach, on either side of the Santa Cruz Wharf, fail most often overall: 25% and 25% of dry days, rising to 57% and 54% after rain. Seabright Beach shows the sharpest contrast: it failed on only 2.5% of dry days but 31% of days after rain.

Read this before comparing beaches

More stations, more chances to fail. We count a beach-day as failing if any monitoring station at that beach exceeded a standard. Main Beach has 7 stations and Cowell Beach 6, while most beaches (62% statewide) have one; the most-sampled beach has 31. A multi-station beach will look worse than a one-station beach with the same water. Compare a beach with itself (dry vs after rain) rather than ranking beaches against each other.

Sampling is not random. Agencies sample more at busy beaches, more in summer and sometimes more after a known problem. Only 12 of Santa Cruz County’s 25 beaches had enough after-rain samples (15) to include in the comparison.

Methods

  • Samples. State Water Resources Control Board fecal indicator bacteria results, 2020 to present, rows from the Beach Watch program (2020-01-01 to 2026-10-07). Replicates are reduced to the highest value per station, analyte and day. 862 unusable results were skipped.
  • Standards. California AB 411 single-sample standards per 100 mL: total coliform 10,000, fecal coliform or E. coli 400, enterococcus 104 (culture) or 1,413 (DNA method), plus the total-to-fecal ratio rule. A "less than" result at or below the standard passes.
  • Rain. A beach-day is after rain if the nearest NOAA GHCN-Daily gauge within 20 km (with at least 80% of days reported since 2020) recorded at least 0.1 in. (2.54 mm) in the roughly 72 hours before sampling. It is dry if every one of those days was reported and below that. Otherwise the weather is unknown and the day is left out of the comparison (7,933 beach-days statewide).
  • Jump = after-rain failure rate minus dry failure rate, in percentage points, only for beaches with at least 15 after-rain and 30 dry sampled days.

Limits

A sample is a snapshot of one spot at one moment, and results arrive a day or more after sampling, so this history describes risk, not today’s water. Rain gauges can be up to 20 km from the beach. Official advisories and closures, not this analysis, decide whether a beach is open; check the county health department or Can I swim today? for the latest samples.

Data and code

Every number and chart in this post is generated from these files:

The projects that collected the data:

  • Can I swim today? (source not published yet)