Windsplit

Fetching forecast …
The time is

Pace and time are linked: change one and the other follows. "The time is" picks whether the time means the effort (goal pace × distance) or the finish time with wind, hills and temperature included.

Estimate

Estimated finish time at even effort–
Goal pace × 42.195 km–
Wind–
Hills (climb and descent)–
Temperature–

Runner and tactics

Drafting
Share of headwind where you actually have a draft70 %

Drafting only cuts the wind cost in headwind, and only on the share where you are actually sheltered.

Tap to change

Course map with wind

Headwind ≥ 1.5 m/sTailwind ≥ 1.5 m/sNeutral / crosswindThe ring: where the wind comes from. Large arrow: the wind as you pass the selected km. Small arrows: hour by hour.

Elevation profile

Hour by hour

Local time. Frame around the hours you are out. The arrow shows where the wind blows to, the number is mean wind (gusts in brackets). The bar at the bottom is the wind uncertainty.

Headwind per km

Positive = headwind, negative = tailwind, along the running direction. Bars beyond ±1.5 m/s cost or give time.

Splits at even effort

Keep the effort even and let the speed follow wind and terrain: these are the km times that give goal-pace effort all the way. Wind, hills and net are seconds per km against goal pace: red costs, green gives. Pace = goal pace + net, i.e. what the watch should show on that kilometre.

What drafting is worth

Same forecast, same goal pace. The only difference is how much wind hits you on the headwind stretches.

Race day forecast

Fetching forecast …
How to read the numbers
  • Compact in the sticky bar hides the explanations and the secondary cards (headwind per km, what drafting is worth, method). The numbers, map, profile and splits stay. "Full view" brings everything back.
  • Conditions score at the top: wind plus temperature cost as a share of your goal time. Under 0.5 % is green, 0.5–1.5 % yellow, 1.5–3 % orange, over 3 % red. More than 2 mm of rain in the race window drops it one step. The course (elevation) sits beside it, since it is the same in any weather.
  • Estimated finish time is your goal pace plus what the weather and the course cost at even effort. It is not a prediction of your form, only of the conditions.
  • Wind is the biggest uncertainty. Red km are headwind above 1.5 m/s at runner height; hold effort there, not pace. Tailwind gives back less than headwind takes.
  • Drafting matters a lot: behind one runner 70 % of the wind cost disappears. Be honest about how much of the headwind you actually get shelter in.
  • Elevation is computed per 100 m. Uphill costs, downhill gives only half back. The box under the map shows the kilometre's grade in percent.
  • Temperature is effective temperature: air plus sun, minus cooling from the airflow. 5 to 15 °C is free; above that it costs quickly, and more in sun than under cloud.
  • The lamp at the top says how much the forecast is worth: red is too far out, yellow can flip, green you can plan on.
  • The uncertainty box and the bars under the hour tiles show the spread across 51 variants of the forecast. Narrow bar: trust the direction. Wide: plan on effort, not finish time.
  • The splits are even effort, not even pace. Follow them and you are equally tired in headwind and tailwind, which is how you run fastest.
Method and sources

Wind: cost = K × [(v + w)² − v²] s/km, i.e. the extra drag work relative to still air, where v is the running speed and w is the headwind at runner height (10 m wind from the forecast × exposure). K = 0.28 reproduces Davies 1980 (approx. +7–8 % oxygen uptake at 4.5 m/s headwind at 4.5 m/s running speed); "Daniels" uses K = 0.20, which matches the wind table in Daniels' Running Formula. Both scale with your CdA against a 70 kg/178 cm reference. Tailwind gives 60 % of the corresponding gain. Drafting removes a share of the cost (50/70/90 %, cf. Pugh 1971: approx. 80 % less drag one metre behind), only on headwind stretches, and the coverage falls linearly towards the finish according to "losing the draft". The "Treningsverk app" option shows the app's 0.11 × w² × pace factor, which gives a 3–5 times lower wind cost.

Uncertainty: ECMWF runs the forecast 51 times with small perturbations of the initial state (the IFS ensemble, 0.25°, 15 days ahead). Each member's deviation from the ensemble median in wind speed, direction and temperature hour by hour is added to the forecast for all three points, and the whole course is recalculated per member. That gives the distribution of wind cost and finish time in "Estimate", and per hour in "Hour by hour": the bar is the 10th–90th percentile for the wind where you are, the line is the forecast being used, and the percentage is the share of members giving a headwind above 1.5 m/s where you are. Ensembles are too narrow in the last 1–2 days, so read 80 % as "around 80 %". "Weather around the race" is Open-Meteo's daily summary at the start location for the day before, race day and the day after.

Forecast confidence: the lamp at the top says how much the forecast is worth. Red more than 15 days out (no forecast, typical weather only), yellow from 15 to 5 days (a forecast exists, but direction and cloud often flip; check again), green the last 4 days when models usually agree. Green drops back to yellow if the ECMWF ensemble still spreads more than 40 s in wind cost.

