Home Assistant is free, open-source smart home software that runs on your own home server and acts as the central brain for your smart devices — instead of each brand's app and cloud service running the show separately. It supports over a thousand device integrations, which means most of the smart bulbs, plugs, sensors, and thermostats you already own can very likely be brought into one unified system that keeps working even if a manufacturer's cloud service goes down or changes its terms.

Advertisement placeholder Reserved for a Google AdSense unit once the site is approved. No ad code is loaded yet.

Why run your own smart home hub instead of the manufacturer's app

What you need before starting

Step 1: Install Home Assistant

The beginner-recommended installation method is Home Assistant OS, a purpose-built operating system that includes Home Assistant plus its add-on system out of the box. If you're running Proxmox or another virtualization platform (see our server OS comparison), Home Assistant OS installs cleanly as its own virtual machine, which is the setup we recommend for beginners because it keeps automatic updates and the add-on store fully functional. If you'd rather run it as a Docker container alongside other apps, that works too, but you'll manage add-ons and updates more manually.

Installation itself is straightforward: download the Home Assistant OS image, write it to a virtual machine or a physical boot drive, boot it, and after a few minutes it will be reachable at homeassistant.local:8123 from any browser on your network.

Step 2: Complete the onboarding wizard

On first visit, Home Assistant walks you through creating an admin account, setting your home's location (used for sunrise/sunset-based automations), and naming your home. It will also scan your network for devices it can already see and offer to set them up — don't worry about configuring everything at this stage, just get through onboarding.

Step 3: Add your first device

In Home Assistant, go to Settings → Devices & Services → Add Integration, and search for your device's brand (for example, "TP-Link Kasa," "Philips Hue," or "Govee"). Most popular brands have an official or community-built integration. Some connect directly over your local network with no extra hardware; others (like Hue) need their own hub, which Home Assistant then talks to. Follow the prompts — most integrations auto-discover devices already on your network and just need you to confirm and name them.

Prefer devices with local control when you can. Not every smart device works without the manufacturer's cloud — some genuinely require it even inside Home Assistant. When buying new devices for a Home Assistant setup, check whether a device supports local control (common with Zigbee, Z-Wave, and many Wi-Fi devices from brands like Shelly and TP-Link Kasa) versus cloud-only control, since local devices keep working during an internet outage and respond faster.

Step 4: Build one real automation

This is where Home Assistant starts to feel worth it. Go to Settings → Automations & Scenes → Create Automation, and build something simple and genuinely useful as your first one, for example:

The visual automation editor lets you build this entirely by clicking through dropdowns — no code required. Once it's saved, it runs automatically in the background from then on. This single automation demonstrates the core value proposition: combining a time trigger, a location-based condition, and a device action that no single manufacturer's app offers together.

Advertisement placeholder Reserved for a Google AdSense unit once the site is approved. No ad code is loaded yet.

Step 5: Set up the mobile app

Install the official Home Assistant Companion app (iOS and Android) and log in with your server's address. This gives you a dashboard on your phone, notifications from automations, and — importantly — turns your phone into a presence sensor that other automations (like the one above) can use.

Common beginner questions

Do I need a Zigbee or Z-Wave hub?

Only if you're using Zigbee or Z-Wave devices (common for battery-powered sensors and many light bulbs, since these protocols use far less power than Wi-Fi). A small USB Zigbee or Z-Wave adapter plugged into your server, paired with Home Assistant's built-in coordinator software, works well for a starter setup — you don't need to buy a separate branded hub.

Will this replace Google Home or Alexa?

Not entirely on its own, but Home Assistant integrates with both, so you can keep using voice control through Google Home or Alexa while Home Assistant handles the actual automation logic behind the scenes.

Is it hard to maintain?

Once your core devices and a few automations are set up, Home Assistant runs unattended. You'll get periodic update notifications, which are optional to install right away — most people update every few weeks rather than immediately.

What to add next

After your first automation, natural next steps include adding a dashboard for your household, connecting more devices gradually rather than all at once, and exploring the Home Assistant Community Store (HACS) for additional integrations not in the default library. We'll cover ESPHome (for building your own sensors) and specific device recommendations in upcoming guides.

HL
HomeLab Starter Team
We write hands-on, beginner-first guides to home servers and self-hosting. See our About page for more on how we test and choose recommendations.