Submarius Open the app →
water clarity · spearfishing · diving

How to predict water visibility for diving and spearfishing

If you ask a long-time spearo how they predict visibility, you’ll get a checklist — not an algorithm. Did it rain the last few days? How big was the swell? Which way’s the wind? What’s the tide doing? Did I get lucky? That’s the mental model the whole community runs.

The uncomfortable truth from the forums — DeeperBlue, Spearboard, ScubaBoard — is that even experienced divers admit viz prediction “has a high probability of error and can’t beat showing up at the site and checking with your own eyes.” Nobody has solved it. The best you can do is stack the odds.

What follows is that checklist, written out. Six signals, what each one physically does to visibility, and how new satellite products are quietly raising the ceiling on what’s predictable from your couch the night before.

1. Wind — direction matters more than speed

Wind stirs up the water column through wave mixing. But the direction is what determines whether the mix brings clear water to you or sediment off the bottom.

  • Offshore wind (blowing from land toward sea): typically good for viz inshore. It flattens the nearshore water column and pushes surface murkiness out.
  • Onshore wind (blowing from sea toward land): pushes surface chop and sediment into shallows. Sustained onshore wind over sand bottom = milky nearshore water.
  • Cross-shore wind: depends on fetch and coastline geometry. Often neutral, sometimes stirs sediment where it runs over shallow reef.

The threshold where wind becomes a problem isn’t a fixed knot number — it depends on depth and bottom type. A 20 kt onshore over a sand flat is a disaster; the same wind over a deep reef is fine. Anglers and spearos both talk about a rule of thumb that sustained onshore wind over 15–20 kt for 24+ hours will shut down inshore viz. It holds in most temperate coastlines.

2. Swell — the long-period waves that rearrange the bottom

Swell period matters more than swell height for viz. A 3 ft swell at 6 seconds is a wind chop and doesn’t do much to the bottom. A 3 ft swell at 16 seconds is a long-period ground swell — it reaches the bottom in 150+ ft of water and stirs sediment you didn’t know was there.

Two things happen when a big swell arrives:

  1. Sediment suspension. Long-period waves agitate the bottom in deeper water, lifting silt that then takes days to settle.
  2. Shore break chaos. Close to shore, breaking waves churn sand into the water column. You’ll see this as a brown band along the beach even on clear days.

Spearo wisdom from the Pacific Northwest and Northern California — where swell is big and viz is precious — is that post-swell windows clear up within 24–72 hours of the swell dropping, depending on how long the event lasted and how deep you dive. Longer swell event = longer recovery.

3. Rainfall — the sneaky killer

Rain in the last 3–7 days is one of the most underrated viz inputs. Here’s why:

  • Direct runoff dumps sediment, nutrients, and freshwater into coastal zones.
  • Upstream rainfall pumps river discharge through estuaries and out of inlets for days after the sky clears.
  • Inland storms don’t even need to hit the coast to wreck your dive — a 3-day system in the watershed shows up two days later at the inlet mouth.

The USGS Water Services database publishes real-time river discharge data for every significant US waterway. Divers who live near inlets learn to check their local river gauge the way sailors check wind. If the gauge is up, the inlet plume is out. If the inlet plume is out, inshore viz is compromised.

Satellite plume detection (visible in chlorophyll and turbidity imagery) can actually see these plumes extending miles offshore. On the Mississippi coast or off the Chesapeake mouth, plumes can stretch 20+ miles in a sustained discharge event.

4. Tide — timing, not height

Tide interacts with everything else on this list. Specifically:

  • Incoming tide near inshore reefs: generally brings cleaner ocean water, flushing out bay/estuary murk. Classic “clean push.”
  • Outgoing tide near an inlet: drains bay water to the ocean — if the bay has recent runoff or sediment, the outgoing push is dirty.
  • Slack tide: minimal water movement, often the clearest window for mid-water diving. Sediment settles; the water column stratifies.
  • Spring tides (full/new moon): larger range, stronger currents, more bottom agitation on both flood and ebb. Spearos often prefer neap tides around the quarter moons for this reason.

The “small swell, low chlorophyll, slack tide, sunny sky, no wind” consensus prime condition from Spearboard threads is basically every factor on this page aligned in your favor at once. It’s rare. The point of a good forecast is recognizing when most of them align.

5. Chlorophyll and algae — the color of the water itself

Chlorophyll concentration in seawater is a direct proxy for algae density, which is a direct driver of how clear the water looks and how far light penetrates. NASA and NOAA satellites have been measuring this globally since the 1990s (MODIS, VIIRS, and now PACE). High chlorophyll means green water. Low chlorophyll means blue water. It’s that simple — and it’s publicly available data that most fishing apps never surface.

When divers talk about “blue water / green water / chocolate,” they’re describing chlorophyll and sediment combined:

  • Blue water — low chlorophyll, low sediment. Oceanic. Kona, Bahamas, offshore FAD buoys.
  • Green water — elevated chlorophyll, low-to-moderate sediment. Nearshore Pacific, parts of the Gulf.
  • Chocolate — high sediment. Post-storm inlets, river plumes, turbid bays.

