← 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. Run powercfg /setacvalueindex scheme_current sub_processor PROCTHROTTLEMAX 50, then powercfg /setactive scheme_current. Together they cap 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 that 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 won't notice or tell you if another program switches the power plan in between; 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 if someone switches off the lamp plugged into it halfway through the evening, the timer never knows — it just keeps clicking through its schedule.

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 from 08:00 to 01:00, 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 rides along with the mode. Both rules run every day and their windows meet, so one of them is always in effect — which means it gets re-applied at startup too, 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.

Frequently asked questions

Does turning off the display stop my server apps?

Turning off the display only stops showing a picture; the PC itself keeps running, so Plex, seeding, camera recording, and Windows Remote Desktop all carry on. Sleep is what stops them, and the command that sets standby-timeout-ac to 0 already turned sleep off.

Will a laptop keep running with the lid closed?

Not necessarily. Closing the lid has its own setting, separate from the sleep timeout, and laptops usually sleep on lid close by default. To keep it running, open Power Options in Control Panel, click “Choose what closing the lid does” on the left, set the plugged-in option to “Do nothing”, and click “Save changes”.

Do these settings still apply when a laptop runs on battery?

No. Every powercfg command in this guide changes the plugged-in values, and Windows uses a separate set on battery; to match them, run the commands again with -ac changed to -dc and setacvalueindex changed to setdcvalueindex.

Do these settings survive a reboot?

The powercfg settings are saved in the current power plan, so they survive a reboot; the GPU power limit set with nvidia-smi is the one that resets. If you later switch to a different power plan, that plan uses its own values, so you'd need to set them again there.

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.

Rather not maintain batch files and scheduled tasks yourself? PowerDoze's schedule rules and power modes are free: set them up once, and this machine switches to its low-power settings every night and back every morning.

Get PowerDoze from the Microsoft StoreGet PowerDoze from the Microsoft Store

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 →