Aqara vs Shelly vs Sonoff: which ecosystem for local-first smart homes?
Shelly for Wi-Fi relays with a real local API, Sonoff for the cheapest Zigbee, Aqara for polished Zigbee and Thread sensors. Where each wins, and the one I build on.
On this page
Ask a Home Assistant forum what to buy on a budget and the same three names come back: Aqara, Shelly and Sonoff. All three sell devices under $30, and all three claim some version of local control.
But they are not interchangeable. They take fundamentally different approaches to protocols, hubs, firmware, and what “local” actually means in practice. Picking the wrong ecosystem for your situation does not ruin anything (you can always mix), but it does waste time and money.
This guide is for people who already know they want local control and Home Assistant compatibility. If you are still deciding on a platform, read Home Assistant vs Hubitat first. And if Aqara is not really in the running for you, the narrower question of Shelly vs Sonoff for relays is covered on its own page, in more depth than the summary below.
Quick verdict
- Aqara: best polished ecosystem with strong Apple Home and Home Assistant support. Zigbee-first, expanding into Matter and Thread.
- Shelly: best for electricians and DIYers who want in-wall devices with a true local API and no hub requirement. Wi-Fi is the default, but current Gen4 parts can be switched to Zigbee instead.
- Sonoff: some of the cheapest Zigbee devices around, great for HA-only setups where fit and finish do not matter much.
Protocol approach
Aqara
Aqara is a Zigbee-first ecosystem. Most of their sensors, switches, and locks communicate over Zigbee 3.0, which means you need either an Aqara hub (like the Hub M3) or a Zigbee coordinator connected to Home Assistant. Their newer devices are adding Matter and Thread support, which gives you more flexibility, but the bulk of the product line is still Zigbee. If you are not sure which of those two labels to shop by, Matter vs Thread explains what each one is, and five of the eleven picks in my list of the best Matter devices worth buying are Aqara parts, which is a fair measure of how far that side of the range has come.
Shelly
Shelly devices are Wi-Fi-first, which means no hub and no coordinator. Each device connects directly to your network and exposes a local HTTP API and optional MQTT. This is fully hub-free local control, not marketing language. Some newer Shelly devices add Bluetooth, their Wave line uses Z-Wave, and the current Gen4 relays, dimmers and plugs also carry Zigbee 3.0 and Matter, so Shelly is no longer a Wi-Fi-only brand. A Gen4 runs one radio profile at a time: it ships in a Matter-over-Wi-Fi profile, and a button sequence on the device switches it to Zigbee, which takes Wi-Fi and Matter away. The core identity is still Wi-Fi relays and switches that work on their own.
Sonoff
Sonoff is split. Their Zigbee line (the SNZB sensors, the ZBMINI-L2) works great with a Zigbee coordinator and Home Assistant. Their Wi-Fi devices are more nuanced than the usual “flash it or live in the cloud” summary. Stock eWeLink firmware does answer on the local network, so there are two local routes: drive the stock firmware over your LAN, or replace the firmware with Tasmota or ESPHome.
Flashing is not always on the table. Newer plugs like the S40 Lite use a Bouffalo Lab BL602 chip, which neither Tasmota nor ESPHome supports, while the older ESP-based S31 flashes fine. Check which chip is inside before you buy a Sonoff plug specifically to flash it.
Home Assistant integration quality
Aqara devices integrate well through ZHA or Zigbee2MQTT. Many of them also work via HomeKit Controller or native Matter, which gives you multiple paths into Home Assistant. The FP2 presence sensor is a good example. It works over Wi-Fi via HomeKit Controller without needing a Zigbee coordinator at all. If presence sensing is what brought you to Aqara, the wider field is in my roundup of presence sensors for Home Assistant.
Shelly has an excellent native Home Assistant integration with local push updates. No coordinator, no flashing, no workarounds. Devices like the Shelly Plus 1 and Plus Plug US are discovered automatically and report state changes instantly over the local network. Shelly has since discontinued both of those: the Shelly 1 Gen4 replaces the Plus 1, and the Plug US Gen4 replaces the Plus Plug US. Both new parts integrate the same way. This is about as clean as Wi-Fi device integration gets.
Sonoff Zigbee devices work well through ZHA or Zigbee2MQTT, and the SNZB-02D temp sensor is the one to start with. I haven’t run that one; the pick rests on the spec sheet and what other Home Assistant users report. Their Wi-Fi devices ask you to make a choice. Stock firmware can be driven locally, but not by a core Home Assistant integration: you add either the official eWeLink Smart Home add-on or the SonoffLAN custom integration through HACS, and both need your eWeLink account credentials to fetch the per-device encryption keys. Flashing Tasmota or ESPHome drops the account and the cloud from the picture entirely, at the cost of a wired first flash and a device whose chip supports it.
Product range and build quality
Aqara has the widest range of the three: motion sensors, presence sensors, door sensors, temperature sensors, cameras, smart locks like the U200, light switches, LED bulbs, and valve controllers. Build quality is noticeably better than budget competitors. Devices feel solid and look like they belong in a finished home. One gap to plan around: Aqara’s TVOC Air Quality Monitor reads VOC, temperature and humidity but not CO2 or particulates, so if you want real CO2 and PM2.5 numbers, my roundup of the best air quality sensors for Home Assistant has the local-first monitors that read both.
Shelly is focused on power control: relays, dimmers, smart plugs, and energy monitoring. The Wave 1PM Mini, which I run in my own walls, is a good example of what they do best: compact in-wall relays for electricians and confident DIYers. They are expanding into sensors, but the product line is narrower than Aqara’s. Build quality is functional and industrial rather than pretty. If that is the part of the range you are shopping, my roundup of the best local in-wall relays names the specific modules and covers the no-neutral case Shelly’s own in-wall relay does not answer.
Sonoff covers a wide range of cheap Zigbee sensors and a few switches and plugs. The build quality is utilitarian. These are not devices you show off, but they work. The SNZB sensor line is useful for filling a house with temperature, humidity, motion, and door sensors without spending much money.
Cloud dependency reality
This is where the three brands differ most, and where marketing claims get slippery.
Aqara Zigbee devices paired directly to a Home Assistant Zigbee coordinator are fully local. No cloud involved, no Aqara account needed. But if you use Aqara’s own hub and app, cloud features are baked in. Firmware updates, remote access, and some automations go through Aqara’s servers. The local story is real, but only if you go through Home Assistant.
Shelly is the most local-first of the three. Every Shelly device has a built-in web UI you can access from a browser. You can control devices, set schedules, and configure MQTT without any app, any cloud account, or any smart home platform. If Home Assistant disappeared tomorrow, your Shelly devices would still work from their own web interfaces. That is a meaningful difference.
Sonoff Zigbee devices paired to a Home Assistant coordinator are fully local, same as Aqara. Their Wi-Fi devices sit in between. Stock firmware gives you no web UI and no MQTT, and the eWeLink app is cloud-first, but the devices do answer on the LAN: the official eWeLink add-on and the SonoffLAN integration both talk to them locally and fall back to the cloud when a device goes quiet. The catch is that the local protocol is encrypted, so you need eWeLink account credentials to get the keys, and Sonoff can change that arrangement in a firmware update. It lands between a cloud-only plug and a Shelly, which owes nothing to any account.
When to pick each one
Pick Aqara if…
- you want polished, good-looking devices that fit a finished home
- you use Apple Home or want Matter/Thread options alongside Home Assistant (see which Matter devices are worth buying)
- you want a broad product range from one brand (sensors, locks, switches, presence)
- you are fine running a Zigbee coordinator or an Aqara hub
Pick Shelly if…
- you want hub-free Wi-Fi devices with real local APIs that work independently
- you are doing electrical work and want compact in-wall relays and dimmers
- you want devices that do not depend on any platform, not even Home Assistant
- energy monitoring and power control are your main priorities
Pick Sonoff if…
- you want the cheapest reliable Zigbee sensors available
- you are building an HA-only setup and do not care about polish or app experience
- you want to fill a house with sensors without a large budget
- you are comfortable with utilitarian build quality
If your shortlist has come down to just two of these for in-wall switching, the dedicated Shelly vs Sonoff comparison goes further on firmware flashing, protocol choice and which brand suits each job.
All three brands sell a wireless scene button as well, which is the cheapest way to add a physical control that fires locally. The roundup of smart buttons and remotes for Home Assistant covers the ones worth buying and notes the radio each one speaks.
Can you mix and match?
Yes, and most experienced local-first households do exactly this.
A common setup: Aqara sensors and locks for the devices you interact with or see every day, Shelly relays behind light switches for local power control, and Sonoff Zigbee sensors scattered in closets, garages, and utility areas where cost matters more than aesthetics.
Zigbee devices from Aqara and Sonoff can share the same coordinator in Home Assistant. All three brands assume a hub you actually control, so if you have not picked one yet, my roundup of the best smart home hubs for local control covers the three I would start from. Shelly Wi-Fi devices sit on a completely separate protocol layer and will not join or disturb your Zigbee mesh. They do still share the 2.4 GHz band with it, and that airtime starts to matter once you have a few dozen of each, but it is settled by which Zigbee channel to use rather than by which brands you mixed. There is no technical penalty for mixing brands, only the mild annoyance of managing different firmware update processes.
My advice is to start with whichever brand solves your first problem and not to worry about being locked in, because you aren’t.