Submarius Open the app →
product · positioning · design

A verdict, not a dashboard: why your ocean app should just tell you to go

Open any modern marine-weather app. Windy, Surfline, Fishbrain, Navionics, pick your favorite. What you see first is a wall of numbers. Wind speed and direction. Swell height. Swell period. Wind wave. Water temperature. Barometric pressure. Tide chart. Moon phase. Sunrise. Sunset. Solunar majors. Solunar minors. Current speed. Current direction. SST anomaly. Chlorophyll.

The user’s job is to look at all of those and come to a decision: is today worth going?

This is the design failure at the heart of every ocean conditions app.

The actual question everyone is asking

Go read any “what app do you use?” thread on Spearboard, DeeperBlue, The Hull Truth, or Hull Truth’s offshore section. The words people reach for are remarkably consistent:

  • “Is it worth the drive?”
  • “Is the bite on?”
  • “Are conditions firing?”
  • “Did we get a window?”

These are not wind-direction questions. They are decision questions. The user has already decided they want to get on the water — they’re deciding whether today is the day.

What they actually want is one answer: go or don’t. What they get is 17 numbers.

Why every app ships a dashboard

Dashboards exist for good reasons. The data really is uncertain. Different users care about different signals. The app doesn’t know your skill level or your boat or your willingness to fight a short choppy window. Handing you all the data feels respectful of your judgment.

But this respect is also a dodge. A dashboard means the app never has to commit. If conditions are bad and you went anyway, the dashboard showed you the wind was 20 kts — it’s on you for going. If conditions were great and you stayed home, the dashboard showed you the flat swell — you should have looked harder.

A dashboard is an app that refuses to have an opinion. An opinion is what you actually want.

What “just tell me” actually requires

It’s one thing to complain about dashboards. It’s another to build something opinionated enough to say no, don’t go, here’s why without being wrong so often that users stop trusting it.

Three things have to be true for an opinionated verdict to work:

First, it has to read the same signals the expert is reading. A good surf forecaster weighs swell period above swell height in their head. An experienced spearo weighs rainfall-in-the-last-three-days almost as heavily as the current wind. An inshore angler weighs tide stage and moon phase before they even look at wind. The app has to internalize those weightings — per activity — or its verdict will be laughable.

Second, it has to express its uncertainty honestly. There’s a real difference between “GO, I am 90% confident” and “GO, but the swell forecast is wobbly and the real range is 3–8 ft.” An opinionated app that hides its uncertainty is worse than a dashboard. A good verdict says how confident it is.

Third, it has to be wrong out loud. When a verdict turns out wrong — and some of them will — the app has to say so, explain why, and close the loop. Users will forgive wrong but transparent. They will not forgive confidently wrong.

The tradeoff we accepted

The downside of an opinionated app is that one wrong call is worse than 17 right numbers. A user who reads “GO” on a blown-out day and drives three hours loses faith fast. If the verdict is wrong even 10% of the time and 10% of those wrongs are on the drive-three-hours days, that’s a permanent trust break.

So we accept a design tax: we say “we don’t know” more often than other apps would. When satellite data hasn’t refreshed, when the signals disagree, when the model’s uncertainty band is wide — we say so. The dialog at the top of every verdict carries the caveats. The factor breakdown is one tap away. The alternative — confidently wrong to save face — is how trust dies.

The signals that actually matter, by activity

One thing we learned building this: the weightings really do change by activity, not in a small way but drastically.

  • Spearfishing and diving care enormously about water clarity. Nothing else matters if you can’t see — no amount of flat wind and moving tide will compensate for 2-foot viz. This is the top signal for both, and every other signal is secondary.
  • Rod-and-reel fishing cares about tide stage and moon phase, weighted roughly together. Wind and water temperature set the envelope (too windy = dangerous, too cold = inactive fish), but inside the envelope, tide-moon alignment is what predicts feeding behavior.
  • Boating and sailing care about wind and swell — in that order for boating, in the other order for racing sailors. Tide matters for inlets. Moon matters not at all.
  • Surfing cares about swell period, swell direction, and wind direction. Height matters but is secondary to period and cleanliness.
  • Freediving cares about surface chop above all else, then clarity, then current.
  • Kayak/SUP cares about wind and shore access; swell matters less than boat height suggests.

A single verdict that ignores these differences is either useless for everyone or right only by accident. An activity-aware verdict is just table stakes. Almost no consumer app does it today.

Why “AI-powered” is a tell

When a conditions app pitches itself as AI-powered, that’s usually a confession that the app couldn’t articulate its factors. The category learned this the hard way: Fishbrain’s BiteTime has been a source of debate for years, and forum consensus is that users can’t tell if it’s better than a coin flip — partly because the model is opaque. A GPS-collar study found solunar theory was “accurate about 25 percent of the time within a three-hour window.” And yet solunar tables still ship at the core of most bite-prediction products, because it feels rigorous.

Opaque “AI” verdicts don’t solve the dashboard problem. They just replace 17 numbers with one number and no reasoning. The user still has no information about whether to trust the output. That’s worse than a dashboard — at least a dashboard lets you audit.

The alternative is transparent opinionated. The verdict is a single number. Tap the factor and see the sub-scores: tide is a 7 because it’s 45 minutes past turn, moon is a 6 because you’re two days past full, wind is a 4 because onshore at 14 kts, chlorophyll is a 3 because last week’s bloom hasn’t cleared. Now the user has both the verdict and the audit. They can override us when they know something we don’t. They can learn from the factor weights what signals actually drive conditions in their area.

What this changes for users

If you’ve been stitching together three or four apps — Windy for the synoptic wind, a tide app for the tide, Fishbrain for solunar — stop. That stack exists because no single app does the weighting. You’re doing the weighting yourself, in your head, after looking at 30 numbers across three UIs. That’s exhausting and error-prone.

You’ve also been doing it for years because there was no alternative. That’s what Submarius is trying to change. One app. One verdict. Every factor tappable. All of the weighting is done for you, per activity. No stitching. And when we don’t know, we say so.

Where we might still be wrong

There are cases where a dashboard will always win: professionals who actually want to look at the raw models (offshore tournament captains comparing ECMWF vs. GFS to pick a route, commercial fishermen with decades of local knowledge). Those users aren’t going to stop running Windy or PredictWind, and they shouldn’t. The dashboard is the right answer for them.

But for everyone else — the weekend spearo, the club diver, the inshore angler, the coastal boater — a good opinionated verdict is a structural improvement. The alternative we’ve been living with isn’t freedom of choice. It’s homework.

The question isn’t whether dashboards should exist. They should. The question is why every ocean app ships one by default when most users are asking a decision question.

Probably because it’s hard to do the opinionated version well. We’re giving it a shot.

Further reading

Try today's verdict for your spot

Free. Anonymous. Five seconds to an answer.