Documentation

User guide

Everything Saily WR does, page by page: describing your boat, drawing a trip, comparing the weather models' routes, following the forecasts, and understanding where the data come from.

Overview

Saily WR is a weather routing tool for sailing. From your boat's polar, a starting point, a destination and a departure time, it computes the fastest route in the wind forecast by each weather model covering your trip, taking the current into account and keeping clear of the coast or the shallows. The routes of the different models are computed together and compared at a glance: where they overlap, the forecast is solid; where they part, the uncertainty is high.

Besides this guide, the site has seven pages:

Home
The presentation of the app and of its coverage (wind, current, coastline and depths), then the blog's three latest articles.
My boat
The set-up of your boat: its polar, its performance, its engine, its position and its destination (see My boat).
Plan a route
The map where you place the trip, set up the computation and read the routes (see Plan a route and Reading the result).
Data
The data behind the routes: the state of the wind, current and wave models (their latest run, their horizon and their coverage), the coastline and the bathymetry, each name leading to its model's or its dataset's own page (see Data).
Blog
The app's features as they shipped, one article each: what each one changes when you plan a passage. The latest article comes first, then the others along a timeline, month by month; pick a topic (routing, weather, sea and shores, boat, the app) to read only its articles. Each article shows the app where a screenshot helps, lists the sources it rests on (the data's providers, the method), tells its number in the series, leads to the one before and the one after, shows its neighbours under ‘In the series’ and ends with a ‘Find out more’ link to the page where the feature lives, or to the page of the model or dataset it brings. The articles also come as an Atom feed: follow the link under the blog's introduction, or give its address to your feed reader, and each new article reaches you there.
About
Who makes Saily WR, why, and how to get in touch: the story of a tool born on board a sailing boat, free and with no sign-up.
Account
Your account, which is optional: sign in with Google or Apple, see which account is signed in, sign out or delete it (see Your account).

The app is free, with no sign-up: your boat stays saved in your browser, or in your account if you choose to sign in, to find it again on any browser.

The site is in English, French, German, Spanish and Italian: every page but the routing page leads to its version in the other four, through the language switch at the top of the page. It shows the page's language, EN, FR, DE, ES or IT; click it to open a menu of the five languages, each written in itself, the page's ticked, and pick another one to read the same page in it. Your browser remembers the language you choose for your next visits. If your browser prefers another language of the site, a banner at the bottom of the page (at the top on the routing page, so as not to hide the time cursor) offers it, as long as you have not chosen. The banner closes with ×, which keeps the page's language as your choice. Once a language is kept, a page in another language opened from outside the site (a shared link, a bookmark) opens in yours. On the blog, the German, Spanish and Italian articles show the screenshots of the English site.

Not for navigation. The routes are a decision aid, computed on forecasts and approximate charts (bathymetry at chart datum in Europe and the eastern Caribbean, at mean sea level elsewhere, without predicted tide). They replace neither official nautical charts, nor keeping watch, nor the skipper's judgement.

Quick start

  1. Describe your boat. On the My boat page, give it a name, choose its polar, set its performance and its engine, then click Save. You land on the routing page.
  2. Draw the trip. On the Plan a route map, a first click places the departure (green marker), a second one the destination (red marker). Set the Departure time.
  3. Compute. Click Compute the route: the Result tab opens and shows one route per weather model, the finest model first.

The Settings (current, shore) have defaults that suit most trips: you need not touch them for a first computation.

My boat

The My boat page describes the one boat of this browser, or of your account when you are signed in. Every computation of the routing page uses it: without a saved boat, no route can be computed.

Performance

Polar
Your boat's speed polar, to search among about 22,400: about 700 sailboat models, and the polars of 21,778 ORC-certified boats (2019 to 2026 certificates). A polar gives the boat's speed for each true wind speed (TWS) and true wind angle (TWA). Type a boat name, a sail number or a model, then choose with the mouse, or with the arrow keys and Enter; the list holds every match, the next ones loading as you scroll it down; each result shows where it comes from, generic or ORC and its certificate's year. If your boat holds an ORC certificate, choose its own polar; otherwise your model's, or failing that a boat of similar size and type. An ORC polar is the speed predicted by the certificate for racing (full crew, spinnakers, optimal trim): lower the performance for cruising. It stops at the certificate's best angles upwind and downwind: no speed at an angle tighter than the best beat angle or deeper than the best running angle, so the route tacks and gybes. A new boat starts on 60ftmono: change it before saving.
Performance (of the polar, in %, from 50 to 150, 100 by default)
Multiplies every speed of the polar. 100% is the polar as it is; lower it for a foul hull, tired sails, a laden boat or a short-handed crew, raise it for a boat sailed better than its polar.

The polar diagram is redrawn at each change: one curve per wind speed, from the lightest to the strongest (colour scale in knots of TWS under the diagram), the wind coming from the top; the graduated circles give the boat speed in knots, the spokes the angle to the wind, every 30°; each curve is drawn tack by tack, from its closest angle to the wind to its widest, without crossing the zone head to wind where the boat makes no way. When the performance differs from 100%, the original polar stays drawn dashed, for comparison; as long as the performance typed is invalid, the diagram shows the polar as it is.

Identity

Name
Optional. It is recalled in the Boat box of the routing page, as a link to this page; for a boat without a name, its polar takes its place.
MMSI (AIS, optional)
The boat's AIS identification number, 9 digits. It plays no part in the computation.

Engine assistance

Use the engine in light winds, ticked by default, lets the engine take over when the wind drops. Unticked, the boat only sails, and the three following fields are greyed out.

Minimum speed before engine (kn, 3 by default, 0 at least, in steps of 0.5)
The threshold below which the engine starts: wherever no heading lets the boat sail at least this speed through the water (polar times performance, current not included), the boat motors. At 0, the engine never starts, even without wind.
Engine cruising speed (kn, 5 by default, 0.5 at least, in steps of 0.5)
The boat's speed through the water under engine.
Engine fuel consumption (L/h, 2 by default, 0 at least, in steps of 0.1)
The fuel burnt per engine hour, which gives each route's estimated Fuel.

Last position and destination

The map shows the boat's position (green marker) and its destination (red marker), which the routing page saves every time you place them. Here too, a click places the position then the destination, and the markers move when dragged (this map has no right-click menu). A new boat starts with the trip placed on the routing page before it was set up.

The site's bar at the top of the page leads to its other pages: Plan a route goes back to the routing page without saving. Under the title, Help opens this chapter.

Save

