All posts 中文版 →

The PC You Never Turn Off Is Still Burning Power at 3 AM: Cut an Always-On PC's Bill Without Letting It Sleep

There's a PC in the corner of the room that hasn't been switched off in a month. It's seeding, streaming Plex to the family, recording the security cameras, or just sitting there so you can RDP in from anywhere. It's 3 AM, nobody's at the desk, and it's still lit up and humming away.

You probably gave up on saving power on that one a long time ago — because it can't sleep. Every power-saving guide on the internet ends with "let it sleep," which makes all of them useless to you. But here's the twist: "can't sleep" and "can't save" are two different things. A PC that's never allowed to nap can still have a real chunk shaved off its power bill.

This is the part where you learn how — how to cut what that machine draws without ever letting it doze off. There's a hands-on way, and if you'd rather not babysit it, a way to automate the whole thing.

The waste profile of an always-on box

Look at what the machine actually does at 4 AM. Seeding is a trickle of I/O. A media server between streams is essentially idle. Camera recording is constant but light. Most always-on workloads need a few percent of the machine's capacity, most of the time — yet the default Balanced plan keeps the CPU boost-ready, the fans on active duty, and a discrete GPU awake at desktop clocks.

The most common homelab pattern makes this worse: the always-on box is yesterday's gaming desktop. Hardware picked for peak performance, now doing a job a NUC could handle, idling at 60–100 W around the clock. The overnight hours — say 01:00 to 08:00 — are the purest waste: nobody is streaming, nobody is at the desk, and the downloads genuinely do not care whether the CPU can boost to 5 GHz.

It's like buying a big-engine truck for the occasional heavy haul, then using it only for a daily trip to the corner store — engine roaring at full revs the whole way. Overnight seeding and a media server nobody's watching need about a bicycle's worth of effort, yet the PC idles all night at "truck, foot to the floor." The fuel (power) burns; not one extra parcel (work) gets delivered.

The knobs that cut power while staying awake

You can do all of this by hand today. The recipes, for the DIY-inclined:

  • Never sleep, but kill the display fast. powercfg /change standby-timeout-ac 0 disables sleep; powercfg /change monitor-timeout-ac 5 turns the screen off after 5 minutes. A monitor (or a GPU driving one) is power you don't need on a headless box.
  • Cap the CPU's maximum state. powercfg /setacvalueindex scheme_current sub_processor PROCTHROTTLEMAX 50 followed by powercfg /setactive scheme_current caps the processor at 50% of its rated speed — turbo is gone entirely, and the chip tops out around half its base clock. Trickle workloads won't notice; power and heat under load drop.
  • Switch cooling policy to passive. The same sub_processor group has a cooling policy setting (SYSCOOLPOL) — passive slows the CPU before spinning fans up. Caveat: this only applies where Windows actually controls the fans (mostly OEM boxes and laptops); on a self-built desktop, the motherboard's BIOS fan curve is in charge, and the CPU/GPU caps are what actually quiet things down.
  • Power-limit the GPU. On NVIDIA, nvidia-smi -pl 120 (admin shell) caps the card's power draw. Note it resets on reboot, so it needs to run again at startup.
"Cap the CPU at 50%" sounds scary, but it's just a cruise-control speed limit on an open road: you still reach the destination fine, the car just stops flooring it to 5,000 RPM every time a gap opens up. A trickle of downloads and standby work never feels that limit — but the fuel use (power) and the engine heat (temperature) drop right away.

One caution: if your server does real work at night — a transcode queue, backups — cap less aggressively, or schedule around those windows.

The problem: all of those settings are static

Here's where the DIY route gets annoying. At 8 PM you sit down at this same machine to actually use it — and it's still capped at 50% with passive cooling, because that's what you set. So you flip everything back. Later you forget to re-apply it. Two weeks later, the box is back to full power 24/7 and you've stopped bothering.

The honest DIY fix is two batch scripts and Task Scheduler: one job at 01:00 applying the caps, one at 08:00 removing them, plus a startup task to re-apply the GPU limit. This genuinely works, and if you enjoy maintaining it, you have everything you need. Its limits are the usual ones: it doesn't react to whether you happen to be using the machine, it silently breaks when a Windows update resets a setting, and you never find out what any of it actually saved.

Batch scripts on a timer are like a cheap plug-in timer switch in the living room: it does flip on and off on schedule, but it's blind. You sit down at 8 PM to actually use the machine and it throttles you anyway, because it can't see that you're there. And the day a Windows update wipes your setting, it won't say a word — it just quietly stops working.

Automating the night shift

This exact pattern is what PowerDoze was built around. You define power modes — bundles of CPU limit, cooling policy, screen timeout, and NVIDIA power limit — and schedule rules that switch between them by time of day: Balanced during the day, a capped low-power mode from 01:00 to 08:00. Your server apps go on a keep-awake whitelist, so no rule, mode, or future misconfiguration can ever put the box to sleep mid-seed. The GPU limit is re-applied automatically, updates and reboots included.

And because the obvious question about all of this is "did it actually save anything?", there's an analytics page (part of Pro) tracking estimated watts, kWh, and cost over time — the before/after for your specific machine, not a hypothetical.

The schedule rules, power modes, whitelist, and monitoring are free, no account required. Everything runs locally; nothing about your machine leaves it.

Who doesn't need this

If your always-on hardware is a Raspberry Pi, a NUC, or a purpose-built NAS drawing 10–20 W, you already solved this problem with hardware — an article about shaving desktop idle power has nothing for you. This is for the (very common) other case: a repurposed desktop running Windows because that's what the software needs, or that's what was in the closet. That machine has 20–40 W of overnight fat to trim, and it can be trimmed without ever letting it sleep.

Download PowerDoze free →

Nisonxi

I'm Nisonxi, the developer behind PowerDoze. I built it because my own Windows desktop idled all day at near-full power and no existing tool could read the situation and switch on its own. This blog is my notebook from the journey.

About the author and PowerDoze →