Ask what woke it last
Run the command right after the machine has woken up on its own. It reports a device or a timer, and the reason string usually names the owner.
powercfg /lastwake
Sleeping PCs wake for network cards, update timers and stray devices. Three powercfg commands name the culprit, and the device tree lets you disarm it.
**powercfg /lastwake** names whatever woke the machine last, **/waketimers** lists armed timers and **/devicequery wake_armed** shows which hardware may wake it. Disarm what you do not need.
Run the command right after the machine has woken up on its own. It reports a device or a timer, and the reason string usually names the owner.
powercfg /lastwake
Timers are the usual suspect for a 3 a.m. wake-up - Windows Update, a backup tool or a cloud client.
powercfg /waketimers
The list contains network adapters, mice, keyboards and sometimes a USB hub. Everything that can wake the PC is a candidate.
powercfg /devicequery wake_armed
Open Device Manager, find the device, open **Properties > Power Management** and untick **Allow this device to wake the computer**. The powercfg command does the same from the shell.
powercfg /devicedisablewake "Intel(R) Ethernet Connection I219-V"
Set **Active hours** in Windows Update so maintenance does not run while you sleep, and check the update orchestrator tasks if the wake-up is exactly on the hour.
Settings > Windows Update > Advanced options > Active hours
The sleep study writes an HTML report with wake sources, durations and the battery drain per session. Use it when the quick commands keep pointing at 'unknown'.
powercfg /sleepstudy
powercfg /energy
A network adapter with Wake-on-LAN or a USB device is the cause. Disarm both and test again the same night.
The wake was a power event or came from shutdown with fast startup. Check the Event Viewer under System for Kernel-Power entries.
A scheduled task, usually maintenance or a backup. Check Task Scheduler for tasks with 'Wake the computer to run this task'.
That is a firmware setting - Wake on LAN, USB wake or an RTC alarm in the BIOS. The Windows commands cannot see it.
Only if you rely on remote wake. Everything else keeps working.
Mostly. Hibernate does not run maintenance timers, but a device wake can still bring the machine back.
Re-enable the wake sources you disabled with **powercfg /deviceenablewake "<device>"** or the same checkbox in Device Manager, and restore the previous Active hours.
Free · no account needed · tracks your progress