For a stored boat, the Save button only becomes active once something has changed. For a new boat, it is active at once, and a line under the title tells you to choose the polar closest to your boat, then save. It saves the boat and its trip, in your account when you are signed in, else in this browser, then opens the routing page; if they cannot be saved, a message next to the button says why and the page stays open (see Questions and troubleshooting). If a field is invalid (MMSI without 9 digits, value out of bounds or off the field's step, such as 2.8 kn or a performance of 97.5%), the browser says so and nothing is saved.

Without an account, the boat is kept only in this browser, on this device: another browser, a private window or clearing the site's data start again from a blank boat. Signed in, it is kept in your account: you find it on every browser and device where you sign in, until you delete the account; once you sign out, the pages show this browser's boat again, as it was. See Your account and Your data.

Plan a route

The Plan a route page shows the map and, beside it, a panel with two tabs: Setup, to prepare the computation, and Result, which becomes active at the first computation. Left of the tabs, the Saily WR logo leads back to the home page; it leaves the page, and the routes computed are lost. Right of the tabs, the button Hide the panel folds the panel down to the logo and itself, one above the other, leaving the room to the map; the same button, Show the panel, opens it again on the tab you left. Your browser remembers the panel folded for your next visits.

On a phone (a screen 700 px wide or narrower), the map fills the screen and the panel is a sheet over its bottom, without tabs. Its handle moves it: drag it up or down and it settles at the nearest of three heights, a peek, a little over half the screen or the whole screen but a band of map; tap it (or press Enter on it) to go to the next, from the whole screen back to the peek. At the peek and half way up, the map frames the trip, or the routes, above the sheet. The logo, round at the top left of the map, leads back to the home page. In the result, the head of the sheet keeps the time cursor, the route shown on one line (its first warning after a ⚠, then its arrival, model, duration, distance and badge) with Edit, which opens Setup again half way up, and every model as a chip to tap, scrolling sideways; when the sheet goes up, the Route log and Export buttons follow, then the route's card and its warnings, its charts, its speeds and its sources. The trip reminder and the Model shown box do not show there: the one-line summary and the chips take their place. For a model that drew no route, the line gives only its model and its outcome (horizon reached, not reached); a route stopped short of the destination gives its model, its outcome and the distance sailed so far. A warning always comes first, so that a line cut short keeps it. Too long, the line is cut after two lines. While computing, after an error or when every model fails, Edit stays there to go back to Setup. The result does not repeat the computation's departure time there: Setup's is that time only until you change it (and not for a routing drawn again after a reload); for a route drawn, the first row of the Route log always gives it. Once routes are computed, See the results, at the top of Setup, goes back to them.

Trip

Once a boat is saved, the Trip box comes first: the Departure row, then the Destination row, each with its coordinates once placed. Until then, the row of the next point to place says Click the map (Tap the map on a touch screen), and a dark label at the top of the map, after a dot in the colour of its marker, says which point the next click places: ‘Click the map to place the departure’, then ‘… the destination’, followed with a mouse by ‘· right click: menu’. It goes once both are placed, and does not show while no boat is saved. A point not placed that is not the next one (the destination before the departure, or both without a boat) says ‘—’. The round ⇅ button between the two rows, active once both points are placed, swaps the departure and the destination, like the map's menu.

  • First click on the map: the departure (green marker).
  • Second click: the destination (red marker).
  • Then drag a marker to move it.
  • A right click on the map, or a long press on a touch screen, opens a menu to place the Departure or the Destination there, and, once both are placed, Swap departure and destination for the way back. A click elsewhere on the map closes the menu without placing a point.
  • A placed point cannot be removed: move it. The ⓘ button of the Trip box shows these gestures, and hides them again.

Coordinates are shown in degrees, minutes, seconds. The departure and the destination are saved with the boat (signed in, with your account's, a second after the last move), and come back at the next visit, the map framed on them. Placed before a boat is saved, they are kept too (signed in, in this tab only): the My boat page takes them up for the new boat.

Departure time (local time, UTC+1)
By default, your device's time when the page opened. A departure time already past comes back to the current time by itself when you return to the page and when you compute; a time to come is never changed. Type the departure time in your device's local time: the computation converts it to UTC, the time of the weather models. The route's times (departure, arrival, cursor, charts, barbs, route log) are in your device's local time too, each followed by its time zone, its offset from UTC at that time (UTC+1, UTC-4, UTC+5:30, or UTC alone), so that a route crossing a change of the clocks tells it; the field names the time zone of the departure time typed beside it. The route log can give them in UTC or in the time zone of the boat's position instead. Choose a time the forecasts cover: past a model's horizon, its route stops, unless the model's previous run reaches further (see How the route is computed); before its first step, the wind of that first step applies (see Data).

The ⌖ button on the Departure row, Use my current position, places the departure where you are: your browser (or the iPhone and iPad app) asks you to share the device’s position, from its GPS on a phone, and the map frames the trip. The position is not followed: it is taken once, like a departure placed on the map, and the marker can then be dragged like the others. If sharing is refused, or the device does not find its position within 20 seconds, a line under the trip's points says so; to try again after a refusal, allow location for this site in your browser or device settings.

Only the boat and the trip are kept: the departure time and the Settings go back to their defaults at each visit of the page. The one exception: a page the browser closed itself for lack of memory, then reloaded, draws the last routing again (see Questions and troubleshooting).

Boat

The Boat box recalls the saved boat: its name (a link to My boat to change it), its polar and its performance when it is not 100%, then its engine assistance (‘Engine at 5 kn below 3 kn, 2 L/h’ or ‘No engine assistance’). The box comes under the Trip box. For a boat saved without a name, its polar is the link. Without a boat, the box comes first, above the trip, and says Start with your boat: the polar sets the speed of every route, and the Choose my boat button opens My boat; once the boat is saved, you come back here.

Settings

The Settings box, folded by default, opens with a click; folded, its title line sums them up: the current, the shore and its minimum depth or margin (‘SMOC · bathymetry · 10 m’). Only the field of the chosen shore shows: Minimum depth on the bathymetry, Coastal margin on the coastlines.

An empty or out-of-bounds setting is refused, never replaced by 0: a message appears under its field (‘Enter a number’, ‘At least 0 NM’, ‘At most 50 m’…), and Compute the route stays greyed out until it is corrected. Only the fields in use count: the Coastal margin on the coastlines, the Minimum depth on the bathymetry.

Current
The surface current every route sails in: SMOC (Copernicus Marine, the default, tide included), RTOFS (NOAA, without the tide) or No current. See the current.
Shore
What the route must avoid:
  • Bathymetry (the default): the sea floor, at about 115 m in Europe and the eastern Caribbean, from eastern Hispaniola to the Lesser Antilles, Trinidad excluded (EMODnet), at about 460 m elsewhere, Cuba, Jamaica and the Bahamas included (GEBCO). The Minimum depth field (m, from 0 to 50, 10 by default; the arrows step by one metre, a decimal value is accepted) rules out any shallower water: put your draught plus a safety margin there. Where EMODnet measures them, depths are measured from chart datum (the level of the lowest astronomical tides, where there is a tide); elsewhere, EMODnet's gaps included, from mean sea level; the route never adds the predicted tide, and at low tide there may be less water than the depth shown away from chart datum. In each 115 m cell of EMODnet, the shallowest depth EMODnet publishes counts (its mean where it publishes no other); a cell that dries at low tide counts as land, even with a Minimum depth of 0. A note of the sources, ‘Not for navigation.’, then shows under the field.
  • Coastlines: the land as OpenStreetMap draws it, to within about ten metres. The Coastal margin field (NM, 0.2 by default, 0 at least; the arrows step by 0.1 NM, a finer value is accepted) sets the minimum distance between the coast and each point of the route, one per time step: between two points, the route never crosses the coast but may come closer to it, the less so the shorter the step. Near a destination itself closer to the coast (a harbour), the margin is lifted so that the route can arrive; it is not lifted at the departure, whose first step must leave the margin.

The time step and the grid are chosen by the computation from the trip's distance, and cannot be set: about a hundred isochrones for a boat at 5 knots, the step in whole minutes (between 1 minute, for a trip of a few miles such as a coastal race, and 6 hours), on a grid of a third of the distance sailed in one step. The time step is the interval between two isochrones, that is between two possible changes of heading; the grid sorts the positions reached at each step, in cells never larger than half the distance sailed in one step at 5 knots (with engine assistance and a non-zero threshold, at the smaller of its two speeds, 2 knots at least).

Compute the route

The Compute the route button becomes active as soon as a boat is saved and the departure and the destination are placed; until then, a line under it tells the step left: ‘Choose your boat first’, ‘Place the departure on the map’, then ‘Place the destination on the map’. The computation sets off with the boat, the trip and the settings; the map frames the trip again and the Result tab opens on ‘Computing the routes…’, under a sliding bar, with the seconds gone by and the outline of the rows to come, while on the map a dashed line marches from the departure to the destination (if your device asks for reduced motion, the line, the bar and the outline stay still). Each model's route shows as soon as it is computed, without waiting for the others: its row takes its rank in the list, a count after ‘Computing the routes…’ (‘Routes in: 3’), the outline of the rows and the dashed line give way to the routes, and the bar and the seconds stay until the last model. The button stays at the bottom of the Setup panel however far it scrolls; once routes are shown, it reads Compute again. Like the logo, the boat's name leaves the page, and the routes computed are lost. A new computation clears the previous routes; going back to Setup leaves them on the map. Moving a point, or changing the time or a setting, does not compute again: the routes shown stay those of the last computation until the next click on Compute again.

You do not choose the models: the server computes a route with every wind model available whose area covers both the departure and the destination. The global models (GFS, NOAA AIGFS, ECMWF, ECMWF AIFS, ARPEGE, ICON, DWD AICON) cover any trip; ARPEGE-EU and ICON-EU join them over Europe and the North-East Atlantic, AROME France from the southern North Sea and the Irish Sea to the western Mediterranean, ICON-D2 from the North Sea and the Danish straits to the southern Baltic and the northern Adriatic, HARMONIE DINI from Iceland and the British Isles to the Lofoten, the Gulf of Bothnia and the Gulf of Finland, and from Biscay to the Gulf of Lion, the Tyrrhenian Sea down to Calabria and the Adriatic down to Montenegro and Otranto, ICON-2I around Italy, from the Gulf of Lion and Menorca to Malta, the Adriatic and the Ionian Sea down to the west of the Peloponnese, and the five AROME Outre-mer over their overseas domains: AROME Antilles over the West Indies, from Hispaniola to well east of Barbados, AROME French Guiana, AROME Indian Ocean from the Mozambique Channel to Rodrigues, AROME New Caledonia and AROME French Polynesia over the Society Islands, the western Tuamotu and the Austral Islands except Rapa, and NOAA's three RRFS: RRFS CONUS over the coasts of the contiguous United States, RRFS Puerto Rico from Hispaniola to Saint-Barth, and RRFS Hawaii over the Hawaiian Islands (see their extent on the Data page). A regional model's route stays within its extent, where it gives the wind: it may follow its edge where a global model's route goes beyond. Visitors' computations go through one at a time: if the server is busy, yours waits its turn.

Reading the result

Model shown

The Model shown box lists one row per model, edged in the colour of its route. They are ranked: first the models reaching the destination, from the finest grid to the coarsest (a finer grid sees more of the coast's effects), on as fine a grid from the closest forecast steps to the farthest (hour by hour follows the changes of the wind more closely than every 3 h: the mean gap between the model's steps from the departure to the arrival), then from the fastest to the slowest; then those not reaching it, from the one stopping closest to the farthest, last those that failed or have no route at all; on a tie, the first computed first. Each row gives the model's name, then:

  • the route's duration (for instance 14h 20m, or 3d 12h 00m beyond a day) when it reaches the destination, and under it, on the right: Most precise when the model has the finest grid of those reaching it, and on as fine a grid the closest forecast steps along the route (several models share it on a tie), then Fastest, or on the far right its gap to the fastest route: +0h55 (+1d 02h30 beyond a day);
  • horizon reached when the end of the model's forecast stopped the route short of the destination, not reached when it stops short for another reason;
  • failed when the model's computation failed: hover over the row to read why (on a touch screen, without hovering, it cannot be read). A model's computation is stopped after 30 seconds: it then fails, ‘The computation took too long’. This model cannot be shown.

The horizon reached, not reached and failed rows are greyed out; the keyboard arrows skip the failed ones.

Only the first six rows show: Show the 6 other models (with their count) unfolds the others, Show fewer models folds them again; the model shown stays in the list even past the sixth. The card of the route shown repeats its badges after the model's name: Most precise, then Fastest, its gap (+0h55), or its outcome. The Most precise badge, what matters most, is filled in blue, Fastest green, a gap or an outcome grey. On a phone, each model is a chip: its name in capitals, then its duration and its badges, or its outcome; the chip of the model shown is edged in its colour, and every model shows, without folding.

The first model is shown straight away and, while the others are computed, the new first one each time a route ranked before it comes, until you click a row (if they all failed, only the rows show); a click on another row (or the keyboard arrows) shows its own. The colours stay the same from one computation to the next; two models that can share a route always get clearly different ones, two that never do (two AROME Outre-mer, one of them and a Europe-only model (ARPEGE-EU, AROME France, ICON-EU, ICON-D2, HARMONIE DINI, ICON-2I), or an RRFS and a model whose area is far from its own) may get similar ones:

GFS · NOAA AIGFS · ECMWF · ECMWF AIFS · ARPEGE · ARPEGE-EU · AROME France · AROME Antilles · AROME French Guiana · AROME Indian Ocean · AROME New Caledonia · AROME French Polynesia · ICON · ICON-EU · ICON-D2 · DWD AICON · HARMONIE DINI · ICON-2I · RRFS CONUS · RRFS Puerto Rico · RRFS Hawaii

On the map

  • Every route is drawn as a thin line, each in its model's colour; switching Other models off in the Layers menu leaves the route shown alone on the map, its boat alone on the time cursor. Once they are all computed, the map flies to frame every route whole, with the departure and the destination, and the wind or current of the route shown appears.
  • The route of the model shown is drawn as a thick line, outlined in white (in black in the dark theme), on top of the others.
  • Its isochrones, in grey under the routes: each line joins the points the boat could reach at the same instant. They show why the route goes there. Hidden by default: switch Isochrones on in the Layers menu.
  • Its motoring legs, dashed in amber.
  • Its wind barbs, navy blue edged with white, one at the start of each leg. By the weather convention, the staff points to where the wind comes from; the speed is rounded to the nearest 5 knots (up to 100), a half barb being worth 5 knots, a barb 10 and a pennant 50; a bare staff means 2 to 5 knots, circles a calm (under 2 knots). Barbs that would overlap are hidden: zoom in to see them all.

A click on a barb opens the details of the leg starting there: under the title ‘Wind’ and the position in degrees, minutes, seconds:

RowMeaning
TimeThe local time of the start of the leg, day/month, time and time zone (20/10 14:00 UTC+2).
TWSThe forecast true wind speed, in knots (kn).
TWDThe direction the forecast true wind comes from, in degrees.
TWAThe angle between the boat's heading and the wind, in degrees: in the current, the wind felt on the water (the forecast wind minus the current). From 0° (head to wind) to 180° (dead downwind), without telling the tack.
CurrentThe current's speed, in knots (route with current only).
Current directionThe direction the current sets towards, in degrees (route with current only).
STWThe boat's speed through the water, followed by ‘(engine)’ on a motoring leg.
SOGThe speed over ground, current included (route with current only).
Distance sailedThe miles sailed since the departure.
Time elapsedThe time elapsed since the departure.

The summary

At the head of the result, a reminder of the trip the routes were computed for: its departure and destination, its departure time, the boat and the current; Edit goes back to Setup. Under it, the card of the route shown, edged in its model's colour: the model's name, its arrival in large, its figures, then a line of notes:

FigureMeaning
DepartureIn the trip reminder, above the card: the day and time of departure (dd/mm hh:mm and time zone).
ArrivalThe day and time of arrival at the destination; for a route not reaching it, of its last point.
DurationThe trip's duration, a whole number of time steps.
Distance sailedThe nautical miles (NM) covered over the ground since the departure, in a straight line from one point of the route to the next (current included).
Current The miles the current gained towards the destination: +3.2 NM (fair), or lost: -1.5 NM (foul). Outside the current model's area or period, the current counts as nil: a route leaving it entirely shows +0.0 NM (fair). Not shown for a computation with No current; not available, rare, when the computation returned no current for the route.
Highest wavesFor a route with waves, the greatest height met along the route, with its period: 3.2 m, 10 s.
WindOn the line of notes: the mean true wind speed met along the route, then the strongest gust for a model that gives them: 6.4 kn mean, gusts 13.4 kn. The current and the highest waves come on that line too.
EngineThe time spent under engine, then the litres burnt (boat with engine assistance only): 02h 01m · 4.0 L.
FuelGiven with the engine time: engine time × hourly consumption.

Under the card, each after a ⚠, what qualifies the route:

  • for a route the forecast's horizon stopped: ‘Stopped at the forecast's horizon, 08/11 01:00 UTC+1’, the last step of the last run it sailed in.
  • when some legs of the route have no gust (see The wind): ‘Gusts known on part of the route only’; the Gusts row then sums up only the legs that have one;
  • on the bathymetry, when the departure or the arrival fell on land, on a shoal or in a harbour closed at this resolution: ‘Departure moved 0.4 NM to navigable water’ (or ‘Arrival moved…’, both on one line if both moved); the route then starts from the moved point, the marker staying where you put it.

Next come two buttons: Route log (see The route log) and Export, a menu of the files of the route shown: GPX (plotter), KML (Google Earth) and CSV (spreadsheet) download it as the log's own menu does, without opening it, and Print every model prints every model's log, as from the log. A click outside the menu, or the Escape key, closes it.

Under the models (see Model shown) comes a table of the speeds, in knots (kn): Min, Mean, Median and Max of the Wind, of the Gusts for a model that gives them (see The wind; their Max is the strongest gust of the route), of the Speed through water and, in the current, of the Speed over ground.

Last, under the speeds, the sources, folded: their line names who provides the current and the waves (‘Sources: CMEMS, Météo-France’), or reads ‘Sources and assumptions’ for a route with neither; a click unfolds them:

  • for a route computed with a current, even one that is nil over the whole trip, its source (Copernicus Marine for SMOC, NOAA for RTOFS);
  • for a route with waves, their source: ‘Waves: Météo-France MFWAM, E.U. Copernicus Marine Service Information (CMEMS)’;
  • the shore avoided: ‘coastlines’, or ‘bathymetry’ and the minimum depth;
  • the wind runs the route sailed in: ‘Wind: run 24/10 06z’ (its UTC date and cycle, as on the Data page), or, for a route that goes on past that run's last step in the model's previous run, ‘Wind: run 24/10 06z to 30/10 08:00 UTC+1, then run 24/10 00z’, the time in your device's local time;

A route not reaching the destination keeps its summary, stopped at its last point, the closest to the destination: its model's row says horizon reached when the forecast's horizon stopped it, not reached otherwise, and the route stays drawn up to that point. A model that could draw no route at all (departure on land with the coastlines, departure after the forecast's horizon) also has an unreached row (horizon reached for a departure after the horizon, not reached otherwise), but neither a line on the map, nor charts, nor a boat on the time cursor: its card shows ‘Destination not reached.’ instead of the arrival and figures, followed, where they apply and each after a ⚠, by the horizon and by the departure or arrival moved to navigable water, with neither the Route log and Export buttons nor the speeds table; the shore avoided is in the sources. On the bathymetry, a departure or an arrival on land is moved to navigable water, or, without deep enough water within 2 NM, every model shows failed.

The route log

Under the route's card (above it on a phone), the Route log button opens, over the whole page (the whole screen on a phone), the log of the route shown: one row per leg, as you would steer it. The close button at the top right, or the Escape key, closes it.

A new leg starts at each tack or gybe (the wind changing side), when the engine starts or stops, and as soon as the heading strays more than 10° from the one the leg started on. Each row gives the leg's figures averaged over its length (directions averaged as angles, 350° and 10° making 0°), but its strongest gust and its highest waves. They are grouped in columns of two lines, the second smaller and in grey: Time (the time over the day), Position (the latitude over the longitude), Heading (true over magnetic), Leg (the duration over the distance), Speed (STW, over SOG on a route with current), True wind (TWS and TWD over TWA), Apparent wind (AWS over AWA), Gusts, Current (its speed over its direction) and Waves (their height over their period and direction). Each figure:

ColumnMeaning
TimeThe local time the leg starts and its time zone (08:00 UTC+1), over its day/month (27/10).
PositionWhere the leg starts, in degrees and decimal minutes, the latitude over the longitude (47°12.3'N over 3°05.6'W).
ConditionsFor a demanding leg only, on a line under it: Demanding or Hard, then why: strong wind (from 22 kn, hard from 28 kn), gusts (from 30 kn, hard from 38 kn), waves (from 2 m, hard from 3 m), head seas (waves within 45° of the bow, from 1.5 m, hard from 2.5 m) or upwind (a TWA under 60° in a wind from 18 kn, hard from 24 kn). Each step of the route is judged, and a leg takes the worst of its steps; the line is tinted, and so are the cells at fault, in orange, or red when hard. These passages are shown, never avoided by the route.
True headingThe heading to steer, in degrees from true north: in the current, the heading through the water that makes good the course over the ground.
Magnetic headingThe same heading from magnetic north, the compass's: the true heading less the magnetic declination where the leg starts, from the World Magnetic Model (WMM2025) of NOAA and the British Geological Survey. Your compass's own deviation is not included.
DurationHow long the leg lasts.
DistanceThe miles sailed on the leg (NM).
STWThe boat's mean speed through the water, followed by ‘(engine)’ on a motoring leg.
TWAThe mean angle between the heading and the wind, in degrees, followed by the tack: starboard (the wind coming from the right) or port; no tack within 3° of head to wind or dead downwind, nor under engine. In the current, the wind felt on the water.
TWSThe mean true wind speed, in knots (kn).
TWDThe mean direction the true wind comes from, in degrees.
AWAThe mean apparent wind angle, in degrees off the bow: the wind the boat feels as it moves, further forward than the true wind, the one the instruments show. In the current, worked out from the wind felt on the water.
AWSThe mean apparent wind speed, in knots (kn).
GustsThe leg's strongest gust, in knots (for a model giving gusts only).
CurrentThe mean current's speed, in knots (route with current only).
Current directionThe direction the mean current sets towards, in degrees (route with current only).
SOGThe mean speed over ground, in knots (route with current only).
WavesThe leg's highest waves: their significant height, and under it their peak period and the direction they come from (route with waves only).

The last row gives the time and position of the arrival, or, for a route that does not reach the destination, of its end (‘End of the route’). When the log opens, the leg being sailed at the time cursor's time is highlighted; click a row's time to close the log and put the time cursor there, the boat on the map.

Under a leg's time, badges tell the manoeuvres opening it: ↻ Tack, ↺ Gybe, ⚙ Engine on or ⚙ Engine off, all in grey (engine on also on the first leg of a route leaving under engine). A demanding passage is told on the line under its leg, not by a badge. A leg only cut at a watch change has none. The tacks and gybes are those counted in the total.

A Total row closes the log: the route's duration, the miles sailed, the mean speed through the water, its tacks and gybes (the wind changing side from one leg to the next, through the bow or through the stern), and under them its time under engine when it has some.

The first list at the top of the log, beside Export, gives No watches, or Watches of 2 h, Watches of 3 h or Watches of 4 h: the legs are then grouped under each watch and cut where it is relieved, on the round hours (a 4-hour watch is relieved at 00:00, 04:00, 08:00…, the first one starting at the departure), so that each watch sees the headings it will steer. The totals stay those of the route, and the CSV gives the rows shown.

The second list gives the times in the Device time, in UTC or in the Position's time zone, each naming its time zone (08:00 UTC+1, 07:00 UTC). The position's time zone is the boat's where each leg starts: the legal time of a country, with its summer time, within its waters (12 NM from its coast), the nautical time zone of the longitude beyond (a band of 15° around each whole hour, UTC-3 at 40°W), so that the offset changes along a passage. The watches are relieved on the round hours of the time chosen. The log keeps both choices from one opening to the next. The CSV always gives UTC.

GPX (plotter) and KML (Google Earth), in the same menu, download the route itself, for a chart plotter, a navigation app (Navionics, OpenCPN, qtVlm…) or Google Earth: its turning points, where each leg starts, named DEP, WP01, WP02… and ARR (END for a route that does not reach the destination), each with its time in UTC and the headings to steer, true and magnetic; then every position of the route, as a track in the GPX and as a line in the KML. In the GPX, the turning points make a route a plotter can follow; in the KML, placemarks. They are those of one row per leg, whatever the rows shown.

In the Export menu at the top of the log, CSV (spreadsheet) downloads the log as a CSV file, to open in a spreadsheet: one row per leg then the arrival, the times in UTC, the positions in decimal degrees, the raw figures without units (the units are in the headers), the tack, a 1 in the Engine column for a motoring leg, and in the Conditions column those of a demanding leg (‘Demanding · strong wind’), in the Manoeuvres column those opening the leg (‘Tack’). Print every model prints the log of every route computed, one model per page, in the order of the models shown, with the rows and times chosen: each under its title, the model, then the boat, the departure and the arrival. It fits the width of an upright A4 page; the column headers come back at the top of each page, and a leg is never parted from the line of its conditions. A click outside the menu, or the Escape key, closes it without closing the log.

In the iPhone and iPad app, GPX (plotter), KML (Google Earth) and CSV (spreadsheet), in the log's Export menu as in the result's, open the file in the share sheet, to save it to Files, send it by AirDrop or open it in another app, and Print every model opens the iOS print options, which can also save the log as a PDF.

The charts

Under the map, the charts button of the time cursor (a chart icon, beside the time) opens a drawer of charts, side by side across the map's width (lower on a horizontal screen), the map shrinking above it to frame the routes again; the button closes it, and your device remembers whether it was open (closed until you first open it). On a phone there is no charts button: the charts sit in the sheet, one under the other, under the route's card. They show how things change along the trip, a smooth curve through one point per time step, the local time along the bottom (a few round hours, dd/mm hh:mm and time zone):

  • Wind (kn): the true wind speed met, and, dashed over it, the Gusts (kn), for a model that gives them (see The wind): a ‘gusts’ legend then follows the title, the axis rises to the strongest gust, and the tooltip gives the gust after the wind. The dashed line stops where the gusts are missing and starts again where they come back.
  • Speed over ground (kn): the boat's actual speed over the sea floor, current included (without current, its speed through the water), in orange steps where it motors, the engine holding its speed through the water (for a boat with engine assistance, an ‘engine’ legend follows the title, and the tooltip adds ‘(engine)’ to the speed). The legs motored are also shaded in pale orange behind every chart.
  • Waves (m): for a route with waves (see The waves), the Significant height of the waves, the mean height of the highest third. The tooltip gives the height to the tenth, the peak period (Tp) in seconds and the direction the waves come from, in degrees. The area breaks where the waves are missing and starts again where they come back.

Hover over a chart to read the values at each step: the tooltip follows the same instant on every chart. Click to set the time cursor at that instant.

The time cursor

Under the map, a bar scrolls through time, from the departure to the last point of the longest route. For each route, a small boat in its model's colour sits where it is at that instant, pointing along its course over ground (in the current, it differs from its heading), and stays at its last point once that is past; the one of the model shown is larger and in front, the others a little transparent. So you can see, at a given instant, which model is ahead.

  • The play button moves time on from where the cursor is, at a pace of the whole trip in 20 seconds, and stops at the end; pressing it again then starts over. It turns into pause while playing.
  • Drag the cursor to choose a time; playing then stops, as it does on a click on a chart.
  • Coloured ticks on the bar mark each model's arrival at the destination.
  • Under the bar, a few round hours (dd/mm hh:mm and time zone) serve as landmarks; they are hidden on a narrow screen.
  • On the right, the time chosen (weekday, dd/mm hh:mm and time zone) and the time elapsed since the departure.
  • The time chosen is also marked by a vertical line on the charts.

The map

The site's maps (routing, boat, data, model pages) stay flat with north up. They follow your device's theme: light in the light theme, dark in the dark theme, and switch as soon as you change it. The wheel, a double click or a pinch zoom (a double click places neither departure nor destination); a drag moves the map.

Bathymetry

When the server has it, the routing map shows the same depths as the computation (EMODnet in Europe and the eastern Caribbean, GEBCO elsewhere), whatever the shore chosen for the computation:

  • a blue tint of the waters under 50 m, the stronger the shallower the water: a gradient from afar, then, closer, steps between the isobaths, cut along the coastline. Lakes above sea level are not tinted; the few lakes that remain water for the computation, such as the IJsselmeer, are tinted only from afar;
  • the isobaths of 2, 5, 10, 20, 30 and 50 m, from a regional zoom, labelled with their depth when you zoom in further.

Depths are at chart datum (the lowest tide level) where EMODnet measures them, in Europe and the eastern Caribbean, at mean sea level elsewhere, EMODnet's gaps included; the route never adds the predicted tide, and at low tide there may be less water than shown away from chart datum. Basemap © Mapbox, © OpenStreetMap contributors; depths EMODnet and GEBCO 2026.

Wind and current

Once every model's route is computed, the routing map shows the wind of the model shown (the row selected under Model shown, the chip on a phone), at the time of the time cursor, from the very run the route was computed in, and, past that run's horizon, from the longer run the route went on in:

  • its speed as colours, from blue for a calm to purple past 50 kn. The colours stay as you zoom in toward the coast, the bathymetry's tint and isobaths showing through them, and fade out only in close-up on a harbour or an anchorage;
  • particles drifting the way the wind blows, the faster the stronger it is, at every zoom. They vanish while the map moves and start again as soon as it stops; they are not shown if your device asks for reduced motion;
  • the mean wind 10 m above the sea, never the gusts: the gusts along the route are in its charts and its summary.

The wind shows over the sea only, and only within the area its model covers: a regional model, such as AROME France or ICON-D2, shows nothing beyond its domain. At the closest zooms, a particle may graze the coast. While the time cursor plays, the wind is drawn coarser to keep up, and skips the hours that could not be loaded in time; it is drawn in full as soon as it stops. The Layers button at the top right of the map opens a menu: under On the sea, the None, Wind and Current buttons choose what the sea shows, then two switches show or hide the Other models (their routes and boats, shown by default) and the Isochrones of the route shown (hidden by default). Your device remembers your choices, the wind by default; a click outside the menu, or the Escape key, closes it. The Layers button only shows once every model's route is computed: neither before a computation nor during one. On a phone it is a round button without a label, at the top right, facing the logo.

With Current, the map shows instead the sea current the route was computed in (the Current chosen in the Settings, SMOC or RTOFS), from the same run and, past its horizon, from the longer run the route went on in, at the time of the time cursor: its speed as colours, from indigo for slack water to orange past 4 kn, and particles drifting with it, over the sea only, as for the wind. SMOC's current includes the tides, RTOFS' does not; on a grid about 9 km wide, neither tells the stream of a narrow passage. For a route computed without current, the button is greyed out, hovering it says ‘This route was computed without current’, and the map shows the wind.

Data

The Data page shows, live, what the routes are computed on: the runs available of the wind, current and wave models, how fresh they are and what they cover, then the server's coastline and bathymetry (see The sources). A run is one execution of a model, started at a fixed time (for instance 06z, that is 6 h UTC), which forecasts the following hours up to its horizon.

The models table

One row per model available, the wind models, then the current ones, then the wave one. A model appears as soon as its first run is downloading; a model without any run (status ‘Unavailable’) has no row. Then come, always shown, the coastline (OSM, for OpenStreetMap, of type Coastline) and the two bathymetries (EMODnet and GEBCO, of type Bathymetry).

ColumnMeaning
ModelThe model's name, after the flag of the country it comes from: France for Météo-France's models, Germany for DWD's (DWD AICON, ICON, ICON-D2, ICON-EU), Denmark for DMI's (HARMONIE DINI), Italy for ItaliaMeteo's (ICON-2I), the United States for NOAA's (GFS, NOAA AIGFS, RRFS, RTOFS), Europe for ECMWF's and for Copernicus' SMOC and MFWAM. The coastline and the depths are flagged the same way: a globe for the global ones, OpenStreetMap's coastline and GEBCO, Europe for EMODnet. Hovering over the flag names the country. The name opens the model's page (see Model pages).
TypeWind, Current, Waves, Coastline or Bathymetry.
StatusHow fresh the run available is, or, for the coastline and the depths, whether the server has them (see below).
RunThe run available, day/month and UTC hour: 17/09 06z. For the coastline and the depths, which nothing renews, their edition: the date of the OpenStreetMap extract (19/10/2026), DTM 2024 for EMODnet, 2026 for GEBCO.
FrequencyHow many of the model's runs the server takes a day, hence how often its forecast is renewed: 8×/day (every 3 h) for AROME France, ICON-EU, ICON-D2 and HARMONIE DINI, 4×/day (every 6 h) for the five AROME Outre-mer, the three RRFS (which run every hour, but only their 00, 06, 12 and 18z runs reach 84 h), ARPEGE, ARPEGE-EU, DWD AICON, ECMWF, ECMWF AIFS, GFS, NOAA AIGFS and ICON, 2×/day (every 12 h) for ICON-2I, 1×/day for SMOC, RTOFS and MFWAM, ‘—’ for the coastline and the depths.
ResolutionThe step of the model's grid, in degrees (0.25° ≈ 25 km, 0.0833° = 1/12° ≈ 9 km, 0.01° ≈ 1 km); for the coastline and the depths, how fine they are in metres: ≈ 10 m for the coastline, ≈ 115 m for EMODnet, ≈ 460 m for GEBCO.
HorizonHow long, from now, the forecast still covers: 3 d 18 h, 0 h once past. Beyond a wind model's horizon, its route goes on in the model's previous run if that one reaches further, then stops; beyond the current model's, it goes on in the model's previous run if that one reaches further, then carries on without current. ‘—’ for the coastline and the depths, which hold whatever the time.

The Status takes one of these values, each after a dot: green (Up to date), yellow (Update available), orange (Updating…), red (Not on the server) or grey (the others):

  • Up to date: the run available is the latest published; for the coastline and the depths, the server has them.
  • Update available: a more recent run is published but not downloaded yet (its download has not started, or failed and will be tried again); the old one is used meanwhile.
  • Updating…: a run is downloading.
  • Latest run not checked: the run available is used, but the latest publication has not been checked yet (as long as the service never checked this model, for instance at its very first start) or could not be.
  • Not on the server: the server lacks this coastline or this bathymetry. Without bathymetry, a route can only be computed with Coastlines; without coastline, a route on the Coastlines leaves every model failed.

Nothing needs triggering by hand: the latest publications are checked regularly (every 15 minutes by default) and every new run is downloaded automatically. The page shows the state at the moment it is loaded: reload it to see the latest one. If the models' state cannot be read, an ‘unreadable view’ message shows next to the title.

Time coverage

One strip per model, in alphabetical order, on a shared axis in UTC hours (days at the top, hours every 6 h below); it opens scrolled to the instant the page was loaded. Each box is a forecast step of the run, placed at its valid time; its width is the gap to the next step (a square = 1 h, a box three times as wide = a 3 h step). The now line marks the instant the page was loaded (it is absent if that instant lies outside every strip): past steps are faded. A yellow strip flags a model with an update available, an orange one a model updating. Hover over a box to read its step and its date. The strip scrolls horizontally. Without any run, it shows ‘No model available.’

Spatial coverage

A map of the extent of the regional models available: AROME France (its real shape), ICON-D2 (its real shape), HARMONIE DINI (its real shape), ICON-2I, AROME Antilles, AROME French Guiana, AROME Indian Ocean, AROME New Caledonia, AROME French Polynesia, RRFS CONUS (the real shape of its grid), RRFS Puerto Rico, RRFS Hawaii, ICON-EU and ARPEGE-EU (the rectangle of their grid), and, when the server has the bathymetry, that of EMODnet's fine depths (Europe, cut at about 85° N by the edge of the map, and the eastern Caribbean). The global models and GEBCO cover the whole planet and are not drawn; with nothing regional, the map gives way to ‘No regional model available.’ These colours belong to this map; they are not the routes' colours. A route is computed with a model only if the departure and the destination both lie within its extent, and that route stays within it.

Model pages

Each name in the table, in the time coverage and in the spatial coverage's legend opens the page of its model, or of its dataset. AROME France and its five overseas domains share one page, as do ARPEGE and ARPEGE-EU, ICON, ICON-EU and ICON-D2, and RRFS's three domains: each domain has a section of its own there, which the link opens at, except for AROME France, ARPEGE and ICON, whose link opens the page at the top. The page tells the model's history, the science it rests on, how a run is computed, what it does well and where it errs at sea, and what Saily WR takes from it, then lists its sources.

At the top, ‘Now in Saily WR’ shows the model's rows as the table of the Data page does: their status, run, frequency, resolution and horizon, and, for a regional model or for EMODnet, the map of where they reach. A domain with no run yet keeps its row there, as Unavailable, with its run, resolution and horizon as ‘—’, and the names there are not links. Beside the text, the ‘Fact sheet’ sums the model up: who produces it and since when, its grid and resolution, its runs and how far ahead they reach.

The sources

The wind

The 10 m wind of twenty-one models, the global ones everywhere, the regional ones, finer than most global ones, over their area; each gives its own route:

ModelProducerResolutionCoverage
GFSNOAA (United States)0.25° ≈ 25 kmWorld, one forecast step every hour up to 5 days, then every 3 h up to 16 days
NOAA AIGFSNOAA (United States, AIGFS, its machine-learned model)0.25° ≈ 25 kmWorld, one forecast step every 6 h up to 16 days
ECMWFEuropean Centre (IFS)0.1° ≈ 10 kmWorld, one forecast step every 3 h up to 6 days, then every 6 h up to 15 days (00z and 12z runs); the 06z and 18z runs stop at 6 days
ECMWF AIFSEuropean Centre (AIFS Single, its machine-learned model)0.25° ≈ 25 kmWorld, one forecast step every 6 h up to 15 days
ARPEGEMétéo-France0.25° ≈ 25 kmWorld, one forecast step every hour up to 48 h, then every 3 h up to 102 h (4 days and 6 h), 114 h (4 days and 18 h) for the 12z run
ICONDWD (Germany)0.25° ≈ 25 kmWorld, one forecast step every hour up to 78 h, then every 3 h up to 7.5 days (00z and 12z runs) or 5 days (06z and 18z runs)
DWD AICONDWD (Germany), its machine-learned model0.25° ≈ 25 kmWorld, one forecast step every 3 h up to 7.5 days (00z and 12z runs) or 5 days (06z and 18z runs)
ARPEGE-EUMétéo-France0.1° ≈ 10 kmEurope and the North-East Atlantic, from 20° N to 72° N and from 32° W to 42° E (the Azores, Madeira and the Canaries included), one forecast step every hour up to 102 h (114 h for the 12z run)
ICON-EUDWD (Germany)0.0625° ≈ 7 kmEurope, from 29.5° N to 70.5° N and from 23.5° W to 62.5° E (Madeira included, neither the Azores nor the Canaries), one forecast step every hour up to 78 h, then every 3 h up to 120 h (hourly up to 51 h only for the 03z, 09z, 15z and 21z runs)
ICON-D2DWD (Germany)0.02° ≈ 2 kmGermany's seas and their neighbours' (its real shape, not a rectangle): the eastern Channel from Cherbourg, the North Sea up to the Firth of Forth, Aberdeen and the southern Skagerrak, the Kattegat and the Danish straits, the southern Baltic as far as Gdańsk, Öland and Gotland up to Visby, and the Adriatic from Venice and Trieste to Istria, Zadar and Ancona: sees sea breezes and coastal effects, hourly over 48 h
HARMONIE DINIDMI (Denmark)2 km, regridded at 0.03° × 0.02°Northern Europe's seas and the Adriatic (its real shape, a fan, not a rectangle): Iceland and the Faroes, Ireland and Britain, Biscay and Galicia down to Vigo, the North Sea, the Norwegian coast up to the Lofoten but not Tromsø, the whole Baltic with the Gulfs of Bothnia and Finland, and to the south the Gulf of Lion, the Ligurian Sea, Corsica, northern Sardinia, the Tyrrhenian Sea down to Calabria and most of the Aeolian Islands (not Alicudi), the Gulf of Taranto and the Adriatic down to Montenegro and Otranto, but not Albania, Portugal south of Póvoa de Varzim, the Balearics, southern Sardinia, Sicily (bar the tip of Capo Peloro) or the Strait of Messina south of its northern mouth: sees sea breezes and coastal effects, hourly over 60 h. DMI's open data, CC BY 4.0
ICON-2IItaliaMeteo (Italy)2.2 km, at 0.025° × 0.02°Italy's seas, a rectangle from 33.7° N to 48.9° N and from 3° E to 22° E: the Gulf of Lion, Menorca and the east of Mallorca (not Palma), Provence and the Riviera, the Ligurian Sea, Corsica, Sardinia, the Tyrrhenian Sea, Sicily, Malta, Tunisia down to the Gulf of Gabes and the Algerian coast east of Algiers, the whole Adriatic, Albania, the Ionian Sea and the west of Greece down to the Peloponnese's west coast, but not the Aegean: sees sea breezes and coastal effects, hourly over 72 h, two runs a day. ItaliaMeteo's open data, CC BY
AROME FranceMétéo-France0.01° ≈ 1 kmAround France, from the southern North Sea to the western Mediterranean: sees sea breezes and coastal effects, hourly over 51 h
AROME AntillesMétéo-France (AROME Outre-mer)0.025° ≈ 2.5 kmThe West Indies, from the eastern tip of Cuba, Hispaniola and the southern Bahamas (Jamaica excluded) to well east of Barbados (51.7° W), and from the coast of Venezuela to the Turks and Caicos Islands: sees the islands' effects on the trade wind, over 48 h
AROME French GuianaMétéo-France (AROME Outre-mer)0.025° ≈ 2.5 kmFrench Guiana and its coast, from Paramaribo to northern Amapá (Cabo Norte), out to 9° N offshore: sees the land's effects on the trade wind along the shore, over 48 h
AROME Indian OceanMétéo-France (AROME Outre-mer)0.025° ≈ 2.5 kmThe south-west Indian Ocean, from the African coast (from Mombasa to southern Mozambique, Maputo excluded) to Rodrigues, and from southern Madagascar to the Seychelles: Réunion, Mauritius, Mayotte, the Comoros; sees the islands' effects on the trade wind, over 48 h
AROME New CaledoniaMétéo-France (AROME Outre-mer)0.025° ≈ 2.5 kmNew Caledonia, the Loyalty Islands and nearly all of Vanuatu: sees the islands' effects on the trade wind, in and around the lagoon, over 48 h
AROME French PolynesiaMétéo-France (AROME Outre-mer)0.025° ≈ 2.5 kmThe Society Islands, the western Tuamotu (as far as Fakarava, Anaa and Tahanea) and the Austral Islands except Rapa, but not the Marquesas or the Gambier: sees the islands' effects on the trade wind, over 48 h
RRFS CONUSNOAA (United States)3 km, regridded at 0.03°The contiguous United States and their coasts, from the Gulf of Maine to the northern half of the Gulf of Mexico (north of about 24° N: neither the Bay of Campeche nor Yucatán), the Florida Keys and Puget Sound, the Bahamas but Great Inagua, plus Providenciales and West Caicos (not the other Turks and Caicos Islands) and the south of Canada (Nova Scotia west of about 63° W), but neither Bermuda nor Cuba (bar a strip of its north coast around Varadero): sees sea breezes and coastal effects, one forecast step every hour up to 84 h (3.5 days). Until 3 November 2026, the date NOAA puts it into operation, it is read on NOAA's parallel feed.
RRFS Puerto RicoNOAA (United States)2.5 km, regridded at 0.025°From the eastern tip of Cuba and all of Hispaniola (75.5° W) to Saint-Barth (62.5° W), and from 15° N to 22° N: Puerto Rico, the Virgin Islands, Anguilla and Saint-Martin; sees the islands' effects on the trade wind, one forecast step every hour up to 84 h. It overlaps AROME Antilles: a route there gets both. Like RRFS CONUS, it is read on NOAA's parallel feed until NOAA puts it into operation on 3 November 2026.
RRFS HawaiiNOAA (United States)2.5 km, regridded at 0.025°The Hawaiian Islands, from Niihau and Kauai to the Big Island, and their channels, from 18° N to 23° N and from 161.5° W to 153.9° W, but not the Northwestern Hawaiian Islands: sees the islands' effects on the trade wind, in the channels and in their lee, one forecast step every hour up to 84 h. Like RRFS CONUS, it is read on NOAA's parallel feed until NOAA puts it into operation on 3 November 2026.

How much of the horizon of each model's available run remains, counted from now, is on the Data page.

Eighteen of these models also give the near-surface gusts (at 10 m; at the surface for GFS and the three RRFS): GFS, ECMWF, ARPEGE, ARPEGE-EU, AROME France, the five AROME Outre-mer, the three RRFS, ICON, ICON-EU, ICON-D2, ICON-2I and HARMONIE DINI. Their routes show them on the wind chart and in the summary (see The summary and The charts), but the route is computed on the mean wind alone: the gusts are shown, never used. The three machine-learned models, ECMWF AIFS, DWD AICON and NOAA AIGFS, give no gusts: their routes have neither gust line nor gust row. Each model's gust is shown as the model gives it, under the one name ‘Gusts’, though they do not all measure the same thing:

  • GFS and the three RRFS: the gust at the very instant of the forecast step;
  • ECMWF: the strongest gust since the model's previous output, over the last hour up to 90 h, the last 3 h from 93 to 144 h, the last 6 h beyond. Saily WR takes ECMWF every 3 h up to 144 h: up to 90 h, the gust shown covers only the last of the 3 hours of its step, a lower bound of the strongest gust over those 3 hours;
  • Météo-France's models (ARPEGE, ARPEGE-EU, AROME France and the five AROME Outre-mer): the strongest gust over the hour ending at the step. Past 48 h, ARPEGE has a step every 3 h only, but its gust still covers the last hour only: a lower bound of the strongest gust over those 3 hours;
  • ICON, ICON-EU and ICON-D2 (DWD), ICON-2I (ItaliaMeteo) and HARMONIE DINI (DMI): the strongest gust over the past hour. Past 78 h, ICON and ICON-EU have a step every 3 h only, but their gust still covers the last hour only: a lower bound there too.

Between two steps, the gust is interpolated like the wind. A route may lack gusts on part of its way: Saily WR takes no gust at a run's start (its step 0), so a route leaving before a run's first forecast step (1 h after its start, 3 h for ECMWF) has none on its first legs; near the edges of a regional model's domain, where it gives no gust at some points, a leg starting next to them has none either; and a run whose gusts are missing (not downloaded yet, or late: the server fetches them again at the following updates) gives none. The gust line then stops where the gusts are missing, and the summary says they are known on part of the route only.

The current

SMOC — Copernicus Marine
The surface current of the whole world, at 1/12° (≈ 9 km), hour by hour over about ten days: ocean circulation, tide and wave drift together. It is the default current.
RTOFS — NOAA
The surface current of the whole world, at 1/12°, over 8 days (hour by hour up to 72 h, then every 3 h), with neither the tide nor the wave drift. Its run of the day reaches the server in two parts, as NOAA publishes it: its first 72 h about 09:30 UTC, the rest about 15:30 UTC; in between, beyond 72 h, a route goes on in the run of the day before, kept on the server, up to its horizon.

Outside the period the current model covers, its previous run included, the route sails without current.

The waves

MFWAM — Météo-France (Copernicus Marine)
The state of the sea of the whole world, at 1/12° (≈ 9 km), every 3 h over 10 days, each new forecast taken as soon as it is published: the significant height of the waves (Hs), the direction they come from (their mean direction) and their peak period (Tp).

Every route has the same waves, whichever wind model it is computed in. There are none on land or on sea ice, nor outside the period of the run: a leg there has no waves. The waves are shown, never used: they change neither the route nor the boat's speed.

The coastline and the depths

Coastlines — OpenStreetMap
The coastline of the whole world, to within about ten metres, islands and channels included.
Bathymetry — EMODnet Digital Bathymetry (DTM 2024)
The depths of Europe (from 36° W to 43° E, from 15° N to the pole) and of the eastern Caribbean (from 70.5° W to 59.5° W, from 11° N to 19° N: from eastern Hispaniola to the Lesser Antilles, Trinidad excluded), at 1/16 of an arc minute (≈ 115 m), at chart datum (LAT), the land completed by OpenStreetMap. A cell that dries at low tide (above chart datum) counts as land: no route crosses it, even at high tide and with a Minimum depth of 0. In each cell, the shallowest depth EMODnet publishes is kept (its mean where it publishes no other), so that a rock head does not get lost in the average; a cell without a measurement takes GEBCO's depth, at mean sea level. Licence CC BY 4.0; modified data: shallowest depth published per cell, rounded, OpenStreetMap land. Not for navigation.
Bathymetry — GEBCO 2026
The depths of the whole world, outside Europe and the eastern Caribbean, and, within these two areas, where EMODnet has no measurement, at 15 arc seconds (≈ 460 m), at mean sea level, without tide, the land completed by OpenStreetMap. Coarser than the coastline and EMODnet: a small harbour may show as closed. At EMODnet's border, as around its gaps, the reference switches from chart datum to mean sea level: the depths take a step there.

The polars

About 22,400 sailboat polars, to search on the My boat page: about 700 models, from cruising to racing, from the weather routing plugin of OpenCPN (weather_routing_pi), cleaned up by Bill Freeman; and the polars of 21,778 boats certified by the Offshore Racing Congress (ORC), from their latest certificate between 2019 and 2026: up to 2025 as gathered by orc-data (Jan Pieter Waagmeester), since 2026 from ORC's own data.

How the route is computed

Saily WR computes by the isochrone method. From the departure, at each time step it tries 36 headings, every 10°; the speed on each heading comes from the polar, read at the model's wind at that place and that instant, interpolated between the points of its grid and between its steps. The points reached at the same instant form an isochrone; in each cell of the grid the computation chooses (or, if smaller, of a cell half the distance sailed in one step at the slowest speed it assumes, see Settings) that no earlier isochrone has reached yet, only the point closest to the destination is kept, and the next step starts again from the points of the front. When the whole front falls back into cells already reached (a calm), the computation still keeps the closest point per cell, so that the front moves on. When an isochrone reaches the destination, the fastest route is traced back to the departure.

The arrival
The destination is reached within 0.1 NM, or within the distance a boat at 5 knots would sail in one time step if that is larger (5 NM for a one-hour step). The route's last point is therefore near the destination, not on it, and the duration is a whole number of steps, a step that is the shorter the shorter the trip (see Settings). On the approach, within ten times that distance of the destination, a leg the coast or the depths stop is tried again shorter, at half, a quarter, then an eighth of its distance through the water (the boat slows down, the current carries it as far); such a leg is kept even in a cell already reached, if it gets closer to the destination there. The route thus works up a channel or into the head of a bay narrower than a whole leg, on short tacks.
The search area
The computation stays within a circle centred halfway along the trip, 1.5 times the direct distance across, and, for a regional model, within the rectangle of its grid. A very large detour, such as rounding a peninsula longer than the trip, leaves this circle: the model is then not reached; likewise for a regional model whose route would have to leave its grid. One exception: when the current carries every position of a step out of the circle, the computation keeps them, still within the grid.
The performance
Every speed of the polar is multiplied by the boat's Performance. Between its values, the polar is interpolated linearly; below its lightest wind, the speed falls to 0 without wind, and below its closest angle to the wind, to 0 head to wind; beyond its strongest wind or its widest angle, its last values apply.
The engine
With engine assistance, wherever no heading lets the boat sail at least at the Minimum speed before engine, the boat motors at its Engine cruising speed. Engine hours and fuel are totalled.
The current
The boat sails in the wind felt on the water (the forecast wind minus the current), at its speed through the water, and the current also carries it over the ground: the route seeks out a fair current and keeps away from a foul one. A boat slower than a foul current goes backwards.
The coastline
With the coastlines, a leg is kept only if it crosses no coastline and ends at least the Coastal margin away from the land (only its end is checked); near a destination itself within the margin, the margin is lifted. A departure on land gives no route.
The depths
With the bathymetry, a leg is kept only if all the water it crosses is at least as deep as the Minimum depth. A departure or an arrival on land, on a shoal or in a closed basin is moved to the nearest navigable water, within 2 NM at most; beyond that, every model's computation fails.
The horizon
No step starts after the wind model's last forecast step: the last one starts at that step at the latest and ends up to one step later; if the destination is not reached by then, the model is horizon reached. When a model's latest run reaches less far than the one before it, which the server keeps (ECMWF's 06 and 18 UTC runs stop at 6 days, its 00 and 12 UTC ones at 15; the 06 and 18 UTC ones of ICON and DWD AICON at 120 h, their 00 and 12 UTC ones at 180 h; ICON-EU's 03, 09, 15 and 21 UTC ones at 51 h, its others at 120 h; ARPEGE's and ARPEGE-EU's at 102 h, but for the 12 UTC one, at 114 h), the route sails the latest run up to its last step, then goes on in the previous one: between the last step of the one and the next step of the other, the wind is interpolated in time as between any two steps, and the horizon is the previous run's. A departure past the latest run's last step sails the previous run alone. Each step keeps the wind read at its start; before the first forecast step, it is that step's.

On a phone

  • The routing page gives the whole screen to the map, the panel being a sheet over its bottom that its handle raises and lowers (see Plan a route); the Setup and Result tabs do not show: See the results and Edit go from one to the other.
  • A long press on the map replaces the right click to open the trip menu.
  • A computation, or See the results, lowers the sheet to its peek on the result: the time cursor, the route shown on one line and the models' chips; Edit raises it half way on Setup.
  • The error of a failed model is only given when hovering over its row with a mouse: on a phone, its chip does not show it.
  • The time cursor narrows: the dates under the bar disappear, the time stays on the right.
  • The My boat, Plan a route and Data pages keep their scale: a pinch zooms the map, not the page. The others (the home page, this guide, the blog, each model's page, About and the account page) zoom normally.

Your account

An account is optional: every page, every setting and every route works just the same without one, and Saily WR stays free. Signed in, your boat and its trip are kept in your account instead of this browser: you find them again on every browser and device where you sign in. Nothing else goes into the account, neither your routes nor the settings; signed in, a computation only tells the server that it comes from your account (see Your data).

When you open the routing page or My boat signed in while your account has no boat yet and this browser has one, that boat is copied into your account, with its trip. If your account already has a boat, that one is shown, and this browser's is ignored. A boat the server refuses (a field missing or out of bounds, a polar no longer offered) is not copied: your account starts without a boat. Either way, the browser's own boat stays as it was: signed in, the pages neither show nor change it, and once you sign out they show it again, as before you signed in. Only Continue without an account, after an expired session, saves your changes into it (see When the session has expired).

Signing in

The Account link at the foot of every page but the routing page leads to the account page. A server run without accounts does not show it, and its account page says so.

On the routing page, as long as you are not signed in, the Your boat on every device window opens over the map at each arrival, wherever you come from: a link of the site, a bookmark, a search engine or the app. Its Sign in with Google and Sign in with Apple buttons sign you in, then bring you back to the routing page; Continue without an account, the cross or the Escape key closes it, and everything then works without an account. It does not open when the page is reloaded, nor on the way back from My boat after Save, nor on a server run without accounts, nor in the browser built into an app (Instagram, Facebook, Messenger, TikTok, LinkedIn), where Google refuses to sign you in: to sign in, open the page in Safari or Chrome.

Click Sign in with Google or Sign in with Apple, then choose your account on Google's or Apple's page: the first sign-in creates your account, with no form and no password; the next ones find it again. Saily WR asks Apple only for your e-mail address, not your name. You come back to the account page, signed in, and you stay signed in on this browser until 30 days after you last opened the routing page, My boat or the account page, or computed a route, unless you sign out. In the iPhone and iPad app, these buttons open the iOS sign-in window, which first asks whether Saily WR may use saily.io to sign in: once you have chosen your account, the window closes and you are signed in in the app, as on a browser.

One account opens both ways: signing in with Google then with Apple, or the other way round, with the same e-mail address, verified by both, takes you to the same account, capitals or not, and the account page then lists both. An account holds at most one Google sign-in and one Apple sign-in: another Google account with the same address gets a Saily WR account of its own, and so does another Apple Account. If you choose Apple's ‘Hide My Email’, Apple gives Saily WR a relay address unique to this site (ending in @privaterelay.appleid.com), which matches no Google address: that sign-in gets an account of its own. A sign-in already linked to an account always stays with it, even if its address changes later.

A sign-in that fails brings you back to the account page with its reason: ‘You cancelled the sign-in.’ when you turned it down on Google's or Apple's page, ‘The sign-in took too long: try again.’ after more than 10 minutes on that page, ‘The sign-in was refused: try again.’ when the answer of Google or Apple fails a check.

The account page

Signed in, the page shows Sign-in methods, each one linked to your account, Google or Apple, with its e-mail address if the provider gave a verified one, alone otherwise (with ‘Hide My Email’, the relay address Apple gives), and Created on, the date of your first sign-in, then two buttons.

Sign out
Ends your session, on the server and in this browser: the page says ‘You are signed out.’ and offers to sign in again. The other browsers you signed in on stay signed in.
Delete my account
Asks for a second click: the page warns ‘Your account and its boat are erased at once, and from the backups within 7 days. This cannot be undone.’ and shows Yes, delete it for good. That click deletes the account at once and for good, with all its sign-in methods, its boat, its trip and its sessions on every browser: the page says ‘Your account is deleted.’ This browser's own boat, if it has one, stays as it was, and the pages show it again. Signing in again later, with Google or Apple, creates a new account.

When the session has expired

If your session is no longer valid when you compute a route, or when the routing page or My boat reads or saves your boat (it has expired, or the account was deleted on another browser), the server refuses and signs you out. The page then says ‘Your session has expired: sign in again.’, in the Result tab for a computation, and offers two choices. Signing in again, with Sign in again with Google or Sign in again with Apple, goes through Google or Apple and brings you back to the page, with your account's boat and trip. The second depends on what was refused: Compute again without an account computes the same route at once, without an account; Continue without an account, for the boat, goes on with this browser's boat. After a refused read, the page shows it; after a refused trip save on the routing page, the trip is saved with it, in place of the one it held, and the page shows it; after a refused save on My boat, the form is saved in this browser, in place of the boat it held, then the routing page opens, as after any save. On the account page, deleting the account with an expired session shows the same message, signed out, and deletes nothing; signing out always says ‘You are signed out.’

When accounts are unavailable

If the account database cannot be reached, the sign-in, and the account page while you are signed in, say ‘Accounts are unavailable for now: try again later.’, and a computation started while signed in is refused with the same message. Signed in, the routing page and My boat cannot read nor save your boat either, and say so (see Questions and troubleshooting). Without an account, nothing changes: every page and every route works as usual. If the server does not answer at all (connection lost), the account page says ‘The server cannot be reached: check your connection and try again.’

Your data

  • No sign-up needed: an account is optional.
  • Without an account, the boat, its position and its destination (placed even before the boat is set up) are saved in your browser (local storage); signed in, they are saved in your account (see below), and a trip placed while the account has no boat yet waits in the tab (session storage) until the boat is saved. The language you choose is saved in your browser, where Mapbox's map library also keeps an anonymous identifier, for its usage statistics. The routing page also keeps there what the map shows (None, Wind or Current), the Other models and Isochrones switches, whether the charts drawer is open, the route log's choices (watches, times in UTC) and the last routing (its request and its routes), erased when you leave the page, to draw it again within the hour if the browser reloads the page it had to close.
  • A computation sends the server what it needs: the polar and its performance, the engine, the departure, the destination, the departure time and the settings. Neither the name nor the MMSI.
  • The server logs each request, page or computation, with the IP address and the browser that made it, and each computation with these data, for troubleshooting and monitoring the service. It keeps this log for 30 days at most, and Grafana Labs, the site's monitoring service, hosted in Europe, keeps a copy for 14 days.
  • If you create an account (see Your account), the server keeps the date the account was created and that of your last sign-in; for each sign-in method, the identifier Google or Apple gives you, the dates of its first and last sign-in, your e-mail address as they give it, if verified (with Apple's ‘Hide My Email’, a relay address) and, from Google only, your name: Saily WR does not ask Apple for it; and for each session a fingerprint of its cookie and its expiry date. Signed in, it also keeps your boat and its trip: name, polar, performance, engine assistance, MMSI, position and destination, with the date they last changed. They are kept in a PostgreSQL database at Scaleway, in Paris, and serve only to sign you in and to give you back your boat.
  • Being signed in rests on two cookies: the session's, which the pages' scripts cannot read, and a second one, which they can read and which only says that you are signed in, so that the pages read your boat from your account; it holds no secret and gives no access. Both last as long as the session. Strictly necessary to sign-in, they need no consent, which is why the site shows no cookie banner. During the sign-in itself, a third one, kept 10 minutes at most, ties the answer of Google or Apple to your request. If you never sign in, the site sets no cookie.
  • Signed in, each computation is also logged with your account's identifier, drawn at random, and so are each request reading your account (your boat, the account page), each sign-in and the deletion of the account; never the e-mail or the name. Apart from the log, the service's metrics send Grafana Labs, along with each account's identifier, the e-mail of its first sign-in method, so that the lines of an account can be told apart; they are kept 14 days there. Each request also says whether you are signed in, from the cookie that says so, without any identifier. These lines also serve to count, in overall figures, how the site is used. This log is kept like the rest: 30 days at most, 14 days at Grafana Labs.
  • Deleting the account erases it at once from the database, with its sign-in methods, its sessions, its boat and its trip, and from the database's backups within 7 days, as they expire. The log lines naming its identifier, and its e-mail in the metrics, expire like the others. The boat kept in your browser, if any, is not touched.
  • Like any site, the pages also call third-party services, which therefore receive your browser's IP address: Mapbox for the basemaps and the library that draws them, which also sends Mapbox statistics on how the map is used; unpkg for the chart libraries of the routing page.
  • Clearing the site's data clears this browser's boat and signs you out; your account's boat stays in the account. A private window starts without this browser's boat, and forgets the one set up in it without an account when it closes. If the browser's storage is blocked, the boat cannot be saved in it (see Questions and troubleshooting).

Questions and troubleshooting

The Compute the route button stays greyed out.
It needs a saved boat (otherwise the Boat box starts with ‘Start with your boat’, and the line under the button says ‘Choose your boat first’), a departure and a destination placed on the map. It is also greyed out during a computation, and as long as one of the Settings is empty or out of bounds: open the box, the message is under the field to correct.
A model is ‘not reached’.
Most often, its forecast ends before the boat arrives (its row then says horizon reached): bring the departure time closer, or compare the models' horizons on the Data page. Other causes:
  • a blocked trip (destination at the end of a bay that the coastal margin or the minimum depth closes off): lower the margin or the depth;
  • a detour larger than the search area (see How the route is computed): split the trip into two legs;
  • a departure on land (with the coastlines) or after the forecast's horizon, the model's previous run included: no route is drawn;
  • a destination on land with the coastlines, farther from the water than the arrival distance (time step × 5 knots, 0.1 NM at least): it is not moved to the water; place it at sea;
  • a departure within the coastal margin whose first step cannot leave it: no route is drawn either; lower the margin or move the departure away from the coast.
A model has ‘failed’.
Hover over its row with the mouse to read why (a touch screen, without tooltips, does not show it): ‘No navigable water deep enough near the start or the destination’ when the point is too far from deep enough water on the bathymetry (move it offshore, or lower the Minimum depth); ‘The computation took too long’ when the model's computation ran past 30 seconds and was stopped (the engine's message is then ‘wr-route arrêté au bout de 30 s’); otherwise ‘The computation failed’. The engine's own message follows, in brackets, as it is: in English and starting with wr-route: when the computation refuses the trip (wr-route: No water at least 10 m deep within 2 NM of the start, the number being your minimum depth), or cannot read a server file (Cannot read "…": a file is missing on the server, a rare failure since it keeps each model's previous run for the computations under way; compute again, and report it if it persists); or in French (‘wr-route a planté’, ‘wr-route s'est arrêté’, ‘wr-route introuvable’, ‘wr-route n'a pas pu être lancé’, ‘wr-route a renvoyé un JSON illisible’) for a server failure, to be reported. The other models remain valid.
The computation returns an error.
The message appears in the Result tab, instead of the models:
  • ‘No available model covers both the start and the destination.’: this should not happen with the global models; check the Data page.
  • ‘The SMOC current is not available: choose another one, or no current.’ (or RTOFS): choose the other one, or No current.
  • ‘No bathymetry on this server: choose the coastlines.’: choose Coastlines.
  • ‘Unknown polar: …’: the boat's polar no longer exists; choose another one on My boat.
  • ‘The request was refused: …’, followed by the server's reason: a setting is missing or invalid, for instance departureTime is required for an empty Departure time; fill it in.
  • ‘The routing engine failed: …’ or ‘Internal server error: try again later.’: a server failure, rare; try again, and report it if it persists.
  • ‘Computation failed: …’: the server could not be reached or its answer could not be read (connection lost); try again.
  • ‘Error 502’ (or another code): the server answered an error without giving its reason (server stopped or under maintenance); try again later.
‘Boat polar not found’ on the My boat page.
The saved polar is no longer offered: choose another one, then save.
‘the browser's storage is unavailable’.
Without an account, the browser refuses to save (strict private browsing, cookies and site data blocked): allow site data for Saily WR. On the My boat page, the message starts with ‘Boat not saved’; the routing page, which then cannot read the boat back, shows ‘Start with your boat’, and ‘Trip not saved’ under the destination as soon as a point is placed. With a boat read back, ‘Trip not saved’ means the storage can no longer be written (storage full).
‘Your account's boat cannot be read for now.’
Signed in, the routing page (in the Boat box) or My boat could not read your boat from your account: the account database cannot be reached, or the connection failed. Neither page falls back to this browser's boat: until the boat is read, no route can be computed and My boat cannot save. Click Retry once the connection is back.
‘Boat not saved: your account cannot be reached’ or ‘Trip not saved: your account cannot be reached’.
Signed in, the boat (on My boat, next to the Save button, the page staying open) or the trip (on the routing page, under the destination) could not be saved to your account: the account database cannot be reached, or the connection failed. Nothing is saved in this browser instead: click Save again later or, on the routing page, place or move a point again.
The computation is slow.
The time step and the grid are fitted to the trip (see Settings) and cannot be made coarser to go faster. If other visitors compute at the same time, your computation waits its turn.
The route grazes a danger or goes through a narrow pass.
The route follows the coastline or the depth grid, not the buoys, restricted areas, traffic separation schemes nor the height of the tide (depths are read without tide): increase the coastal margin or the minimum depth, and always check on a nautical chart.
The map goes blank or freezes, or the page reloads by itself.
A device short of graphics memory, often an iPhone or an iPad, may lose the routing map: the page builds it again by itself on the same view, with the trip, the routes, the model shown and the time cursor at its time. If the system goes as far as closing the page and Safari reloads it, the last routing, if less than an hour old, is drawn again: its routes and the model shown, the map framed on them; the Departure time and the Settings go back to their defaults. Leaving or reloading the page yourself forgets that routing.

Glossary

Forecast step
An instant a run forecasts, for instance +12 h after its reference time.
Horizon
The last forecast step of a run: beyond it, the model forecasts nothing more.
Isobath
A line joining the points of equal depth.
Isochrone
A line joining the points the boat can reach at the same instant.
kn
Knot: one nautical mile per hour (1.852 km/h).
NM
Nautical mile: 1,852 m.
Polar
A sailboat's speed for each true wind speed and angle.
Run
One execution of a weather model, named by its date and UTC reference time (06z = 6 h UTC).
SOG
Speed Over Ground: the speed over the sea floor, current included.
STW
Speed Through Water: the speed through the water.
TWA
True Wind Angle: the angle between the heading and the true wind; in a current, that of the wind on the water (the true wind minus the current), which may differ from TWD minus the heading.
TWD
True Wind Direction: the direction the true wind comes from.
TWS
True Wind Speed: the true wind speed.
UTC
Coordinated Universal Time, the time of the weather models (London time in winter, London time minus 1 h in summer).