Home Assistant
Open-source home automation that puts privacy first
Home Assistant is an open-source home automation platform that integrates thousands of smart devices and runs automations locally. It targets anyone wanting private, vendor-neutral smart home control. It is deployed as an OS image, Docker, or supervised install.
Home Assistant setup guides & articles
Hands-on coverage of Home Assistant from the blog.
Home Assistant: Your First Month, Mapped
Your first month with Home Assistant, week by week — HAOS install, a $25 Zigbee dongle, three automations that stick, and avoiding YAML burnout.
Homelab & InfrastructureThe State of Self-Hosting in 2026
Where self-hosting stands in 2026: growth numbers, category winners, licence drama as a genre, and predictions grounded in the visible trends.
Key features
- Integrates thousands of devices
- Local-first automations
- Add-on ecosystem
- Powerful dashboards
Quick deploy
A starting point for self-hosting Home Assistant - check the official docs for the full set of options.
- Web port
8123
Docker Compose
services:
homeassistant:
image: ghcr.io/home-assistant/home-assistant:stable
network_mode: host
volumes:
- ./config:/config
- /etc/localtime:/etc/localtime:ro
restart: unless-stoppedWatch out for
- Host networking is required for device discovery (mDNS, SSDP) to work
- Zigbee/Z-Wave USB sticks need a devices: passthrough entry
Reverse proxy: Add the proxy's IP to trusted_proxies in configuration.yaml or logins fail.
Pros & cons
Strengths
- Huge device support
- Local control and privacy
- Very active community
Trade-offs
- Learning curve for automations
- Occasional breaking updates
Home Assistant replaces
Last reviewed Aug 22, 2026 · 724 words
Pick Home Assistant OS on a dedicated box unless you can say precisely why you need something else. That one decision prevents most first-year pain: OS installs get one-click updates, add-ons, and automatic snapshots, while the bare Docker container — tempting if you already run a compose stack — silently gives up the add-on store and the supervisor. The people happiest with Container installs are the ones who already know they want to run Zigbee2MQTT and Node-RED as separate services anyway.
The install-method decision, honestly
| Method | Add-ons | Updates | Best for |
|---|---|---|---|
| HA OS (dedicated box/VM) | Yes | One click, with snapshots | Almost everyone |
| Container (Docker) | No | You manage them | Existing homelab stacks |
| Supervised (on Debian) | Yes | Fragile, constrained | Legacy setups |
| Core (venv) | No | Manual Python care | Developers |
Hardware: a Raspberry Pi 4 with an SSD (not an SD card — the database will kill it in a year) runs a serious setup. A used mini PC gives headroom for camera streams and voice. The catalogue's 1 GB RAM minimum is real but 4 GB is comfortable. My month-by-month notes from a fresh start are in Home Assistant: the first month.
If devices aren't discovered, it's the network mode
Home Assistant finds most devices with mDNS and SSDP broadcasts, and those do not cross Docker's default bridge network. If you run the container yourself, network_mode: host is not optional:
services:
homeassistant:
image: ghcr.io/home-assistant/home-assistant:stable
network_mode: host
volumes:
- ./config:/config
- /etc/localtime:/etc/localtime:ro
restart: unless-stopped
Zigbee and Z-Wave USB sticks need a devices: passthrough too, and one placement tip beats any software: put the stick on a short USB-extension cable away from the server's USB 3 ports, whose radio interference is a famous cause of "my Zigbee network is flaky."
Local-first is the point — buy accordingly
The reason to run Home Assistant is that automations execute on your hardware in milliseconds and keep working when your internet or a vendor's cloud dies. Preserve that by preferring Zigbee, Z-Wave, Thread, or WiFi devices with local APIs (anything ESPHome-based, Shelly, most Tasmota) over cloud-tethered gear. A cloud device demoted to a cloud integration still works, but you have reintroduced exactly the dependency you were escaping. The degoogle map has a longer list of local-first swaps.
Start with three automations, not thirty
The platform's depth is a trap for week-one enthusiasm. The durable path: motion-activated lights in one room, a door-open notification, and something time-based like "turn everything off at midnight." Live with those for two weeks, learn how triggers, conditions, and actions compose, then expand. Automations you copy wholesale from forums before understanding the model are the ones that misfire at 3 a.m., and debugging someone else's YAML is the fastest way to sour on the hobby.
Updates land monthly — read before you click
Home Assistant ships a feature release every month, and a few times a year one includes breaking changes for specific integrations. The release notes flag them explicitly by integration name, so the routine is: skim the breaking-changes section for names you use, take the automatic snapshot, update. Waiting a week after each release (x.x.1 or x.x.2) is the sensible-conservative option. What you should not do is fall six months behind — catching up across many releases at once is where upgrades actually break.
Remote access without opening a port
Three good options, in order of effort: Nabu Casa's cloud ($6.50/month, funds the project's development, zero config), Tailscale (free, ten minutes, invisible to the internet), or a reverse proxy with TLS. If you proxy, add the proxy's IP to trusted_proxies in configuration.yaml or logins will fail with an unhelpful error. Never forward port 8123 raw.
What I'd do
HA OS on a used mini PC with an SSD, a Sonoff or SkyConnect Zigbee stick on an extension cable, three automations in week one, Nabu Casa or Tailscale for remote access, and the monthly update ritual with snapshots. Home Assistant repays patience like nothing else in self-hosting — it just asks that you extend the patience to yourself first.
Compare Home Assistant
21 head-to-head comparisons.
- Home Assistant vs Frigate
- Home Assistant vs Zigbee2MQTT
- Home Assistant vs ESPHome
- Home Assistant vs Mosquitto
- Home Assistant vs Home Assistant Operating System
- Home Assistant vs evcc
- Home Assistant vs Scrypted
- Home Assistant vs Domoticz
- Home Assistant vs Gladys Assistant
- Home Assistant vs Mozilla WebThings Gateway
- Home Assistant vs Home Assistant Supervisor
- Home Assistant vs SmartApp Bridge
- Home Assistant vs ioBroker
- Home Assistant vs Z-Wave JS UI
- Home Assistant vs openHAB
- Home Assistant vs AppDaemon
- Home Assistant vs Pimatic
- Home Assistant vs Jeedom
- Home Assistant vs OpenHAB Cloud
- Home Assistant vs Zwave-JS Server
- Home Assistant vs FHEM
Similar home automation apps
Frigate
Home AutomationLocal NVR with real-time AI object detection
Replaces Google Home
ntfy
Home AutomationSend push notifications to your phone via simple HTTP
Replaces Pushover, Pushbullet
Homebridge
Home AutomationBring non-HomeKit smart devices into Apple Home
Replaces Apple HomeKit hubs
Tasmota
Home AutomationOpen-source firmware for ESP-based smart devices
Replaces Tuya Cloud
ThingsBoard
Home AutomationOpen-source IoT platform for device management and data
Replaces AWS IoT, Azure IoT
WLED
Home AutomationFirmware for controlling addressable LED strips
Replaces Philips Hue