Technical guide
How Scoring Waves interprets forecasts
Scoring Waves combines regional marine forecasts with each break and activity profile. The result is decision support, not a precise breaking-wave or safety forecast.
Forecasts and observations
Offshore swell height is the source forecast component height in feet.
Estimated surf height is the app's coastal estimate based on eligible swell height, period, and direction.
Observed buoy height is a measurement reported by an individual buoy. It is evidence, not the same value as the forecast estimate.
A forecast region may own one primary NDBC buoy. Home labels its current recommendation Buoy-informed conditions and only evaluates breaks when observed swell height, period, and direction are complete and the observation is no more than three hours old.
buoy-derived estimated surf height (ft) = observed swell height × observed period ÷ 10
This estimate is based on an offshore observation; it is not a measurement at the beach. Home uses it internally for break matching while its current-reading summary displays the observed swell height, period, and direction.
Estimated surf height
Wind wave and up to three swell partitions first compete by height multiplied by period. The strongest three are retained and the weakest is omitted. Total significant wave height is not added because it already summarizes the components.
Of those retained components, only directions inside the break's clockwise range are eligible; the range may wrap through north. The strongest eligible component and half of the second strongest eligible component are combined, then scaled to feet.
estimated surf height (ft) = (strongest eligible height × period + 0.5 × second eligible height × period) ÷ 10
Bathymetry, refraction, shadowing, local wind, and other break-specific effects can make actual surf materially different.
Regional forecast matching and the compatibility Breakfinder use this same calculation across the cached timeline. Forecast-region lines use the region's configured swell window; break/activity lines use that exact profile's swell window. Rideable dots still include all other filters.
The regional forecast page first shows this regional estimate across 16 days. Its slider moves in six-hour steps and chooses a rolling 72-hour component view where arrow direction and color both show incoming swell direction. Period remains in the arrow details instead of controlling color, and wind is kept out of these two graphs.
Filtering
Forecast condition matches can be excluded by estimated surf height, swell direction, wind direction and tolerance, or tide preference.
A saved Outlook then applies separate weekly availability for each selected activity using the five canonical daytime slots.
Wind speeds and wind filters use miles per hour. Missing wind is shown as unavailable and is never treated as zero.
Tide predictions can come from NOAA or Spain's IHM. Provider values are normalized to UTC timestamps and feet; IHM high/low predictions are interpolated onto the forecast slots. Each tide-enabled forecast region has a local minimum and maximum: the bottom, middle, and top thirds are labeled Low, Medium, and High for filtering. If a region has no working tide source, the row remains available and is labeled “Tide unavailable.”
Selectable estimated-height steps
Time and source freshness
Forecast instants are stored and transported in UTC, then formatted in the forecast region's configured IANA timezone.
Home uses that region timezone to retain the 6 PM modeled slot through 7:59 PM. At 8 PM, its forecast graph, daily summaries, and tide curve begin with tomorrow. Buoy-informed matches remain based on the current fresh observation at every hour and are never advanced to tomorrow.
Sunrise and sunset are calculated from the forecast region coordinate and rendered in that same timezone. Daylight shading is informational and never filters a matching break.
Supported wave sources are Open-Meteo GFS Wave 0.16 and 0.25, Open-Meteo ECMWF WAM, generic Open-Meteo, and NOAA GFS Wave.
Swell data is cached separately by model and updates when requested. Regional forecast pages use the region's configured model. The compatibility Breakfinder can still compare configured or temporary model choices.
Regional wind refreshes after one hour, and tide refreshes after 24 hours because its predictions change less often. NDBC station snapshots share a five-minute server cache across Home, Buoys, and buoy detail. An observation older than three hours remains visible as stale but cannot produce a current break recommendation.
Never use Scoring Waves as a substitute for official warnings or local knowledge.