Skip to content
Worix
BrowsePublish
Log inSign Up

Marine Forecast

Marine and sailing weather via Open-Meteo. Waves, swell, sea temperature, wind, tides, ocean currents, and sailing assessments. Free, no API key, global cove...

55 downloads
Free
Reviewed
marine
ocean
sailing
swell
tides
waves
weather

Marine Forecast

Marine and sailing weather using Open-Meteo Marine API + Weather API. Free, no API key required, works worldwide.

Two APIs are used together — replace LAT, LON, and TZ in all commands:

  • Marine API (marine-api.open-meteo.com) — waves, swell, sea temp, currents, tides
  • Weather API (api.open-meteo.com) — wind, gusts, air temp, pressure, visibility

Find coordinates for any location using web search or the user's input. Use the nearest timezone (IANA format, e.g. Europe/London, America/New_York, Atlantic/Canary).

Current conditions

Sea state:

curl -s "https://marine-api.open-meteo.com/v1/marine?latitude=LAT&longitude=LON&current=wave_height,wave_direction,wave_period,swell_wave_height,swell_wave_direction,swell_wave_period,sea_surface_temperature&timezone=TZ"

Wind and atmosphere:

curl -s "https://api.open-meteo.com/v1/forecast?latitude=LAT&longitude=LON&current=temperature_2m,wind_speed_10m,wind_direction_10m,wind_gusts_10m,apparent_temperature,pressure_msl,cloud_cover,visibility&timezone=TZ"

Run both and combine the results into a single briefing.

Hourly forecast

Marine (up to 16 days, adjust forecast_days):

curl -s "https://marine-api.open-meteo.com/v1/marine?latitude=LAT&longitude=LON&hourly=wave_height,wave_direction,wave_period,swell_wave_height,swell_wave_direction,swell_wave_period,swell_wave_peak_period,wind_wave_height,wind_wave_direction,sea_surface_temperature,ocean_current_velocity,ocean_current_direction,sea_level_height_msl&forecast_days=3&timezone=TZ"

Wind (up to 16 days):

curl -s "https://api.open-meteo.com/v1/forecast?latitude=LAT&longitude=LON&hourly=wind_speed_10m,wind_direction_10m,wind_gusts_10m,temperature_2m,pressure_msl,visibility,cloud_cover,precipitation_probability&forecast_days=3&timezone=TZ"

Daily summary

Marine:

curl -s "https://marine-api.open-meteo.com/v1/marine?latitude=LAT&longitude=LON&daily=wave_height_max,wave_direction_dominant,wave_period_max,swell_wave_height_max,swell_wave_direction_dominant,swell_wave_period_max&forecast_days=7&timezone=TZ"

Weather:

curl -s "https://api.open-meteo.com/v1/forecast?latitude=LAT&longitude=LON&daily=wind_speed_10m_max,wind_gusts_10m_max,wind_direction_10m_dominant,temperature_2m_max,temperature_2m_min,sunrise,sunset,uv_index_max,precipitation_probability_max&forecast_days=7&timezone=TZ"

Tides (sea level)

curl -s "https://marine-api.open-meteo.com/v1/marine?latitude=LAT&longitude=LON&hourly=sea_level_height_msl&forecast_days=3&timezone=TZ"

High/low tide: find local maxima and minima in the sea_level_height_msl array. Sea level includes tidal signal + inverted barometer effect.

Ocean currents

curl -s "https://marine-api.open-meteo.com/v1/marine?latitude=LAT&longitude=LON&hourly=ocean_current_velocity,ocean_current_direction&forecast_days=3&timezone=TZ"

Presenting results

Always present marine data as a structured sailing briefing:

Current conditions format

Sea:    [wave_height]m waves, [wave_period]s period, from [direction]
Swell:  [swell_wave_height]m from [direction], [swell_wave_period]s period
Wind:   [wind_speed] km/h [direction], gusts [wind_gusts] km/h
Temp:   Air [temperature]C (feels [apparent_temperature]C), Sea [sea_surface_temperature]C
Sky:    [cloud_cover]% cloud, [visibility/1000]km visibility