The countdown is calculated from the race date and start time in the race's own time zone (IANA zone per race; own courses get the zone from Open-Meteo when the forecast is fetched, otherwise your time zone is assumed and it says so), and shows the local time where you are when it differs.

Races more than 16 days ahead: no forecast exists, so the page shows typical weather from the ERA5 reanalysis (Open-Meteo's archive) for the same date ±3 days over the last 10 years, approx. 70 days. The table gets the median per hour (wind direction as speed-weighted mean, weather symbol as the most common), and each day is used as a member, so the box and the bars show the spread between years. "Last year on this date" is ERA5 for exactly the same date the year before. This is clearly marked as not a forecast, and switches automatically to a real forecast once the date is within 16 days. ERA5 is a 25 km model: wind in the city is typically lower than ERA5 says, and individual days can differ a lot.

Source: Open-Meteo serves numbers from the national weather models (DWD ICON, ECMWF IFS, NOAA GFS/HRRR, Météo-France) and picks the "best match" for the location; yr.no uses MET Norway's MEPS in the Nordics and ECMWF elsewhere, with station correction. Below the forecast table the same hour is shown from several models, so the spread is visible.

Weather: the forecast is fetched automatically from Open-Meteo (on opening, when the page is brought back after 15 min, and every 30 minutes) for every full hour in the race window, in the race's local time zone, at three points along the course: the start, the point farthest away and midway between them. For each 100 m segment the weather is first interpolated in time to the calculated passing time, then in space (inverse distance weighting between the three points). Wind direction is treated as a vector.

Elevation: from the course files (Amsterdam: the Garmin Connect course's terrain model; Frankfurt: goandrace's 2024 GPX with the Main bridges added from a barometric track of the 2025 race; Chicago and New York: goandrace's 2025 GPX, New York submitted via Windsplit, with the five bridges added by hand from known deck heights since terrain models put bridge decks at water level; Valencia: GPS track from the 2024 race with smoothed barometric elevation; smoothed over 100 m).

Sun: Open-Meteo's hourly shortwave radiation (W/m²) is added to the air temperature as effective temperature = temperature + radiation/150. Full October sun at 10:00 (about 350 W/m²) adds +2 °C, midsummer noon sun (850 W/m²) +5 to 6 °C, overcast 0. The cost curve below runs on effective temperature, and the hour tiles show "feels" when the sun adds at least 1 °C. Heat sensitivity: "tolerates heat well" multiplies the cost by 0.7 and moves the free zone up 2 °C, "heat-sensitive" multiplies by 1.4. Heavier runners produce more heat per unit of skin area, so the cost scales with (weight/70)^0.3. Airflow: cooling depends on the air moving over you, that is running speed plus headwind or minus tailwind (at runner height). Effective temperature is adjusted by 0.6 °C per m/s of deviation from still air: a 3 m/s tailwind adds about +1 °C, the same headwind −1 °C, and a tailwind equal to your running speed (no airflow) +2.5 °C. Cloud cover is the least certain forecast field several days out; the sun term is worth most on race morning.

Temperature: 5–15 °C effective temperature is free. 15–22 °C costs 1.2 s/km per degree, 22–28 °C 2.0 s/km per degree, below 5 °C 0.15 s/km per degree. Humidity counts above 18 °C. The slope was calibrated on 12 Oct 2026 against the Chicago Marathon 2026 (16–18 °C air, full sun, calm, humid): Ely & Cheuvront 2007 (seven marathons, finish time against WBGT, Med Sci Sports Exerc) and El Helou et al. 2012 (1.8 million finishers, six big-city marathons, PLoS ONE) both give a 2–3 % loss at an effective 18–20 °C, about 3 minutes for a 2:45 runner; the old slope (0.4 s/km per degree) gave under a minute. Elevation: Minetti cost curve per 100 m segment, gradient calculated from the course file's elevation. Minetti's curve is metabolic treadmill data and gives about 5.4 % more time per percent of grade; at race pace heart-rate-based models, Daniels' rule of thumb and real race splits all show less. The curve is therefore scaled to 65 % uphill (≈3.5 % per percent) and 40 % downhill (≈2.2 % per percent, because you brake and cadence caps the gain). Calibrated on 13 Oct 2026 against elite runners' splits at Hytteplanmila: the per-km error fell from 8 to 5 seconds. Elevation from map tools is smoothed over about ±150 m before grades are computed, since terrain models add small false humps; barometric tracks from real races are smoothed only lightly and preferred where available. The box under the map shows the kilometre's average grade in percent.

Splits at even effort: each km gets the goal pace plus the segment's wind, elevation and temperature cost. The sum is the estimated finish time. The Amsterdam course is the official 2026 route from Garmin Connect (course 475917224); the drawn route is 42.94 km and is scaled to 42.195 km so the km markers match the race's. Frankfurt is the official course from the 2024 GPX (42.34 km drawn, scaled to 42.195 km); a 2025 GPS track lies within a few metres of it.

Map: © OpenStreetMap contributors.