Backing up Home Assistant off the Pi: the SD card is your single point of failure
Last reviewed: 21 July 2026
Your whole Home Assistant setup, every automation, every dashboard, months of tuning, usually lives on one cheap SD card in a Raspberry Pi. SD cards die without warning, and when this one goes, it takes the lot. A proper Home Assistant backup, kept somewhere off the Pi, is the difference between a five-minute restore and a weekend of rebuilding from memory.
Why the SD card is the weak point
A Home Assistant Pi writes to its SD card constantly. The recorder database logs state changes every few seconds, all day, and that constant write load is exactly what wears flash memory out. Cards don't usually warn you either: it runs fine for a year, then one morning the Pi won't boot and the card is unreadable. No config, no history, no automations, and you're rebuilding from memory.
The card is a single point of failure. The fix isn't a better card, it's making sure a full copy of everything already lives somewhere the card can't take down with it.
What a real backup actually is
Home Assistant's built-in backup makes a full snapshot: your config, your add-ons, and the recorder database. Two things people get wrong:
- It's bigger than you expect. The recorder database alone is often several gigabytes, because it's been logging every sensor and every state change for months. A full snapshot is not a tiny file. If yours is enormous, that's usually a sign the recorder is logging chatty devices it doesn't need to. That's worth trimming, but it's a separate job.
- A snapshot sitting on the same SD card is not a backup. If the card dies, the snapshot dies with it. A backup only counts once a copy is somewhere else entirely.
So the job has three parts: schedule a full snapshot, copy it off the Pi, and prove you can actually restore it.
Step 1: schedule a full snapshot
Open Settings, then System, then Backups, create a full backup, and set it to run automatically, daily or weekly depending on how often you change things. Keep the last few and let older ones roll off so you don't fill the card.
That gets you a current snapshot, but it's still on the Pi. That's only half done.
Step 2: get it off the Pi
This is the part that matters. Pick at least one destination that isn't the Pi:
- A NAS or another machine on your network. A Samba Backup or a network-share add-on can push each new snapshot to it automatically. Set and forget.
- Another computer. Even a scheduled copy to a desktop or a spare drive is fine. The point is a second physical device.
- Cloud storage, if you're comfortable with that. Handy because it survives the house burning down, not just the card dying.
One off-Pi copy is the difference between a five-minute restore and a weekend of rebuilding. Two destinations is better. The rule of thumb: your data doesn't really exist until it's in two places.
Step 3: verify it (a backup you've never restored is a guess)
This is the step everyone skips, and it's the one that bites. A backup file you have never restored is not a backup, it's a hope. Corrupt snapshots, half-finished uploads and add-ons that didn't get included all look fine right up until the day you need them.
Test it properly at least once:
- Flash a spare SD card, do a fresh Home Assistant install, and restore your latest snapshot onto it. Don't touch your live card.
- Check the important stuff came back: automations, dashboards, add-on settings, and a chunk of history.
Once you've done a real restore and watched it work, you actually know your backup is good. Do it again after any big change to your setup.
Bonus: when the Pi is "unreachable", ping it before you blame the network
Half the "Home Assistant is down!" panics aren't a backup problem at all. The Pi's fine and something in the network is confusing you. Diagnose from the bottom up. Before you touch the router, restart the VPN, or assume the worst, open a terminal and ping the Pi's IP address.
Read the reply:
- "Network is unreachable" or "no route to host": that's a layer-2 problem. Your machine can't even find a path to the Pi. That points at a dead Pi, a dead link, or the wrong subnet, not your router config and not your VPN.
- Ping times out but a route exists: the Pi is on the network but not answering. More likely the Pi has locked up or Home Assistant has fallen over than a wiring fault.
- Ping works but the dashboard won't load: the network's fine, it's the Home Assistant service. Now it's worth restarting HA.
Working bottom-up (is the link there? does it answer? is the app running?) saves you rebooting the router for twenty minutes when the real problem is a Pi that quietly died. Possibly because the SD card just failed, which is exactly why the backup above matters.
The short version
The SD card in your Home Assistant Pi will fail eventually, and it takes everything with it. Schedule a full snapshot (it'll be several GB thanks to the recorder database), copy it off the Pi to a NAS, another machine or the cloud, and do one real restore onto a spare card so you know it works. And when the Pi goes "unreachable", ping it first: a "network unreachable" is a dead Pi or link, not a router or VPN problem, so diagnose bottom-up.
General guidance based on how we run our own Home Assistant boxes; your add-ons and network will differ, so test your own restore before you rely on it.
Want your Home Assistant backed up properly and running on hardware that won't drop the lot when a card dies? That's exactly the kind of setup we do. No lock-in, no upsell to gear you don't need. Tell us what you're running and we'll make it solid.