What Open Weather does and who it is for
Open Weather provides current meteorological conditions and short-range forecasts via a straightforward REST interface. The underlying data aggregates global and local weather models alongside satellite imagery, radar feeds, and a distributed network of surface weather stations — giving the API solid coverage whether you are querying a major city or a remote coordinate pair.
The API suits a broad audience: mobile developers adding a weather widget to a travel or fitness app, backend engineers building alerting systems, data analysts pulling conditions into dashboards, and hobbyists running home-automation scripts. The free tier is functional enough for prototyping, while the paid tiers cover everything from moderate SaaS products to high-throughput data pipelines.
Endpoint walkthrough
Open Weather exposes six endpoints across two API generations (V1 and V2). The distinction is mostly cosmetic — V2 endpoints use query parameters while V1 embeds values directly in the URL path.
Current weather
| Endpoint | Version | Query method |
|---|---|---|
GET /city |
V2 | City name (query param) |
GET /city/{city}/{lang} |
V1 | City name + language (path) |
GET /city/latlon/{lat}/{lon} |
V1 | Latitude & longitude (path) |
GET /latlon |
V2 | Latitude & longitude (query param) |
All four current-weather endpoints return the same rich response object. Key fields include:
- Temperature data —
main.temp,main.feels_like,main.temp_min,main.temp_maxin Kelvin (default), Celsius (metric), or Fahrenheit (imperial). Thefeels_likevalue incorporates human-perception factors, useful for comfort-oriented UIs. - Atmospheric pressure — reported at both sea level (
main.pressure,main.sea_level) and ground level (main.grnd_level) in hPa, which matters for applications serving users at altitude. - Wind — speed, direction in meteorological degrees, and gust speed. Imperial callers receive miles per hour; everyone else gets meters per second.
- Precipitation — rain and snow volumes for the past 1 hour and 3 hours in millimeters (these fields are conditional and only appear when precipitation is occurring).
- Visibility — capped at 10 km.
- Cloudiness — a single percentage value in
clouds.all. - Sun times —
sys.sunriseandsys.sunsetas Unix UTC timestamps, handy for solar-aware logic. - Weather condition — a grouping string (
main), a finer description, a numeric condition ID, and an icon ID. Icons are resolvable as PNGs athttps://openweather.site/img/wn/{icon}.png.
The V1 city endpoint accepts a lang path segment, suggesting localized description strings — useful if your application targets non-English audiences.
5-day forecast
| Endpoint | Version | Query method |
|---|---|---|
GET /fivedaysforcast |
V2 | Latitude & longitude (query param) |
GET /city/fivedaysforcast/{lat}/{lon} |
V1 | Latitude & longitude (path) |
Both forecast endpoints deliver 3-hour interval data spanning 5 days, giving you up to 40 data points per call. This is enough resolution for day-of planning features, "will it rain this afternoon" logic, or charting a week-ahead temperature trend. Note that forecast queries require coordinates rather than a city name, so your application may need to resolve a city to lat/lon before calling these endpoints.
Pricing breakdown
| Plan | Monthly price | Requests/month | Rate limit |
|---|---|---|---|
| BASIC | $0 | 100 | — |
| PRO | $2.99 | 50,000 | 10 req/s |
| ULTRA | $4.99 | 200,000 | 50 req/s |
| MEGA | $9.99 (recommended) | 800,000 | 100 req/s |
The BASIC tier's 100 requests per month is genuinely limited — roughly 3 requests per day on average. It covers API exploration and integration testing, but any real user-facing feature will exhaust it quickly. A single user checking weather four times a day would burn through the free allocation in 8 days.
At $2.99, PRO offers 50,000 calls — a reasonable ceiling for a small app with a few hundred daily active users polling every few minutes. The jump to ULTRA at $4.99 quadruples that to 200,000, and the MEGA plan at $9.99 provides 800,000 with overage billing at $0.0001 per additional request, making it predictable to scale beyond the base quota without plan-switching.
The rate limits deserve attention: PRO caps at 10 requests per second, which is fine for sequential lookups but could be a bottleneck if you fan out parallel requests for many locations simultaneously. ULTRA (50 req/s) and MEGA (100 req/s) handle heavier concurrent loads comfortably.
Practical use cases
- Travel and navigation apps — display current conditions and a 5-day outlook for the user's destination. A single current-weather call plus a forecast call covers a full destination-detail screen.
- Outdoor activity platforms — use
feels_like, wind speed/gust, and precipitation fields to surface safety or comfort scores for hiking, cycling, or running. - IoT and home automation — trigger smart-home actions (close windows, run sprinklers) based on rain volume, wind gust, or temperature thresholds.
- Agricultural or logistics tools — ground-level pressure and precipitation accumulation data are useful for field condition monitoring or routing decisions.
- E-commerce personalization — tailor product recommendations by weather conditions in a user's city.
Limitations and things to check before integrating
Free tier is very tight. 100 calls per month is a prototyping budget, not a production budget. Factor in your polling frequency and user count early.
Forecast is coordinate-only. If your application works with city names, you need a geocoding step before hitting the forecast endpoints. Plan for that extra call in your quota math.
Precipitation fields are conditional. rain and snow objects only appear in the response when relevant. Your parsing code must handle their absence gracefully rather than expecting them to always be present.
No historical data endpoints are listed. The six documented endpoints cover only current conditions and the 5-day ahead window. If your use case requires past observations, you would need a separate data source.
Visibility is capped at 10 km. The API will not differentiate between, say, 12 km and 20 km visibility — something to note for aviation-adjacent applications.
Average latency is 332 ms at the measured baseline, which is acceptable for most on-demand queries but worth accounting for in latency-sensitive rendering paths.
Getting started
Subscribe through the RapidAPI marketplace, grab your API key, and send your first call to GET /city with a city query parameter and your units preference (metric, imperial, or omit for Kelvin). Parse the weather[0].main and main.temp fields for the minimal viable display. From there, wire up the forecast endpoint using the coord.lat and coord.lon values returned in that first response — saving a separate geocoding round-trip. With nearly 30,000 existing subscribers and a measured 100% success rate, Open Weather has a strong reliability track record to build on.