Quick fix: Set a Group Policy maintenance window via Computer Configuration → Administrative Templates → Windows Components → Windows Update → Manage end user experience → Configure Automatic Maintenance Activation Boundary. The boundary is preserved across cumulative updates; Active Hours alone is not.
You configured Active Hours to run from 7 AM to 11 PM, expecting Windows to install updates and restart only overnight. The first month worked. After a cumulative update, Active Hours reverted to a wider window or to “automatically based on activity,” and Windows restarted at 9 AM on a Tuesday with your work in progress. Active Hours is a hint that Windows can override; a proper maintenance window enforced via policy isn’t.
Affects: Windows 11 (any edition) with Windows Update enabled.
Fix time: 10 minutes.
Why Active Hours doesn’t guarantee anything
Active Hours is a per-user preference. Windows respects it most of the time, but several scenarios override it: the “deadline for update installation” expired, a security update is marked mandatory, the user previously scheduled the restart, or Microsoft’s telemetry decided the system is “available.” The Configure Automatic Maintenance policy, by contrast, is a hard limit Windows respects.
Method 1: Set the maintenance window via Group Policy
- Open
gpedit.msc(Pro/Enterprise). - Navigate to Computer Configuration → Administrative Templates → Windows Components → Maintenance Scheduler.
- Open Automatic Maintenance Activation Boundary. Set to Enabled. Set the start time (e.g., 02:00).
- Open Automatic Maintenance Random Delay. Set the random window (e.g., 04:00 for 4 hours of randomization).
- Open Automatic Maintenance WakeUp Policy. Set to Enabled.
- Run
gpupdate /force. - The PC now runs maintenance (including update installs and restarts) within your configured window only.
Method 2: Configure Automatic Updates with explicit schedule
- In gpedit.msc, navigate to Windows Update → Manage end user experience → Configure Automatic Updates.
- Set to Enabled. Set option to 4 – Auto download and schedule the install.
- Set Schedule install day to your preferred day. Schedule install time to your preferred hour.
- Also enable No auto-restart with logged on users for scheduled automatic updates installations = Disabled (so the scheduled restart actually happens).
- Apply.
Method 3: Registry equivalent for Home edition
- Open regedit, navigate to
HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate\AU. - Create DWORDs: AUOptions=4, ScheduledInstallDay=0 (any day), ScheduledInstallTime=2 (2 AM).
- Create DWORD NoAutoRebootWithLoggedOnUsers=0 (allow reboot).
- For maintenance boundary:
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Schedule\Maintenance— set ActivationBoundary (REG_SZ) like 2025-01-01T02:00:00, RandomDelay as PT4H. - Reboot.
How to verify the fix worked
- Run
gpresult /h gpresult.htmland check for the maintenance policy. - Open Task Scheduler → \Microsoft\Windows\TaskScheduler\Regular Maintenance. The Next Run Time matches your boundary.
- An update arrives. Restart happens within the maintenance window, not during work hours.
If none of these work
If updates still restart out-of-window, check for an Intune or WSUS policy that overrides local GPO. Run gpresult /h gpresult.html and find which policy is winning. For managed devices, coordinate with IT. For laptops on battery, the maintenance task may skip when conditions aren’t met (AC power, idle) — ensure the laptop is plugged in during the maintenance window.
Bottom line: Active Hours is a hint, Automatic Maintenance Boundary is a limit. Set the latter via GPO or registry for a hard restart window that survives cumulative updates.