My home server survived three years and exactly one power event that actually mattered. It was not a dramatic outage. It was a two-second brownout during a summer storm, the kind where the lights dip and the microwave clock resets, and it was long enough to hard-cut a NAS that was mid-write to a ZFS pool. The pool recovered because ZFS is built for exactly that, but I spent an anxious hour running a scrub and reading forum posts, and at the end of it I did the obvious thing I should have done on day one. I bought a UPS.
This is the guide I wish I had read before that storm. Not a spec sheet, and not a fear-driven pitch to buy the biggest battery you can find, but the practical version: how to size a UPS for a NAS or a small home server, why one spec matters more than the rest, and how to wire the thing so it does its real job automatically instead of just sitting there as an expensive surge protector. The payoff at the end is monitoring it all in Home Assistant, so the same dashboard that runs my house also tells me the instant the grid hiccups.
What a UPS Is Actually For
Let me kill the biggest misconception first, because it changes how you shop. A UPS for a home lab is not a generator. It is not there to keep your server running through a two-hour outage while you work. The battery in a reasonably priced consumer UPS holds a NAS up for maybe five to fifteen minutes, and that is by design. Its job is twofold, and neither part is about long runtime.
The first job is riding out the short stuff. The overwhelming majority of power events that hurt a home server are not full outages. They are brownouts, flickers, and the half-second cuts when your utility switches feeds or a transformer down the street trips. A UPS smooths every one of those into a non-event. The load never even knows it happened.
The second job is the graceful shutdown. When there is a real outage, one that outlasts the battery, the UPS is supposed to tell your NAS to shut itself down cleanly while there is still charge left, so the machine powers off like you pressed the button instead of like someone pulled the cord. That single feature is the difference between a UPS and a big surge strip, and it is the part most people skip when they buy the cheapest unit and leave the USB cable in the box.
Step 0: Measure Your Real Load Before You Buy Anything
The most common mistake I see is buying a UPS sized for a fantasy load. People imagine their server pulls hundreds of watts and buy a 2200VA tower that weighs forty pounds. Then they discover their actual draw is 90 watts and they have spent triple what they needed on runtime they will never use.
So before you shop, measure. Plug your NAS and server into a Kill A Watt meter for a day and watch the real numbers. A four-bay NAS with spinning drives and a mini PC or small server usually lands between 60 and 120 watts under normal use, with brief spikes when disks spin up from idle. Write down the peak you actually see. That measured peak, not a guess, is what sizes your UPS.
The rule I use: pick a UPS whose continuous watt rating is roughly double your measured peak load. Doubling keeps the unit loafing along at half capacity, where its runtime estimates are honest and its battery ages slowly, instead of running near its limit where efficiency drops and heat climbs. For a typical 100-watt NAS-plus-server setup, that points squarely at a 1000VA to 1500VA class unit.
The One Spec You Cannot Compromise On: Sine Wave
Here is the spec that matters more than capacity, brand, or price: the shape of the output waveform when the UPS is running on battery. You want pure sine wave. Not simulated, not stepped approximated, pure.
The reason is the power supplies in modern gear. NAS units, mini PCs, and anything desktop-class use active power factor correction supplies, and those supplies expect a clean sine wave. Feed them the blocky stepped waveform that budget UPS units produce on battery, and at best they run hot and buzz, at worst they refuse to switch to battery smoothly and drop the load, which is the exact failure you bought the UPS to prevent. I have watched a cheap stepped-sine unit fail to catch a PFC supply during a self-test, and that was the end of my patience for saving twenty dollars there.
The good news is the price gap has nearly closed. At the 1500VA size, a true sine wave unit costs only a little more than a stepped one, and it is the single easiest way to make sure the UPS does its job on the day it matters.
The Three Units I Would Actually Buy
Once you have measured your load and committed to sine wave output, the field narrows fast. These are the three I recommend, sorted by where they fit rather than by a made-up ranking. All three are true sine wave, all three speak to NUT over USB, and all three sit in the 1500VA class that covers a NAS plus a server with room to spare.
The value default: CyberPower CP1500PFCLCD. This is the unit I point most people to first. It is a 1500VA, 900-watt pure sine wave line-interactive UPS with a clear LCD showing load and runtime, and it works flawlessly with NUT on Linux, TrueNAS, and Unraid. For a typical home lab it delivers ten to fifteen minutes of runtime, which is five times what you need for a clean shutdown, and it does it at a price that has made it the default recommendation in home lab threads for years. If you want one unit and no agonizing, this is it.
The build-quality pick: APC Back-UPS Pro BR1500MS. APC is the name that shows up in every thread from people running gear from the early 2000s that still works. The Back-UPS Pro line is their prosumer tier, pure sine wave, with replaceable batteries and a reputation for lasting long enough that you will replace the battery once or twice before you replace the unit. Their PowerChute software is fine, but the reason to buy APC in a home lab is that it also works cleanly with NUT and the hardware simply endures. Pay a little more, keep it a lot longer.
The step up to real serviceability: Eaton 5S1500LCD. Eaton is the enterprise name that also sells to us. The 5S is their entry line-interactive tower, pure sine wave, 1500VA, and it earns its spot for two reasons. Its NUT support is first-class, since Eaton contributes to NUT directly, and its build leans toward the serviceable, long-life end of the market. If you are the kind of person who wants the same brand in your closet that runs in a data center, and you want the tightest NUT integration you can get without going rackmount, this is the one.
Whichever you pick, the buying decision is not really between these three. They are all good. The decision that actually matters is the next one, whether you bother to wire it up correctly.
The Part Everyone Skips: Wire It to NUT
A UPS you plug in and walk away from is a surge protector with a battery. The feature that makes it a UPS is automatic shutdown, and that requires software. On a home lab that software is almost always NUT, Network UPS Tools.
The setup is simpler than its reputation. Connect the UPS to your NAS or server with the bundled USB cable. On TrueNAS, Synology, and Unraid, there is a UPS settings page where you point the OS at the connected unit and set a battery threshold, and you are done. On plain Linux, you install the NUT package, run a short config that names your UPS and sets a low-battery shutdown point, and start the service. From that moment the UPS is doing its real job: on a long outage, when the battery drops to your threshold, NUT tells the machine to shut down cleanly, and everything powers back up on its own when the grid returns.
If you run more than one machine, NUT has a client and server model built in. One box connects to the UPS over USB and runs the NUT server. The others run NUT clients that watch that server over the network and shut themselves down when it says to. So a single UPS with one USB cable can gracefully power down a whole shelf of gear. That is the moment a home lab crosses from hoping the power stays on to genuinely not caring when it does not.
The Payoff: Monitor It in Home Assistant
Here is the part that makes the whole project feel finished. Home Assistant has a native NUT integration, and pointing it at the same NUT server your NAS already uses takes about two minutes. Once connected, you get the UPS battery percentage, current load in watts, estimated runtime, and an on-battery binary sensor, all as normal Home Assistant entities.
That unlocks the good stuff. I have an automation that fires a phone notification the instant the on-battery sensor flips, so I know the power dropped before I know it any other way. I log the load sensor so I can see my real power draw over time, which is how I confirmed my server was pulling far less than I feared. And because it is all in Home Assistant, the UPS becomes part of the same house-wide system as my energy monitoring and everything else, instead of a separate silo with its own forgotten app. The battery watches the server, and the house watches the battery.
The Bottom Line
A UPS is the cheapest insurance in a home lab, and most people either skip it or buy it wrong. Do it right and it is a one-evening project that removes an entire category of worry. Measure your real draw with a Kill A Watt first, buy a pure sine wave unit rated for roughly double that load, and do not compromise on the waveform. Any of the three I recommend will serve a NAS and a server well: the CyberPower CP1500PFCLCD is the value default, the APC Back-UPS Pro BR1500MS is the buy-it-for-a-decade pick, and the Eaton 5S1500LCD is the enterprise-grade NUT integration step up.
Then do the part that actually matters. Plug in the USB cable, set up NUT so the shutdown is automatic, and add the Home Assistant NUT integration so you can see the grid hiccup in real time. The battery is not the point. The clean, automatic shutdown is the point, and a UPS that is not wired for it is just a heavy surge strip. Wire it up, and the next summer storm becomes a line in a log instead of an anxious hour running a scrub.