The short answer
Open-Meteo exposes variable and model choices directly; OpenWeather packages weather into named products and nested forecast sections. The decision changes both the adapter shape and the commercial subscription you need.
| Provider | A good reason to choose it | Important caveat |
|---|---|---|
| Open-Meteo | A team choosing explicit weather variables or comparing model output rather than consuming a fixed weather-card payload. | The public free service is non-commercial. Commercial subscriptions use a customer endpoint and key; attribution and workload-based call counting still matter. |
| OpenWeather | An application combining current weather, forecast intervals and alerts through a documented product family. | One Call and other forecast endpoints are different products. Check the version, subscription and included fields instead of assuming one key unlocks everything. |
Side-by-side differences
| Requirement | Open-Meteo | OpenWeather |
|---|---|---|
| Forecast interface | Select hourly/daily variables and weather models | One Call current/hourly/daily bundles |
| Historical workflow | Separate archive, historical forecast and model-run APIs | Separate historical products and One Call time-machine access |
| Location input | Latitude/longitude, including multi-location requests | Latitude and longitude for One Call |
| Response shape | Time/value arrays and units | Nested current, hourly and daily objects |
| Production access | Commercial license and customer host for business use | Select the product and plan explicitly |
| Cost driver | Variables, time range, locations and plan budget | API product and call allowance |
Pricing: make the units comparable
| Provider | Billing model | What to check |
|---|---|---|
| Open-Meteo | Commercial monthly call budgets | Requests with many variables, locations or long time ranges can count as multiple API calls. Free keyless access is for non-commercial use. |
| OpenWeather | Product-specific subscriptions and usage allowances | Compare the allowance for the exact API product; a free current-weather allowance is not the price of One Call history. |
For 10,000 location-day lookups, record the requested variables and hourly/daily resolution first. A plan counting calls and a plan counting returned weather records can charge different amounts for the same HTTP request count.
For a buying decision, calculate total spend divided by accepted outputs at your expected volume. Keep free evaluation access, paid production access, annual commitments and overages separate. We have not measured a cost or speed winner for this pair.
What changes in the integration?
| Open-Meteo | OpenWeather | |
|---|---|---|
| Method and URL | GET https://api.open-meteo.com/v1/forecast | GET https://api.openweathermap.org/data/3.0/onecall |
| Authentication | No key for non-commercial public evaluation; apikey on the paid customer host | API key in appid |
| Inputs | latitude, longitude, hourly variables; optional timezone and forecast_days | lat, lon, appid; optional units and exclude |
| Output | Parallel hourly time/value arrays with explicit unit metadata. | JSON with current, hourly, daily and alert sections according to the request and product access. |
Open-Meteo: migration check
Zip parallel arrays by index and preserve units. Historical observations, historical forecasts and previous model runs are different datasets; choose one before backtesting.
OpenWeather: migration check
Map numeric weather condition codes and units explicitly. Do not replace a daily forecast endpoint with One Call without checking the hourly window and entitlement.
How to test them fairly
- Fix ten coordinates across your actual service area. Use the same UTC issue time, units and hourly window for every provider.
- Save the forecast before the event. Compare later against an agreed observation source; a successful HTTP response does not establish forecast accuracy.
- Check missing values, elevation, timezone boundaries and precipitation accumulation periods before calculating an error statistic.
- Measure p50/p95 request latency, throttling and billed units separately from forecast error. Repeat across several weather conditions.
- Confirm caching, attribution, redistribution and commercial-use terms for the exact plan. A keyless endpoint is not automatically a commercial entitlement.
Record the plan, request settings, time window and acceptance rules with every run. That makes a later result interpretable when a vendor changes a model, source set or pricing tier.
Prefer a common request format?
POST /api/v1/weather/forecastReview the request contract and tell us the coverage you need. Access requires enablement; this endpoint does not execute or bill requests yet.
View endpoint and request accessSources and review dates
Documentation reviewed October 28, 2026. These are integration and plan comparisons, not measured speed or accuracy rankings. Availability, licensing and prices should be confirmed for the chosen plan.
- Open-Meteo forecast reference
- Open-Meteo commercial pricing and call definition
- One Call 3.0 reference
- OpenWeather products and pricing
Corrections: email faizank@docsalot.dev with an official source.