DontDieFishingDontDieFishing

Safety & conditions

How DontDieFishing collects conditions, calculates a planning score, and handles warnings and missing data.

DontDieFishing combines current condition inputs into a 0–100 planning score for the launch site and vessel profile you select. The score is a planning aid, not a safety clearance.

Data sources

The conditions aggregator fetches the configured sources in parallel. It records the resulting snapshot with a fetched_at timestamp; it does not promise a single refresh cadence for every source.

Data usedSourceWhat the aggregator does
Wind speed and gustsNWS forecast, with NDBC buoy fallbackUses the forecast value first, then the buoy value when the forecast field is unavailable.
Wave height, wave period, and swell directionNDBC buoyAdds buoy observations when a buoy is configured and returns data.
Visibility, precipitation probability, air temperature, and lightning riskNWS forecastSupplies the forecast weather fields used by the snapshot.
Marine warningsNWS marine alertsAdds the active warning strings to the snapshot.
Tide height and phaseNOAA CO-OPS tide predictionsSelects the next predicted tide event for the snapshot.
Water temperatureNOAA CO-OPS, with NDBC buoy fallbackUses the CO-OPS value first, then buoy water temperature.
Tidal current speedNOAA CO-OPS current predictionsUses the configured current station and bin when available.
UV indexEPA UVAdds the UV index for the launch coordinates.
Sunrise and sunsetSun-times calculationComputes times from the launch coordinates, date, and resolved timezone.

The aggregator currently sets water_quality to null; it is therefore an unavailable signal rather than a claim about water quality. A buoy, tide station, or current station that is not configured also produces an unavailable value.

Safety status

The scorer clamps the final result to 0–100 and maps it to one of three statuses:

ScoreStatusMeaning
0–39GOLower modeled risk from the available inputs.
40–59CAUTIONElevated modeled risk; review the contributing signals and official guidance.
60–100NO-GOHigh modeled risk, or a hard veto has stopped the score.

The score is not permission to launch. Conditions can change after a snapshot is collected, and a GO result does not replace official weather, marine-warning, or navigational judgment.

Vessel-specific thresholds and profiles

The selected vessel type supplies default thresholds. Values are wind and gust in knots, waves in feet, visibility in miles, current in knots, and water temperature in °F.

Vessel typeWind / gustWavesVisibilityCurrentWater temperature
Powerboat25 / 3561445
Sailboat30 / 4081445
Kayak15 / 2020.5255
Paddleboard15 / 2020.5255

The scorer does not read a vessel-specific lightning threshold. High lightning risk is a hard veto for every vessel; lower lightning levels remain weighted signals.

You can override threshold values for a vessel with custom thresholds. The selected scoring profile—cautious, moderate, or experienced—changes the relative weights of the signals. The canonical scoring guide lists those weights and the normalization rules.

Hard vetoes

Veto checks run before weighted scoring. Any of these conditions returns a hard NO-GO:

  • An active marine warning contains small craft advisory, hurricane, tropical storm, gale warning, or storm warning (including the hurricane watch/warning phrases).
  • Lightning risk is high.
  • Wind speed, gusts, waves, or tidal current are more than 1.5 times the selected vessel threshold.
  • Visibility is less than half the selected visibility threshold.
  • Water temperature is below 75% of the selected water-temperature threshold.

A veto returns a score of 100, status NO-GO, vetoed: true, and a reason. The veto is returned before signal rows are built, so a vetoed result has no weighted signal breakdown.

Signal breakdown

When no hard veto fires, the score can show these signal rows:

  • Wind / gusts
  • Waves / swell
  • Marine warnings
  • Visibility
  • Tidal current
  • Lightning
  • Precipitation
  • Water quality
  • UV index
  • Water temperature
  • Optional travel time

The scorer reports each row's raw value, normalized risk, adjusted weight, contribution, and whether the value is available. Tide height and phase, sunrise/sunset, air temperature, wave period, and swell direction can be presented in the conditions view but are not weighted signal rows in the shared scorer.

Marine-warning callout

Any active string warning is shown in the NWS marine-warning callout. The callout says that the warning was reported in the displayed conditions update and may have changed. A marine warning does not automatically veto every score: only the warning phrases listed in the hard-veto rules do. Check current official NWS guidance before departure.

Freshness and unknown values

The web conditions endpoint reuses a cached snapshot only when it is less than 30 minutes old. Without a fresh snapshot it calls the aggregator. If that aggregate-level fetch fails, the endpoint returns an error instead of a score from an unknown fetch.

Individual source fetchers degrade independently: the alerts fetcher returns an empty alert list, while the forecast fetcher returns lightning_risk: "none" and null values for forecast measurements it could not obtain. The aggregator passes those fallback values to the scorer without an error marker.

This behavior is fail-open, not fail-closed. An empty alert list cannot trigger an alert veto, and fallback lightning maps to zero modeled risk. Unknown alerts or lightning can therefore contribute to a GO result. Other missing numeric signals are represented as unavailable; their normalized value is 0 and their adjusted weight is 0, with the base weight redistributed among available signals. A fetched_at timestamp does not prove every source was successfully fetched, and returned signal rows currently have is_stale: false.

Treat a missing, unverified, or degraded input as unknown: verify current conditions directly with authoritative NWS and NDBC sources before launch, and make the launch decision with current conditions and your own judgment. Do not read an absent or degraded score as authorization to launch.

DontDieFishing provides planning guidance only. Marine warnings may have changed since the conditions update. Check official NWS guidance and other authoritative information before departure; remain responsible for the launch decision.

Was this page helpful?

On this page