Weather and air quality¶
Wind, heat, and air quality are the most under-reported reasons your power numbers don't match how you felt. PeakLine attaches both historical and forecast weather to every ride so the context is always there.
Historical weather on every activity¶
For each activity with valid GPS coordinates, PeakLine queries Open-Meteo's archive API and pulls the conditions at your start location and start time, plus hourly conditions across the duration of the ride.
What you see on the activity page:
| Metric | Source |
|---|---|
| Temperature (avg, min, max) | Open-Meteo |
| Apparent temperature ("feels like") | Open-Meteo |
| Wind speed (avg) | Open-Meteo |
| Wind direction (avg) + compass arrow | Open-Meteo |
| Wind gusts | Open-Meteo |
| Humidity | Open-Meteo |
| Precipitation total | Open-Meteo |
| Cloud cover | Open-Meteo |
| Pressure | Open-Meteo |
| UV index | Open-Meteo |
| Sunrise / sunset | Computed from lat/lng + date |
These are pulled once and cached with the activity analysis — they don't change after the fact.
Open-Meteo is free and key-less
We don't need an API key for weather. It costs nothing to query, and there's no rate limit you can practically hit. Privacy bonus: lat/lng/date is the only thing sent.
Wind impact estimate¶
The wind block computes a rough percentage loss caused by wind, based on average wind speed and direction relative to your average heading:
- Bike: −1% to −20% loss range
- Run: −1% to −10% loss range
If the wind was strongly behind you, the number is positive — you got a tailwind boost. If it was a crosswind that didn't help or hurt much, it's near zero.
This is a heuristic, not a wind tunnel. Use it as a sanity-check: "averaged 5 km/h slower than usual on the same loop, and wind impact says −12% — yeah, that explains it."
Sun time¶
For outdoor activities, PeakLine computes how many minutes of your moving time fell between sunrise and sunset. This matters for two reasons:
- UV exposure — long sub-sun riding without sunscreen is a problem.
- Visibility / safety — bookmarking how much of a long ride was in daylight is useful for planning future similar rides.
Air Quality Index (AQI)¶
PeakLine queries OpenWeather's air quality API for the start coordinates and start time, returning:
- PM2.5 (fine particulates)
- PM10 (coarse particulates)
- NO₂ (nitrogen dioxide)
- O₃ (ozone)
- SO₂ (sulfur dioxide)
- CO (carbon monoxide)
- A composite AQI score (1 = Good, 5 = Very Poor)
The composite AQI shows up as a colored chip on the activity page. Tap it for the per-pollutant breakdown.
AQI is best-effort
Air-quality data is sparse in many regions of the world and missing entirely in some. If you don't see AQI on an activity, it's because OpenWeather doesn't have a measurement near your start coordinates for that day.
Forecast on the Route Planner¶
The Route Planner uses the forecast half of Open-Meteo — same provider, future data. When you sketch a route and set a planned start time, PeakLine simulates your progress along the route and pulls the forecast for each km bucket.
What you see:
- Temperature, wind speed, and wind direction at km 0, 10, 20, …
- Rain probability at each waypoint.
- A summary "wind comes from the SSW at 18 km/h, expect a tailwind for the first 30 km then a crosswind."
This is most useful for long rides: if you start at 7am for a 200 km day, the wind at km 150 (six hours in) is meaningfully different from the wind at the start.
Average accuracy in practice¶
Open-Meteo combines multiple national weather models (ECMWF, GFS, ICON-D2) at ~9 km resolution. In our experience:
- Temperature is within ±1°C of what a local thermometer reads.
- Wind speed at low altitude is often off by 2–4 km/h in mountainous terrain — the model can't resolve a valley's microclimate.
- Wind direction is generally correct within ±20° in open terrain.
- Precipitation timing is good (±1 hour); precipitation amount can be off by a factor of two.
Treat weather data as a useful overlay on your ride, not a meteorological fact.
See also¶
- Route Planner — uses forecast weather
- Activity analysis overview — full pipeline including weather