BETA

Where Our Data Comes From

Updated 18 August 2026

Every figure on Setform is produced from open weather data. This page names the source and sets out how each figure is calculated.

If you are new to forecasts and want to know what the figures mean rather than how they are produced, start with the Forecast Guide.

Our source

All forecast data comes from Open-Meteo, an open weather data service. Open-Meteo gathers the output of national weather models, among them the German Weather Service ICON model, the United States NOAA GFS, GEFS and WaveWatch III models, Météo-France and the ECMWF. Setform uses their Marine API for waves and sea level, and their Forecast API for wind.

Their data is published under the Creative Commons Attribution 4.0 licence, which is credited in the footer of every page on this site.

What Setform does not do

Setform holds no buoys and no cameras, and runs no forecast model of its own. It draws on a single provider, with no second source to compare against, so an error in the source data appears unchanged on the site.

Setform does not rate conditions. There is no score that calls a day good or poor. Whether a day suits you depends on the spot, on the stage of tide it works on, and on your own ability, so the figures are shown without a verdict.

Choosing which waves to feature

Open water usually carries more than one set of waves at the same time. Open-Meteo supplies two sets for every hour, each with its own height, period and direction, along with a combined figure for the sea as a whole.

One set is featured on the wave and in the Conditions card. To choose it, Setform takes each set's height, multiplies it by itself, then multiplies the result by that set's period. The set with the larger result is the one shown.

Multiplying the height by itself makes this a measure of energy rather than of size alone, so a smaller set with a long period can outrank a taller set with a very short one.

The expanded panel lists all three rows, Combined swell, Swell and Wind swell, and tags the two sets Pri and Sec, so both sets and the combined figure stay visible alongside the one that was chosen.

Swell and Wind swell are Open-Meteo's names for the two sets. The height featured on the wave is the stronger set on its own, not the combined figure for the whole sea, which is usually the larger number.

Working out the wind against the shore

Open-Meteo supplies the wind speed, the gust speed and the direction the wind blows from, for every hour. Speed and gusts are shown as they arrive, with no adjustment.

Offshore, Cross-shore and Onshore are calculated here. Weather data carries no knowledge of which way a beach faces, so Setform holds a facing bearing for each spot and measures the angle between that bearing and the direction the wind is coming from. A wind arriving from behind the shore is offshore, one arriving from the sea is onshore, and one running along the shore is cross-shore.

The reading is only as good as the facing bearing behind it. On an angled coastline, a bearing rounded to the nearest compass point can be thirty to forty five degrees out, which is enough to reverse the result. Each bearing is therefore checked against a top down satellite view before it is used.

Reading the tide

Open-Meteo supplies the sea level for every hour, as the height of the water above or below its normal level. The current hour's figure is shown as the tide now.

The trend compares this hour with the next. Higher next hour means the water is rising, and lower means it is falling. To find the next high or low, Setform reads forward through the coming hours until the water stops climbing and starts to drop, which is a high, or stops dropping and starts to climb, which is a low.

Because the readings are hourly, the time given for a turn is accurate to the hour rather than to the minute. For a turn timed to the minute, use an official tide table for the area.

Rounding, and why the colours match the labels

Periods are shown to one decimal place. Every period on the site is produced from that same rounded figure, whether it appears as a label, as a value in a table, or as the shade of an hour in the coloured bar. Two hours showing the same printed period therefore always carry the same colour.

Tide levels work the same way. A single calculation produces the figure under the tide curve and the figure in the table beneath it, so the two always agree.

Why the wave moves smoothly and the tables do not

The forecast arrives as one reading per hour, while the wave on screen moves continuously.

Heights and directions are interpolated between the surrounding hours, so the wave and the compasses change smoothly as time passes rather than stepping on the hour. Periods, and the choice of which set to feature, are taken from the forecast hour itself without interpolation, so the period in the Conditions card, the period in the table and the coloured hour in the timeline always show the same number.

How often the data updates

An open forecast page fetches fresh data every ten minutes, and the displayed hour advances every minute, so a page left open through the day stays current. Both stop when you move away from a forecast and resume when you return to one.

Forecast responses are cached at the edge of the network, so many people viewing the same spot produces far fewer requests to Open-Meteo than there are viewers.

What the data cannot do

A weather model describes open water on a grid. It does not describe the particular piece of coast you are standing on, and it carries no knowledge of the seabed that decides how a wave breaks. A forecast is at its most reliable a day or two ahead, and less reliable after that.

Nothing on Setform is a measurement of the sea as it is at this moment. Every figure is a model estimate, including those labelled as current.

Surfing is dangerous and conditions change quickly. Never rely on this or any forecast on its own. Always judge the conditions in person, respect local warnings and lifeguards, know your own limits, and do not go out alone if you are unsure.

Corrections

Setform is run by one person, Brian Wilson, an independent designer based in Switzerland. It is free, carries no advertising and sells no data.

If you know a spot well and a figure here looks wrong, particularly a shore facing bearing, corrections are welcome at the address below.

Corrections and questions: [email protected].