Ecowitt - Home Assistanthttps://www.home-assistant.io/integrations/ecowitt/
3%
WeatherFlow - Home Assistanthttps://www.home-assistant.io/integrations/weatherflow/
3%
Looking for best possible local weather station for homeassistant - Hardware - Home Assistant Communityhttps://community.home-assistant.io/t/looking-for-best-possible-local-weather-station-for-homeassistant/424352
2%
Weather station... most compatible with ha? - Hardwarehttps://community.home-assistant.io/t/weather-station-most-compatible-with-ha/873489
2%
Weather Station recomendation 2026 - Home Assistant Communityhttps://community.home-assistant.io/t/weather-station-recomendation-2026/1006194
2%
Question: Which personal weather stations expose a documented API and support Home Assistant without a paid subscription?
Yes. If by “without a paid subscription” you mean you buy the hardware once and can get your own station data into Home Assistant without paying a recurring cloud fee, the strongest options are:
Via Ecowitt-compatible/local methods on some models
Netatmo Weather Station
Yes — developer API
Official HA integration
No recurring fee
No — cloud dependent
Davis Instruments / WeatherLink
Yes — WeatherLink v2 API
HA support is possible, but the integration/API situation is more complicated
Depends on hardware/service
Depends on gateway
1. Ecowitt — particularly good for a fully local setup
Ecowitt is probably the clearest match if your priorities are documented API + Home Assistant + no subscription + local data.
Home Assistant has a first-party Ecowitt integration that uses a local HTTP callback. The station/gateway sends measurements directly to HA, so the cloud isn't required for the HA connection.
Ecowitt also documents its LAN HTTP API; its current documentation specifically lists an HTTP API protocol dated January 2026.
The important hardware is the gateway rather than simply the sensor array. Current HA-supported examples include:
GW1200
GW2000
GW3000
WS90 7-in-1 sensor
WH51 soil-moisture sensors
WH40 rain gauge
WH57 lightning sensor
Home AssistantBest fit if: you want Home Assistant to continue receiving weather data even if the vendor's cloud is unavailable.
2. WeatherFlow Tempest — excellent documented API and local HA integration
The Tempest system has a particularly well-documented API. WeatherFlow provides REST and WebSocket APIs and personal access tokens for station owners.
More importantly for HA, Home Assistant has a local-only WeatherFlow integration that receives data directly from the Tempest device over UDP. HA and the station need to be on the same subnet.
WeatherFlow's current API policy explicitly says that station owners can access their own observations and forecasts for personal use without a special agreement or subscription.
So you can have:
Tempest → local network → Home Assistant
with no paid cloud subscription involved.
Best fit if: you want a polished consumer station with an unusually good developer API and native local HA support.
3. Ambient Weather — API is documented and HA is officially supported
Ambient Weather exposes REST/JSON APIs for retrieving your station's real-time and historical data.
Home Assistant has an official Ambient Weather Station integration requiring an Application Key + API Key.
There is also a significant wrinkle: the normal HA integration is cloud-based, whereas some Ambient Weather hardware has an Ecowitt-compatible/local upload mechanism. HA itself recommends ecowitt2mqtt for users wanting a local option.
Best fit if: you like Ambient Weather hardware and don't mind using its cloud API, or select a model/gateway that can be integrated locally.
4. Netatmo — API + HA, but cloud-dependent
Netatmo has a documented developer API and Home Assistant has an official integration.
There's no indication of a paid subscription being necessary for the basic weather-station API/HA use. However, HA explicitly says its Netatmo integration communicates with Netatmo's cloud service and requires an internet connection and Netatmo account.
So it satisfies:
documented API: yes
HA: yes
recurring subscription: no
completely local: no
5. Davis — powerful, but check the exact hardware
Davis's WeatherLink v2 API is documented and supports Davis stations uploading to WeatherLink.com. The API allows owners to access their own station data.
But Davis has historically had multiple generations of connectivity products and API arrangements, so “Davis” isn't a single subscription/API model. I'd verify the exact console/gateway before buying.
My practical shortlist
If you're buying specifically for Home Assistant and no recurring subscription, I'd narrow the field to:
Ecowitt + GW2000/GW3000/GW1200 — local HTTP integration, broad sensor ecosystem, documented LAN API.
WeatherFlow Tempest — excellent documented API and native local UDP integration.
Ambient Weather — good API/HA support, but pay particular attention to whether the specific model gives you the local integration path you want.
Netatmo — API and HA are straightforward, but cloud dependency makes it less suitable if local/offline operation is a requirement.
One subtle distinction is worth emphasizing: “has an API” doesn't necessarily mean “has a free API,” and “works with Home Assistant” doesn't necessarily mean “works locally.” Ecowitt and Tempest are the two that most cleanly satisfy all three requirements.
If you tell me your budget and whether you care about rainfall, lightning, air quality, or soil moisture, I can narrow this to specific current models and compare their sensors/API/local behavior.
Best fit if: you want a polished consumer station with an unusually good developer API and native local HA support.
3. Ambient Weather — API is documented and HA is officially supported
Ambient Weather exposes REST/JSON APIs for retrieving your station's real-time and historical data.
Home Assistant has an official Ambient Weather Station integration requiring an Application Key + API Key.
There is also a significant wrinkle: the normal HA integration is cloud-based, whereas some Ambient Weather hardware has an Ecowitt-compatible/local upload mechanism. HA itself recommends ecowitt2mqtt for users wanting a local option.
Best fit if: you like Ambient Weather hardware and don't mind using its cloud API, or select a model/gateway that can be integrated locally.
4. Netatmo — API + HA, but cloud-dependent
Netatmo has a documented developer API and Home Assistant has an official integration.
There's no indication of a paid subscription being necessary for the basic weather-station API/HA use. However, HA explicitly says its Netatmo integration communicates with Netatmo's cloud service and requires an internet connection and Netatmo account.
Davis Instruments
Several top-tier personal weather stations (PWS) offer robust, documented local APIs or native integrations that connect directly to Home Assistant completely free of charge, requiring zero subscriptions or cloud dependency.
1. Ecowitt (e.g., GW2002, GW3002, HP2551, or standalone gateways)
Integration Type: Local Push / Local HTTP API (Official)
How it works: Ecowitt gateways allow you to point the device's custom server settings to your local Home Assistant IP address, or let Home Assistant poll the gateway locally. The Home Assistant Ecowitt Integration handles local push data straight out of the box.
Subscription / Cloud needed? No. It works entirely offline on your local network.
Documentation: Fully documented via Ecowitt's local gateway configuration and supported natively in Home Assistant.
2. WeatherFlow Tempest
Integration Type: Local UDP Broadcast (Official)
How it works: The Tempest smart weather station hub continuously broadcasts UDP data packets over your local network. The native Home Assistant WeatherFlow Integration listens to these local packets instantly without needing any internet connection or cloud polling for real-time sensor data.
Subscription / Cloud needed? No. Local operation is completely free and fast. (An optional cloud integration exists for historical/forecast data, but local real-time sensor metrics require no subscription or cloud).
Documentation: Documented via WeatherFlow API Documentation and the Home Assistant integration page.
3. Davis Instruments (e.g., Vantage Pro2 or Vantage Vue with WeatherLink Live / WeatherLink Console)
Integration Type: Local API / Local Polling
How it works: Davis weather systems paired with a local data logger or the newer WeatherLink Console expose a local port/API on your network. Home Assistant has community and official integrations that query the local IP address of the console/logger.
Subscription / Cloud needed? No. Local API access is free and does not require the paid tiers of WeatherLink.com.
Documentation: Documented via the Davis WeatherLink Local API Specification.
Would you like to narrow down these options based on your budget, mounting preferences (all-in-one vs. separate sensors), or local vs. Wi-Fi connection constraints?
API available; some consoles support custom server/local push methods
Official HA integrations
No, but many setups are cloud-oriented
Davis Vantage systems
WeatherLink APIs; some local options depend on gateway/console
HA integrations/custom setups
Local options vary
Best fits for a subscription-free, local-first Home Assistant setup:
Ecowitt + GW2000/GW3000 gateway — probably the easiest DIY choice. The gateway can send data directly to Home Assistant over your LAN; no Weather Underground or paid cloud service is required.
WeatherFlow Tempest — very clean local integration; the station broadcasts data directly to Home Assistant via UDP.
Ambient Weather — workable, but check the exact console model if avoiding cloud dependence is a priority.
Avoid buying a station that only says “works with our app” unless it documents one of:
local HTTP/REST endpoints
MQTT support
UDP broadcasts
documented API keys with a free tier
custom server upload support
For a new purchase focused on Home Assistant, I would shortlist Ecowitt GW2000/GW3000 and WeatherFlow Tempest.
Several personal weather stations (PWS) offer documented or native local APIs and integrate with Home Assistant completely free of charge and without any paid subscription.
The top options that fit your criteria include:
1. Ecowitt (Gateways / Sensor Arrays)
Local API / Protocol: Ecowitt gateways (such as the GW1000, GW1100, GW2000, or GW3000) feature a built-in local HTTP/UDP API. They allow you to point the device's custom server/uploaded settings directly to your local network IP.
Home Assistant Support: Fully supported via the native, built-in Ecowitt Home Assistant Integration . It intercepts data locally pushed from the gateway over your LAN without routing through the cloud.
Subscription: Completely free. No cloud account or paid tier is required to pull data locally.
2. WeatherFlow (Tempest)
Local API / Protocol: The WeatherFlow Tempest station features a completely local UDP broadcast API . The hub listens to local network traffic and pushes out JSON-formatted weather data packets every 3 seconds directly over your local subnet.
Home Assistant Support: Supported natively via the built-in WeatherFlow Home Assistant Integration . Because it listens to local UDP data streams, it operates even if your internet connection goes down (provided HA and the Tempest hub are on the same local subnet).
Subscription: Completely free, local-only operation with no subscription required.
3. Ambient Weather (WS-2902, WS-2000, etc.)
Local API / Protocol: Ambient Weather consoles traditionally rely on a cloud API, but their hardware allows you to redirect the weather data upload via the WSEN/AWNET mobile app's "Custom Server" setting. By pointing it to a local bridge or using community tools (like ecowitt2mqtt in ambient mode or HACS local workarounds), you can harvest data locally.
Subscription: Free tier available. While Ambient Weather offers an optional paid tier (AWN+ ) for extra features, the standard API and Home Assistant cloud/local polling integrations work entirely under the free tier. (Note: If strict 100% local operation without any cloud dependency is your goal, Ecowitt or WeatherFlow are smoother choices than Ambient).[2]
Would you like to compare the sensor ecosystem and pricing between Ecowitt and WeatherFlow Tempest?
Yes. If by “no paid subscription” you mean the station should expose a documented API that you can use without paying a recurring fee, and there should be a reasonably straightforward Home Assistant path, the strongest options are:
Station/platform
Documented API
HA support
Subscription needed?
Best for
Ecowitt (GW2000/GW3000 + sensors)
Yes — local HTTP API
Built-in Ecowitt integration
No
Best value / local-first
WeatherFlow Tempest
Yes — REST, WebSocket, local UDP
Built-in local integration
No
Best polished modern system
Davis WeatherLink Live
Yes — documented local HTTP/UDP API
Custom/HACS integrations
No for local API
Best high-end/pro-grade hardware
Ambient Weather
Yes — cloud API + local options
Built-in HA integration
No separate API subscription
Good hardware selection
1. Ecowitt — my top pick for a new Home Assistant installation
Ecowitt is probably the cleanest answer if your priorities are documented API + Home Assistant + no recurring fee + local operation.
Ecowitt documents an HTTP API interface for the LAN, and current Ecowitt documentation explicitly provides a Home Assistant integration. Home Assistant also has a native Ecowitt integration.
The architecture is essentially:
Outdoor sensors → Ecowitt gateway → HTTP → Home Assistant
That means your weather data doesn't have to leave your network.
Good combinations include a GW2000/GW3000 gateway with the sensor suite you want. You can build a fairly elaborate station—temperature/humidity, wind, rain, UV, solar radiation, soil moisture, air quality, etc.—without tying the basic functionality to a cloud subscription.
WeatherFlow's Tempest is another excellent choice.
The Tempest API is unusually well documented: WeatherFlow provides REST and WebSocket APIs, and also documents the local UDP interface.
Even better for Home Assistant, the official integration is local-only and reads the Tempest directly over UDP. Home Assistant explicitly describes it as a local-push integration; the HA server and Tempest need to be on the same subnet.
So you can use:
Tempest → local UDP → Home Assistant
with no API subscription.
The cloud API is also available if you want forecasts/history/cloud-derived data, but it isn't necessary for basic local station telemetry.
3. Davis WeatherLink Live — excellent hardware, more complicated HA integration
Davis Instruments is worth considering if you want something more professional.
The WeatherLink Live has a documented local HTTP API that returns current weather as JSON and a local UDP real-time feed. Davis explicitly documents both interfaces.
That is important because you don't need the WeatherLink cloud service just to get data into your own system.
There are Home Assistant custom integrations supporting WeatherLink Live/local polling.
The catch is that Davis's cloud WeatherLink v2 API has subscription-dependent data permissions. The documentation distinguishes Basic, Pro and Pro+ access, particularly for historical data.
So I'd specifically choose WeatherLink Live + local API, rather than designing the system around the cloud API.
4. Ambient Weather — viable, but I'd rank it below the three above
Ambient Weather has a documented cloud API and a native Home Assistant integration. HA requires an Application Key and API Key for the owner-station integration.
There is also a local route: Home Assistant documents using ecowitt2mqtt with Ambient Weather devices for local operation.
So it can absolutely satisfy the no paid subscription requirement, but its HA story is somewhat less clean than Ecowitt's native local integration or Tempest's native local UDP integration.
My ranking
If I were buying specifically for Home Assistant + documented API + no recurring subscription, I'd shortlist:
Ecowitt — ⭐⭐⭐⭐⭐
Best combination of price, sensor variety, local API, and HA integration.
WeatherFlow Tempest — ⭐⭐⭐⭐⭐
Best turnkey/premium experience and excellent documented APIs.
Davis WeatherLink Live — ⭐⭐⭐⭐½
Excellent instrumentation and local API, but more expensive and HA integration is less turnkey.
Ambient Weather — ⭐⭐⭐⭐
Lots of hardware choices and workable APIs, but I'd favor Ecowitt if local HA integration is the primary goal.
One important distinction: “has an API” doesn't necessarily mean “API is free.” Davis's WeatherLink cloud API, for example, has subscription-dependent permissions, while its local WeatherLink Live API doesn't have that recurring-cloud-service dependency.
If you tell me your budget and which sensors you care about (rain, wind, UV, lightning, soil moisture, indoor CO₂, etc.), I can narrow this to the 2–3 actual station models I'd buy for Home Assistant.
The architecture is essentially:
Outdoor sensors → Ecowitt gateway → HTTP → Home Assistant
That means your weather data doesn't have to leave your network.
Good combinations include a GW2000/GW3000 gateway with the sensor suite you want. You can build a fairly elaborate station—temperature/humidity, wind, rain, UV, solar radiation, soil moisture, air quality, etc.—without tying the basic functionality to a cloud subscription.
WeatherFlow's Tempest is another excellent choice.
The Tempest API is unusually well documented: WeatherFlow provides REST and WebSocket APIs, and also documents the local UDP interface.
Even better for Home Assistant, the official integration is local-only and reads the Tempest directly over UDP. Home Assistant explicitly describes it as a local-push integration; the HA server and Tempest need to be on the same subnet.
So you can use:
Tempest → local UDP → Home Assistant
with no API subscription.
The cloud API is also available if you want forecasts/history/cloud-derived data, but it isn't necessary for basic local station telemetry.
3. Davis WeatherLink Live — excellent hardware, more complicated HA integration
Davis Instruments is worth considering if you want something more professional.
The WeatherLink Live has a documented local HTTP API that returns current weather as JSON and a local UDP real-time feed. Davis explicitly documents both interfaces.
That is important because you don't need the WeatherLink cloud service just to get data into your own system.
There are Home Assistant custom integrations supporting WeatherLink Live/local polling.
The catch is that Davis's cloud WeatherLink v2 API has subscription-dependent data permissions. The documentation distinguishes Basic, Pro and Pro+ access, particularly for historical data.
So I'd specifically choose WeatherLink Live + local API, rather than designing the system around the cloud API.
4. Ambient Weather — viable, but I'd rank it below the three above
Ambient Weather has a documented cloud API and a native Home Assistant integration. HA requires an Application Key and API Key for the owner-station integration.
There is also a local route: Home Assistant documents using ecowitt2mqtt with Ambient Weather devices for local operation.
So it can absolutely satisfy the no paid subscription requirement, but its HA story is somewhat less clean than Ecowitt's native local integration or Tempest's native local UDP integration.
My ranking
If I were buying specifically for Home Assistant + documented API + no recurring subscription, I'd shortlist:
Several personal weather stations (PWS) offer documented local or push APIs and integrate smoothly with Home Assistant completely free, requiring no cloud subscription or paid tiers.
The top options that meet these criteria include:
Ecowitt (Gateways like GW1000, GW1100, GW2000, GW3000) : Ecowitt is widely considered the gold standard for local smart home integration. Their Wi-Fi gateways feature a built-in local HTTP API and custom server configuration. The official Home Assistant Ecowitt Integration acts as a local receiver endpoint; you simply point your Ecowitt gateway (via their mobile app) to push data directly to your Home Assistant IP on your local network. It is entirely local, fast, and free.
WeatherFlow Tempest : The Tempest station communicates via a local UDP broadcast right out of the box . The core Home Assistant WeatherFlow Integration listens to these local UDP packets passively on your local subnet. It requires zero cloud connection, zero API keys, and zero subscriptions to populate all wind, rain, solar, and atmospheric entities instantly.
Davis Instruments (WeatherLink Live / Console) : Davis professional-grade stations have a documented local API available when the datalogger/gateway is on your local network. While the official out-of-the-box cloud link has historical limitations, community-maintained local integrations via HACS (such as the Davis WeatherLink Live Integration ) poll the device locally over your LAN to expose dozens of sensor metrics completely cloud-free.
Would you like help setting up the local push configuration for Ecowitt or finding the right HACS repository for Davis/WeatherFlow?
Yes. If your requirements are (1) a documented API/protocol, (2) a real PWS rather than just forecast data, (3) native or straightforward Home Assistant support, and (4) no recurring subscription, the shortlist is fairly small.
Station ecosystem
Documented API/protocol
Home Assistant
Subscription required?
My take
Ecowitt
Yes — local HTTP API + cloud API
Native, local push
No
⭐ Best overall
WeatherFlow Tempest
Yes — local UDP + cloud REST API
Native, local
No
⭐ Best premium option
Ambient Weather
Yes — REST API
Native, but cloud-based
No for normal station access
⭐ Good if you prefer conventional sensors
Davis Instruments
Yes — WeatherLink API
Community/native options vary by hardware
Depends on hardware/API path
Excellent hardware, more complicated
AcuRite / La Crosse
Limited/closed or third-party approaches
Possible via workarounds
Often service-dependent
I wouldn't choose them for an API-first HA setup
1. Ecowitt — my top recommendation
Ecowitt is probably the best fit if Home Assistant + no cloud subscription + open/local integration is your priority.
Home Assistant's official Ecowitt integration receives data directly from the gateway over your LAN. It supports gateways such as the GW1200, GW2000 and GW3000 and exposes temperature, humidity, pressure, wind, rain, lightning, soil moisture, air quality and other sensors depending on what you've connected.
Even better, Ecowitt publishes a documented HTTP LAN API and continues to publish its API documentation; its current documentation lists the HTTP API protocol as of January 2026.
Why I'd buy it:
No subscription.
Local data stays on your network.
Official Home Assistant integration.
Documented local protocol.
Huge ecosystem of inexpensive additional sensors.
You can operate the station without relying on Ecowitt's cloud.
Particularly interesting: a gateway + WS90/WS80/etc. sensor combination lets you choose the exact sensors you need rather than replacing an entire station.
2. WeatherFlow Tempest — best polished/premium choice
WeatherFlow's Tempest is another excellent choice.
Home Assistant has an official local WeatherFlow integration that communicates directly with the Tempest system using UDP. It doesn't require the cloud and requires HA and the station to be on the same subnet.
That gives you a particularly nice architecture:
Tempest → local network → Home Assistant
rather than:
Tempest → vendor cloud → Home Assistant
The cloud API is also documented and available, but you don't need it for basic HA sensor integration. Home Assistant exposes temperature, humidity, pressure, wind, rain, UV/solar radiation, lightning and other measurements.
Downside: Tempest is substantially more expensive than the Ecowitt ecosystem, and the sensor philosophy is different—it is a very compact, largely sensor-less-looking unit rather than a traditional weather station with lots of replaceable probes.
Ambient Weather also checks the boxes surprisingly well.
Ambient Weather publishes RESTful APIs for retrieving real-time and historical PWS data, and users can generate their own API key from their Ambient Weather Network account. The vendor documents rate limits and the API itself.
Home Assistant has an official Ambient Weather Station integration. The catch is that it communicates through the Ambient Weather cloud rather than directly with the station.
There is also an interesting distinction: Home Assistant's Ambient Weather Network integration can read public station data without an API key, although with reduced sensor data.
For your own station, though, I'd use the normal Ambient Weather integration/API.
What I would choose
If I were buying specifically for Home Assistant + API + no subscription, I'd rank them:
Ecowitt — best combination of openness, local API, HA integration, sensor ecosystem and price.
WeatherFlow Tempest — best polished/premium station and excellent local HA integration.
Ambient Weather — good conventional PWS and excellent documented API, but more cloud-dependent.
Davis — superb instrumentation, but I'd choose it for meteorological quality first and HA/API convenience second.
One important distinction: "has an API" doesn't necessarily mean "the API is free." For example, Davis's WeatherLink API is documented and uses API tokens, but the exact availability/limitations depend on the WeatherLink hardware/account arrangement.
If you tell me your budget (e.g. <$200, <$400, <$600) and whether you want rain + wind + lightning + indoor sensors, I can narrow this down to 3–5 specific stations/gateway combinations that are particularly good for Home Assistant.
That gives you a particularly nice architecture:
Tempest → local network → Home Assistant
rather than:
Tempest → vendor cloud → Home Assistant
The cloud API is also documented and available, but you don't need it for basic HA sensor integration. Home Assistant exposes temperature, humidity, pressure, wind, rain, UV/solar radiation, lightning and other measurements.
Downside: Tempest is substantially more expensive than the Ecowitt ecosystem, and the sensor philosophy is different—it is a very compact, largely sensor-less-looking unit rather than a traditional weather station with lots of replaceable probes.
Ambient Weather also checks the boxes surprisingly well.
Ambient Weather publishes RESTful APIs for retrieving real-time and historical PWS data, and users can generate their own API key from their Ambient Weather Network account. The vendor documents rate limits and the API itself.
Home Assistant has an official Ambient Weather Station integration. The catch is that it communicates through the Ambient Weather cloud rather than directly with the station.
There is also an interesting distinction: Home Assistant's Ambient Weather Network integration can read public station data without an API key, although with reduced sensor data.
For your own station, though, I'd use the normal Ambient Weather integration/API.
What I would choose
If I were buying specifically for Home Assistant + API + no subscription, I'd rank them:
Several reliable personal weather stations (PWS) offer documented APIs, local push/pull capabilities, and seamless, subscription-free integration into Home Assistant.
The top options that do not require paying a monthly cloud fee for local or direct data access include:
Ecowitt Stations (e.g., HP2551, GW1100, GW2000 gateways) : Ecowitt is widely considered the gold standard for local smart home integration. Their gateways feature a built-in local web interface and natively support custom server configurations. The core Ecowitt Integration in Home Assistant works completely locally by having the hardware push data directly to your Home Assistant IP over your local network—no cloud connection or subscription required.
WeatherFlow Tempest : The Tempest uses a completely local UDP broadcast/API structure in addition to its cloud option. The official Home Assistant Tempest/WeatherFlow integration listens directly to UDP packets broadcasted by the Tempest base station on your local network. It operates entirely offline/subscription-free once configured.
Davis Instruments (Vantage Pro2 / Vantage Vue with WeatherLink Console or WeatherLink Live) : Davis professional-grade stations feature a fully documented local API (v1/current_conditions ) accessible via your local network IP when connected to a WeatherLink IP/Wi-Fi console or WeatherLink Live device. The community and core-supported WeatherLink integration queries this local endpoint completely bypassing any paid WeatherLink tier requirements.
Ambient Weather (via local workarounds) : While Ambient's native cloud API integration requires developer keys and relies on their cloud servers, Ambient hardware data can be intercepted locally or redirected using tools like ecowitt2mqtt or custom interceptors. However, if you want a seamless native out-of-the-box local experience without extra bridging tools, Ecowitt or Tempest are much smoother choices.
If you'd like, let me know:
Your budget range for the hardware
What specific sensors you need (e.g., lightning detection, soil moisture, solar radiation)
I can help you choose the best specific model for your setup.
Yes. If your requirements are (1) a real, documented API, (2) Home Assistant support, and (3) no recurring subscription, the shortlist is actually fairly good.
System
API
Home Assistant
Subscription needed?
My take
Ecowitt
Yes — local HTTP API + cloud API
Official integration
No
⭐ Best overall
WeatherFlow Tempest
Yes — REST + WebSocket + local UDP
Official local integration
No for your own station
⭐ Best premium option
Ambient Weather
Yes — documented REST API
Official integration
No
⭐ Good, but cloud-dependent
Davis Instruments
Yes — WeatherLink v2 + local APIs on some hardware
Community/HACS options
Not necessarily
Excellent hardware, more complicated
1. Ecowitt — probably the best fit
Ecowitt is unusually friendly to Home Assistant.
Current Ecowitt gateways such as the GW1200/GW2000/GW3000 have a documented local HTTP protocol, and Home Assistant has an official Ecowitt integration that uses local push rather than a cloud service.
Ecowitt's documentation currently explicitly provides both an HTTP API interface for LAN and an API for its cloud service.
The important bit: the local Home Assistant integration doesn't require a paid cloud subscription. Your gateway sends measurements directly to HA.
Good families to look at include:
WS90 / Wittboy systems
WS39xx systems
Stations paired with GW1200, GW2000 or GW3000 gateways
Home Assistant supports temperature, humidity, pressure, wind, rain, lightning, soil moisture, PM sensors, CO₂ and more depending on the attached sensors.
Verdict: If you're building a new HA installation and want to avoid vendor lock-in, I'd start here.
2. WeatherFlow Tempest — excellent, especially if you want a polished station
WeatherFlow's Tempest has a properly documented REST and WebSocket API. You can create a personal access token and access your own station's observations.
Even better for Home Assistant, HA has an official local WeatherFlow integration that communicates directly with Tempest over UDP. It doesn't require the cloud API at all.
WeatherFlow explicitly permits owners to access their own station's observation and forecast data for personal use without a paid subscription.
The Tempest is particularly attractive if you want:
Verdict:Best premium/modern choice, especially if you're willing to pay more up front for the hardware.
3. Ambient Weather — good, but the API is cloud-based
Ambient Weather has a documented REST API requiring an Application Key and Device/API Key.
Home Assistant has an official Ambient Weather Station integration using that API.
Popular stations include the WS-2902, WS-2000, and WS-5000 families. Ambient specifically advertises Home Assistant compatibility and its API on the WS-2902 product page.
The distinction from Ecowitt/Tempest is important:
Ambient Weather's official HA integration goes through Ambient Weather's cloud.
You don't need the paid AWN+ subscription just to use the station/API, but you are dependent on the free Ambient Weather service. Ambient also documents local protocols for some hardware, and HA notes that ecowitt2mqtt can provide a local option.
Verdict: Good choice, particularly if you like the Ambient hardware, but Ecowitt is cleaner if "local-first" is the priority.
4. Davis — great hardware, but check the exact logger
Davis Instruments is the interesting case.
The WeatherLink v2 API is documented and supports Davis stations connected to WeatherLink.com. The API has a default limit of 1,000 calls/hour, which is plenty for typical HA polling.
However, Davis's current API has subscription-dependent data permissions. For example, Basic access can provide current WeatherLink Live/Console data at 15-minute intervals but doesn't provide historical data.
The way around that is local access. WeatherLink Live has a documented local API, and community HA integrations can poll it directly.
So Davis can absolutely be subscription-free, but you need to choose the hardware/logger carefully.
Verdict: Fantastic if you prioritize measurement quality and durability, but it's not as plug-and-play for HA as Ecowitt or Tempest.
What I would buy
If I were optimizing specifically for Home Assistant + documented API + no subscription, I'd rank them:
Ecowitt + GW2000/GW3000 — 🥇 best combination of openness, local API, sensors and HA integration.
WeatherFlow Tempest — 🥈 excellent hardware and excellent local HA support; more expensive.
Ambient Weather WS-5000/WS-2000 family — 🥉 good hardware/API, but official HA path is cloud-based.
Davis Vantage Vue/Pro2 + appropriate local-capable logger — excellent hardware, but more complicated and expensive.
One particularly important distinction: "has an API" isn't enough. I'd favor stations where the API is local and documented, because then a vendor changing its cloud service, API limits, or subscription structure can't break your Home Assistant installation. On that criterion, Ecowitt and Tempest stand out.
If you tell me your approximate budget (e.g. <$200, $200–400, $400+) and whether you want rain + wind + UV + lightning, I can narrow this to the 2–3 specific station kits I'd buy today, including their HA integration method.
Home Assistant has an official Ambient Weather Station integration using that API.
Popular stations include the WS-2902, WS-2000, and WS-5000 families. Ambient specifically advertises Home Assistant compatibility and its API on the WS-2902 product page.
The distinction from Ecowitt/Tempest is important:
Ambient Weather's official HA integration goes through Ambient Weather's cloud.
You don't need the paid AWN+ subscription just to use the station/API, but you are dependent on the free Ambient Weather service. Ambient also documents local protocols for some hardware, and HA notes that ecowitt2mqtt can provide a local option.
Verdict: Good choice, particularly if you like the Ambient hardware, but Ecowitt is cleaner if "local-first" is the priority.
4. Davis — great hardware, but check the exact logger
Davis Instruments is the interesting case.
The WeatherLink v2 API is documented and supports Davis stations connected to WeatherLink.com. The API has a default limit of 1,000 calls/hour, which is plenty for typical HA polling.
However, Davis's current API has subscription-dependent data permissions. For example, Basic access can provide current WeatherLink Live/Console data at 15-minute intervals but doesn't provide historical data.
The way around that is local access. WeatherLink Live has a documented local API, and community HA integrations can poll it directly.
So Davis can absolutely be subscription-free, but you need to choose the hardware/logger carefully.
Verdict: Fantastic if you prioritize measurement quality and durability, but it's not as plug-and-play for HA as Ecowitt or Tempest.
Several popular personal weather stations (PWS) offer documented APIs, local push/pull capability, and native or custom Home Assistant integration without requiring any paid subscriptions.
The best options feature robust local or free cloud integrations:
WeatherFlow (Tempest)
API / Connection Type: Local UDP broadcast API (plus a free cloud option).
Home Assistant Support: Native core integration (WeatherFlow ). It listens directly to UDP packets emitted by your Tempest hub on your local network.
Subscription Required: None. It is 100% local, operates independently of an internet connection, and requires zero paid tiers.
Ecowitt (Wittboy, GW1000/GW2000 gateways)
API / Connection Type: Local HTTP/custom server push API. Ecowitt gateways allow you to natively redirect the "Customized" weather server upload settings straight to your local Home Assistant IP address.
Home Assistant Support: Native core integration (Ecowitt ) that intercepts the local data pushes from the hardware.
Subscription Required: None. No cloud subscription or fees are needed, as data flows directly inside your local network.
Ambient Weather
API / Connection Type: Documented Ambient Weather API / WebSocket data feed.
Subscription Required: None for basic personal station data syncing and dashboard integration (though Ambient Weather offers optional paid tiers for extended historical data archival, standard API access for your own hardware is free).
Davis Instruments (Vantage Vue / Vantage Pro2 with WeatherLink IP or Logger)
API / Connection Type: Local TCP port API / WeatherLink local API v2.
Home Assistant Support: Supported via native/custom WeatherLink integrations that poll the Davis data logger locally or via their free API tier.
Subscription Required: None for local data access, though Davis pushes a "Pro" subscription for extended cloud features (which you can bypass entirely by pulling data locally).
If you are deciding between these, let me know:
Do you prefer a completely local connection (no cloud dependency) or are you okay with a free cloud API?
Do you already own a weather station , or are you looking for hardware recommendations?