A bloom event (algae population explosion) can take clean blue water green within days. Bloom collapse can reverse it. There’s no way to predict a bloom perfectly, but NOAA’s HAB bulletins track major events in real time for the US East, Gulf, and West coasts.

6. Coastline geometry — the feature forecasts forget

This is the one input that never shows up in weather apps but matters constantly for viz: the shape of the water around you.

  • Open coast (unobstructed to the ocean): water mixes fast, sediment clears fast, but swell penetrates fully.
  • Semi-open coast (coves, bights, headlands): partial protection from swell, slower clearing after storms.
  • Enclosed waters (bays, sounds, estuaries, fjords): limited exchange with the open ocean. Runoff, sediment, and biological activity concentrate. These places can stay turbid for weeks between flushing events.

The practical implication: an open reef 2 miles offshore of Jupiter, FL can be gin-clear on a day when Biscayne Bay, 80 miles south, is chocolate. Same state, same weather, totally different viz outcomes — because the water bodies themselves behave differently.

The OpenStreetMap coastline dataset encodes this geometry globally. A classifier can tell you, for any given point, whether you’re in open, semi-open, or enclosed water — and weight the other five signals accordingly. Submarius ships this classifier as part of the clarity model, which is why a Biscayne Bay forecast behaves differently from an outer-reef forecast even though they’re 8 miles apart.

How pros actually put this together

The consensus recipe on Spearboard, DeeperBlue, and Spearfishing.world, paraphrased:

Small swell. Low chlorophyll. Slack tide. Sunny sky. No wind.

Any three or four of these aligned is probably a day worth driving to the coast. All five is a rare gift. Less than three and you should stay home — or at least adjust your expectations. The trap is looking at one signal (say, wind) and ignoring the others. A flat-calm day after a three-day rain event is not a clear-water day.

Experienced divers build a mental table of their home spots — which signals dominate where. Cold-water kelp-forest divers in California care about swell and wind above all else. Florida Keys divers obsess over swell period and Gulf Stream position. Pacific Northwest divers worship rainfall data and accept that most days are bad. Chesapeake divers have mostly given up on viz prediction and dive blind. The rules don’t transfer — but the six categories do.

What satellite data adds today

Here’s what’s changed in the last few years: the signals that used to require professional judgment are now quantifiable.

  • Kd490 (the diffuse attenuation coefficient at 490 nm) is measured globally by NOAA CoastWatch from the VIIRS satellite. It correlates tightly with Secchi depth — the classic measure of how far you can see underwater — and was calibrated against 46 years of in-situ measurements by Lee et al. 2015 with R²=0.96. In plain English: a satellite can tell you, from space, roughly how many feet of visibility a point of water had when the satellite passed over.
  • Chlorophyll-a is measured continuously by MODIS, VIIRS, OLCI, and now PACE. Bloom detection is automated.
  • Turbidity products track suspended sediment separately from chlorophyll.
  • River discharge from USGS is available in near real time for every gauged waterway.

The data exists. The question has been: who pulls it all together and combines it with the physics (swell mixing, wave energy, coastline geometry) into a forecast a diver can actually use?

What we still can’t do

Honest limits:

  • Satellite Kd490 has a 24-hour lag. It tells you what the water was like yesterday at pass time. Not today, not tomorrow. For a forecast, we run it through wave-mixing models that predict how conditions will evolve — but those models accumulate error.
  • Cloud cover blocks satellites. Most US coasts get clear imagery 1–2 days out of every 3. We composite across multiple days to fill gaps, which again adds lag.
  • Shallow nearshore accuracy degrades. Satellite pixels are typically 300m to 1km. Inside a cove or within 50m of shore, the satellite is averaging over too much variability.
  • Bloom dynamics are chaotic. An ordinary forecast can’t predict when a bloom will start.

None of this replaces eyeballing the water. The point of a good forecast is to stop you from driving two hours on a day that was obviously not going to work — and to catch the windows when most of the signals align that you’d otherwise miss.

Where Submarius fits in

Submarius builds a single visibility forecast from all six of the signals above, with explicit uncertainty bounds. The clarity model is physically grounded in published oceanography (Lee 2015 Kd490→Secchi, R²=0.96), augmented with USGS river-plume detection, wave-mixing physics, NOAA HAB bulletins, and an OpenStreetMap-derived coastline-geometry classifier.

You can run it in the app — free, no signup — right here. Pick your spot, pick your activity, see the verdict. Every factor is tappable. When the model says “viz 8–12m tomorrow with wide uncertainty,” we mean it — we’re not faking confidence to make the UX feel good.

We also ship a one-tap post-dive reporting flow. After every dive, a single-tap viz rating with the full feature-vector snapshot (conditions at that time and tile) trains the model to get smarter — specifically for your region. Locations stay private: only H3-fuzzed (~1 km grid) coordinates cross the wire. Nobody sees your dive spot, ever.

None of this replaces the mark-one eyeball. But now, for the first time, a spearo checking conditions the night before has the same dataset an oceanographer would use. That’s the thing that’s actually changed.

Further reading

Try today's verdict for your spot

Free. Anonymous. Five seconds to an answer.