best

Zigbee2MQTT vs ZHA which to pick

Zigbee2MQTT vs ZHA for Home Assistant: how they differ in control and exposed data, device compatibility, setup effort, and which one to pick for your mesh.

On this page
  1. What Actually Changes Between Them
  2. Device Compatibility
  3. Setup and Maintenance
  4. Performance and Stability
  5. Migrating Between Them
  6. Quick Verdict

If you’re running Home Assistant and want to add Zigbee devices, you’ll hit this choice pretty quickly: use ZHA (Zigbee Home Automation), the built-in integration, or go with Zigbee2MQTT, the community favorite. Here’s how to pick the right one for your setup.

What Actually Changes Between Them

ZHA is built into Home Assistant. Under the hood it uses the open-source zigpy library to talk to your coordinator, and zigpy supports several radio families—Silicon Labs EmberZNet (EZSP, via bellows), Texas Instruments Z-Stack (via zigpy-znp), deCONZ (ConBee/RaspBee, via zigpy-deconz), plus XBee and ZiGate. So ZHA is not tied to one firmware; it works with whatever zigpy-compatible coordinator you plug in.

Zigbee2MQTT runs as a separate add-on that uses the open-source zigbee-herdsman library to bridge your Zigbee network to an MQTT broker, which Home Assistant then subscribes to via MQTT discovery. It supports a broad set of coordinators as well.

One clarification up front: this is a Zigbee decision. Neither integration handles Z-Wave—that is a separate radio with its own integration (Z-Wave JS) and its own controller hardware.

The practical difference: Zigbee2MQTT tends to expose more device-specific settings and data, and lets you tweak things ZHA keeps simpler. ZHA is quicker to set up and stays out of your way, but exposes fewer knobs for some devices.

Both keep everything local. Neither requires cloud access. Your Zigbee mesh stays on your network regardless of which option you choose.

Device Compatibility

This is where Zigbee2MQTT pulls ahead for many power users. If you have unusual Zigbee devices—especially Tuya-based gear or off-brand sensors that don’t map cleanly to standard Zigbee clusters—Zigbee2MQTT’s extensive device database often has the device-specific quirks already handled.

ZHA has improved a lot here and handles mainstream devices well. If you’re mostly running Philips Hue lights, Aqara sensors, or IKEA bulbs, ZHA works without fuss. One caveat on Aqara’s newer P2 line: the Aqara Door/Window Sensor P2 and Aqara Motion Sensor P2 are Matter-over-Thread devices, so they join via Matter rather than either Zigbee backend (and the Aqara FP2 presence sensor is Wi-Fi, not Zigbee). The ConBee III and Sonoff Zigbee 3.0 USB Dongle Plus are popular coordinators that work with either integration (see our roundup of the best Zigbee coordinators for Home Assistant for the full list), and so does the first-party Home Assistant Connect ZBT-1 (now discontinued and replaced by the Connect ZBT-2, which is the one to buy new).

If you’re buying new and want simplicity, ZHA is a fine default. If you already have a drawer full of random Zigbee gadgets, Zigbee2MQTT is often the safer bet for compatibility.

Setup and Maintenance

ZHA wins on simplicity. Pick a supported coordinator, plug it in, add the ZHA integration, and you’re going. There’s no separate broker to run.

Zigbee2MQTT requires installing the add-on, having an MQTT broker (such as the Mosquitto add-on), and updating the add-on separately from Home Assistant core. Coordinator firmware updates are handled through the Zigbee2MQTT side, and doing them carefully matters—see Zigbee2MQTT firmware updates without breaking things.

The tradeoff is visibility. Zigbee2MQTT exposes detailed per-device state, debug logs, and a map of your mesh, which makes hands-on troubleshooting easier when a device misbehaves. ZHA also has a network visualization and diagnostics, but Zigbee2MQTT’s tooling is what many tinkerers prefer, which helps when you’re working through our Zigbee network troubleshooting guide.

Performance and Stability

Both are stable enough for production use. For typical homes under ~50 devices you won’t notice a meaningful difference between them.

On large networks, opinions differ, and real-world results depend heavily on coordinator hardware, firmware, router placement, and channel choice far more than on the integration itself. Pick good mains-powered routers and a clear channel, and either integration will scale to dozens of devices.

One real architectural note: Zigbee2MQTT adds MQTT as a dependency. If your MQTT broker goes down, Zigbee updates stop reaching Home Assistant until it’s back. ZHA has fewer moving parts in that sense.

Migrating Between Them

The configuration is not interchangeable between ZHA and Zigbee2MQTT, so moving from one to the other generally means re-pairing your devices. Plan for that—especially for hard-to-reach in-wall devices—before you switch.

Quick Verdict

Pick ZHA if: You want the simplest setup, mainly use mainstream devices, and don’t need deep per-device tweaking. Remember it supports many coordinator types through zigpy, not just one firmware.

Pick Zigbee2MQTT if: You have non-standard or Tuya devices, want maximum visibility and per-device control, or prefer its mesh-mapping and debugging tools.

For most Home Assistant users, ZHA is a solid starting point, and you can migrate to Zigbee2MQTT later if you hit its limits—just budget time to re-pair.

Next steps

Compare this category side by side

If you want fewer opinions and more matrix-style tradeoffs, the comparison pages are the next stop.

See comparisons →

Inspect all products

The full product database keeps the caveats, setup notes, and compatibility details attached to each device.

Browse products →

Back up and read the explainers

If a buying guide feels too specific too fast, the guides section covers the broader local-first logic behind it.

Read guides →

Related articles

Best local-first smart home hubs

The best smart home hubs and controllers for people who care about local control, Home Assistant compatibility, and fewer long-term regrets.

Read article →

Best smart plugs with local control and energy monitoring

The best local smart plugs with energy monitoring for Home Assistant: real local control over Zigbee, Z-Wave, or Wi-Fi plus accurate power data, no cloud.

Read article →

Best local security cameras for Home Assistant

The best Home Assistant-friendly local camera options for buyers who care about RTSP, ONVIF, NVR compatibility, and lower cloud dependence.

Read article →
New guides and product notes, no inbox required. Follow via RSS →