Uptime and incidents for api.freeweatherapi.org. We're a volunteer project without an SLA, but we do write things down — including the embarrassing ones.
99.98% uptime over the last 90 days · 99.97% over the last 12 months
Machine-readable health: GET https://api.freeweatherapi.org/v1/health returns JSON, needs no token, and doesn't count against your rate limit.
14 August 2025, 06:12–12:05 UTC · bad data (not an outage)
For about six hours on 14 August 2025, relative_humidity in /v1/current was wrong — not slightly wrong, but off by up to 40 percentage points — for locations across northern Europe. Temperature, wind and pressure were fine. The API never went down, which is exactly what made this worse: everything looked healthy from the outside while a core field was garbage.
A station firmware update (from a manufacturer we won't name because they fixed it within a day of being told) changed a register scale without changing the documented units. Roughly 2,000 stations started reporting relative humidity as a scaled integer. Our range check didn't catch it — the values were still 0–100, just wrong. The temporal check didn't catch it either, because the bad values were internally consistent. Only the buddy check should have caught it, and it did — but the failure it raised was being batched for a weekly review instead of paging anyone, because we'd classified station-clusters-disagreeing as "interesting, look later" rather than "someone should look now."
Because the affected stations outnumbered the honest neighbors in dense corridors (the Netherlands, mostly — our own backyard), the blend trusted the majority. Bad majority, bad output.
A user's irrigation controller watered their garden at 3am and they emailed us, politely, with a chart. Not our monitoring. We've made peace with that, mostly.
/v1/current values; history re-ingested for the window. Cached responses older than the fix took up to five minutes to age out.3 June 2025, 21:30–22:14 UTC · degraded
A cache node in Frankfurt died mid-evening and failover worked exactly as designed, which is the nicest thing we've ever said about failover. For 44 minutes, responses were served but up to four minutes staler than usual, and a handful of 503s escaped while the anycast re-converged. Community-token holders got an email; anonymous callers just saw a slightly tired API.
No data was lost — the ingest queue caught up within the hour.
Uptime is measured by external probes in three regions hitting /v1/current every minute. A day counts as amber if error rates exceeded 1% or any published data was later found wrong (the humidity day above is amber for honesty, not downtime). Scheduled maintenance — a few per year, announced on the forum — counts as downtime if it takes the API offline, because pretending otherwise would be silly.
/v1/health — then please email hello@freeweatherapi.org and tell us to update this page. It's only happened once.