For most homes, Home Assistant hardware needs are modest: 2 GB of RAM, two CPU cores and 32 GB of storage, which a Home Assistant Green or a Raspberry Pi 4 or 5 on SSD covers. Add Frigate cameras or local Whisper voice and the pick becomes an Intel N100 mini PC with 16 GB of RAM.
Home Assistant itself is the cheap part. The box gets sized by what runs beside it: apps, a camera recorder, a speech pipeline, and a database writing every state change to disk. For a box-by-box comparison of Green, Yellow, Pi, mini PC and NAS VM, see Home Assistant hardware: what to run it on. This is the sizing sheet.
What are the minimum hardware requirements for Home Assistant?
The official minimums are 2 GB of RAM and a 64-bit CPU. The Raspberry Pi install guide asks for a Pi 4 or 5 with at least 2 GB of RAM and a microSD card of at least 32 GB, ideally A2-rated. The virtual machine guide lists 2 GB of RAM and 2 vCPUs.
32-bit is finished. The project deprecated i386, armhf and armv7 and stopped building for them from release 2025.12, retiring the original Pi and the Pi 2. The Pi 3 and Pi 4 are 64-bit capable, so 32-bit installs on them can migrate to a supported 64-bit version of Home Assistant OS.
On x86, the generic x86-64 guide has two conditions that catch people: the machine must boot in UEFI mode, and the boot drive must use 512-byte logical sectors (512n or 512e). Home Assistant OS cannot boot from a native 4K-sector drive, so check before you flash:
lsblk -o NAME,MODEL,LOG-SEC,PHY-SEC
If LOG-SEC reads 4096 on the target disk, use a different disk. Treat all of this as a floor. A 2 GB Pi 4 runs Home Assistant fine and leaves no room for whatever you add in month three.
How much hardware does each workload need?
Size for the heaviest thing you plan to run, not for Home Assistant. Automations plus a Zigbee or Z-Wave radio fit a Green or a Pi. A stack of apps wants 4 to 8 GB of RAM. Frigate camera detection and Whisper speech recognition are the two workloads that justify an x86 mini PC.
The table is an editorial rule of thumb drawn from the docs cited throughout, not a benchmark:
| Workload | CPU | RAM | Storage | Sensible host |
|---|---|---|---|---|
| Core, automations, one USB radio | Any 64-bit, 2+ cores | 2 to 4 GB | 32 GB eMMC or SSD | Green, Pi 4 or 5 on SSD |
| Plus apps: Mosquitto, Zigbee2MQTT, Z-Wave JS, ESPHome | Quad-core; faster helps compiles | 4 to 8 GB | 64 GB SSD or more | Pi 5, N100 |
| Voice with Speech-to-Phrase | Green-class is enough | 4 GB | No change | Green, Pi 4 or 5 |
| Voice with Whisper | Modern x86 | 8 GB or more | No change | N100 or better |
| Frigate object detection | Intel iGPU via OpenVINO | 16 GB | Separate disk for recordings | N100 class |
| HA OS VM beside other services | 4 cores with virtualization | 16 GB | NVMe, NAS for bulk | N100, Core i3 or i5 |
Apps are what the docs used to call add-ons. The ESPHome builder compiles firmware on the host, so if you plan to build your own ESP32 sensors, CPU speed is what you feel every time you flash a node.
Storage is the part that actually fails
Home Assistant boxes rarely die of CPU starvation. They die of storage wear, usually on a microSD card. The recorder integration writes every state change to SQLite, committing every 5 seconds and keeping 10 days of history by default. For a Pi on an SD card, the docs suggest raising the commit interval to 30 seconds, excluding noisy entities, or moving to external storage. If you are stuck on a card for now, do the first two:
# configuration.yaml
recorder:
commit_interval: 30
purge_keep_days: 10
exclude:
entity_globs:
- sensor.*_linkquality
- sensor.*_rssi
The real fix is an SSD. Home Assistant OS can move its data to an external disk, with two documented catches: the data disk must be larger than the boot disk, and a USB SSD can draw enough power to need a stronger supply on a Pi.
Do not reach for MariaDB as a hardware fix. The recorder docs call SQLite the default and recommended engine and say migrating history between engines is not supported, so switching buys you an empty history, not a longer-lived card.
Radios are hardware too, and they outlive the box
Keep the coordinator when you replace the host, because re-pairing a mesh is the expensive part of any migration. The ZHA documentation names the Connect ZBT-2 as the adapter to get for a new Zigbee network, with Silicon Labs EZSP and Texas Instruments radios as tested alternatives. The Zigbee coordinator stick comparison covers the field.
Placement beats chipset. The same docs say to use a USB 2.0 port rather than USB 3.x, run a shielded extension cable, and put the coordinator near the middle of the house, away from power supplies. On a mini PC, check which ports are USB 2.0 before plugging anything in; if none are, the docs suggest a powered USB 2.0 hub. When devices drop off weeks after a clean install, placement is the first suspect.
In a VM, the radio needs USB passthrough. The VM guide shows attaching a Zigbee dongle under KVM by bus and device ID. Point the integration at its /dev/serial/by-id/ path, not /dev/ttyUSB0, which can move between reboots. Which mesh you build matters more than any of this; Zigbee vs Z-Wave vs Thread works through it.
Cameras and local voice: where an N100 earns its keep
Frigate. The Frigate hardware guide lists the Intel N100 at roughly 15 ms per inference with MobileNetV2 under OpenVINO, though it can run only one detector instance. The guide’s current favorite mini PC is the Beelink EQ13, for its N100 and dual NICs that let cameras sit on a private network with no internet access, and it says to avoid the Beelink EQ14 for now over known compatibility issues. It no longer recommends the Google Coral for new installs except where power is very tight, and it does not recommend Wi-Fi cameras. Decoding video streams is CPU-heavy and a Coral never helped with that, which is why an Intel iGPU handling both decode and detection is the sweet spot.
Voice. The local voice docs put numbers on the gap. Speech-to-Phrase transcribes in under a second even on a Green or Pi 4. Whisper takes around 8 seconds per command on a Pi 4 and under a second on an Intel NUC. If a fixed set of commands is enough, the Green copes. If you want free-form speech, buy x86.
The chip. Intel’s spec sheet lists the N100 at four cores and four threads, a 6 W TDP, UHD Graphics with 24 execution units, and a 16 GB memory maximum on a single channel. That ceiling is why the table stops at 16 GB. A plan that needs more has outgrown the class, so step up to a Core i3 or i5 mini PC. A local LLM is a different machine altogether.
Power, UPS and backups: the month-nine problems
The Green is listed at about 1.7 W idle and 3 W under load. ServeTheHome measured a fanless N100 appliance at 10.5 to 12 W idle and 22 to 23 W peak. That gap runs all year, so do not buy headroom for a workload you never deploy.
The NUT integration can watch a UPS but needs a NUT server to talk to. If the NAS already owns the UPS over USB and shares it as a network UPS server, point Home Assistant at that.
For backups, Home Assistant OS 10.2 and later can mount an NFS or SMB 2.1+ share as a backup target. The backup docs recommend daily backups, a copy on another system and ideally one off-site, and keeping the emergency kit, without which encrypted backups cannot be restored. The N100-plus-NAS version: daily backups to an SMB share, the NAS replicating off-site, the kit in your password manager.
Then the drill everyone skips: once a quarter, restore the latest backup into a throwaway Home Assistant OS VM, confirm automations and dashboards load, and delete it. That backup is also your migration path the day you outgrow a Pi.
So which should you buy?
Buy a Green plus a radio if you want automations and a mesh, no cameras, and the lowest power bill. Use a Pi 4 or 5 you already own, on an SSD, if budget is the point. Buy an N100 with 16 GB and NVMe if Frigate, Whisper or other services are in the plan, and run Home Assistant OS as a VM on it.
The install method comparison covers VM versus Container. Do not buy a faster CPU for Home Assistant alone; it will never use it. Most of us buy the N100 first and find the workload later anyway. That works. Just budget the watts.
FAQ
is a raspberry pi good enough for home assistant
Yes, a Raspberry Pi 4 or 5 with at least 2 GB of RAM is officially supported and handles core automations plus a Zigbee or Z-Wave radio. Run it from an SSD rather than microSD, because recorder writes wear cards out. Skip it for Whisper voice, which takes around 8 seconds per command on a Pi 4.
is an intel n100 good for home assistant
Yes, an Intel N100 mini PC is the most sensible x86 host for Home Assistant. It has four cores, a 6 W TDP and an integrated GPU that Frigate uses through OpenVINO at roughly 15 ms per inference. Intel lists 16 GB as its memory ceiling, so buy that configuration and run Home Assistant OS as a VM.
can i run home assistant on my nas
Yes, if the NAS can run virtual machines: import the Home Assistant OS image and give it at least 2 GB of RAM and 2 vCPUs, the documented VM minimum. The hard part is the radio. Pass the USB coordinator through to the VM and move it out of the cupboard on a shielded extension cable.
is home assistant green worth it
Home Assistant Green is worth it if you want a hub rather than a project. At $199 MSRP it brings a quad-core Arm CPU, 4 GB of RAM, 32 GB of eMMC and roughly 1.7 W idle draw, with nothing to assemble. It has no radio and no headroom for Frigate or Whisper, so budget a coordinator separately.
Related across the network
- Matter vs Zigbee vs Z-Wave: Controllers, Radios and Bridges — matterhomelab.com
- Best Mini PC for Proxmox: 3 Hardware Tiers (2026) — minilabhq.com