Sailing assessment

Rate conditions based on the data:

  • Calm — waves < 0.5m, wind < 12 km/h (Beaufort 0-2)
  • Light — waves 0.5-1m, wind 12-19 km/h (Beaufort 3)
  • Moderate — waves 1-2m, wind 20-38 km/h (Beaufort 4-5)
  • Rough — waves 2-3m, wind 39-49 km/h (Beaufort 6)
  • Very Rough — waves 3-4m, wind 50-61 km/h (Beaufort 7)
  • Dangerous — waves > 4m or wind > 62 km/h (Beaufort 8+)

Flag warnings:

  • Small craft advisory: wind gusts > 50 km/h or wave height > 3m
  • Gale warning: sustained wind > 62 km/h or wave height > 5m
  • Suggest activity suitability: sailing, diving, fishing, swimming, surfing

Beaufort scale

Forcekm/hDescriptionSea State
00-1CalmFlat
12-5Light airRipples
26-11Light breezeSmall wavelets
312-19Gentle breezeLarge wavelets
420-28Moderate breezeSmall waves
529-38Fresh breezeModerate waves
639-49Strong breezeLarge waves
750-61Near galeBreaking waves
862-74GaleHigh waves
975-88Severe galeVery high waves
1089-102StormExceptionally high waves

Wind direction conversion

Convert degrees to compass: divide by 22.5, round, index into [N, NNE, NE, ENE, E, ESE, SE, SSE, S, SSW, SW, WSW, W, WNW, NW, NNW].

Quick reference: 0=N, 45=NE, 90=E, 135=SE, 180=S, 225=SW, 270=W, 315=NW.

Units

MeasurementUnit
Wave heightmeters (m)
Wave periodseconds (s)
Wind speedkm/h
TemperatureCelsius (C)
Current velocitykm/h
Directionsdegrees (0=N, 90=E, 180=S, 270=W)
Sea levelmeters relative to MSL
Visibilitymeters
PressurehPa

Users may prefer knots for wind. Convert: knots = km/h * 0.539957. Add &wind_speed_unit=kn to the weather API URL to get knots directly.

Popular sailing locations (reference)

RegionExampleLatLon
Canary IslandsLas Palmas28.1-15.4
BalearicsPalma de Mallorca39.572.65
Greek IslandsPiraeus37.9423.65
CroatiaSplit43.5116.44
CaribbeanSt. Maarten18.04-63.05
South PacificTahiti-17.53-149.57
Southeast AsiaPhuket7.8898.39
East AfricaZanzibar-6.1639.19
AustraliaSydney-33.87151.21
US East CoastAnnapolis38.97-76.49
UKSolent50.77-1.30
ScandinaviaGothenburg57.7111.97

Data sources

  • ECMWF WAM (European Centre for Medium-Range Weather Forecasts)
  • NOAA GFS Wave (Global Forecast System)
  • DWD GWAM/EWAM (German Weather Service)
  • Resolution: 5-25 km depending on region and model
  • Updates: multiple times per day
  • Forecast range: up to 16 days (forecast_days=16)

Notes

  • All data is JSON. Parse with jq if available, otherwise read raw JSON.
  • Hourly data returns large arrays. For quick checks, use current parameters. For planning, use daily. Use hourly only when the user needs detailed breakdowns.
  • Combine marine + weather API calls to give a complete picture. Neither alone is sufficient for a full sailing briefing.
  • Sea level data approximates tides but does not label high/low explicitly. Derive from local maxima/minima in the hourly array.
  • For coastal areas, data accuracy depends on proximity to the nearest grid point. Open ocean coverage is excellent; harbors and bays may be less precise.

Docs: https://open-meteo.com/en/docs/marine-weather-api

Download

ZIP package — ready to use

Skill Info

Creator
alexissan
Downloads
55
Published
Mar 15, 2026
Updated
Mar 16, 2026