Configure maintenance windows for automatic updates
Jump to overview

Policy overview

Key metadata and intent for this policy.

Computer
Category
Windows Components > Windows Update > Manage end user experience
Supported on
At least Windows 11 Version 24H2

Supported OS tags: Windows10, Windows10RT, Windows11, WindowsServer2016

Enable this policy to specify repeatable maintenance windows for the device to perform specified update actions. When this policy is enabled, Windows Update will only perform the specified update action during the configured maintenance window. Specified update actions outside maintenance window will be deferred until the next maintenance window begins. • Update Actions: Select which update actions are only allowed during maintenance window. If an update action is not selected, that action can happen outside of maintenance window. - Download, install, and restart: Complete update cycle including download, installation, and system restart - Install and restart: Install already downloaded updates and restart the device - Restart only: Only perform a system restart for pending updates • Basic Schedule Configuration: - Start Date: Specify the initial date when the first maintenance window begins (format: yyyy-mm-dd, example: 2025-10-30) * Start Date field only takes effect if Recurring schedule is set to “None” - Start Time: Set the time when the maintenance window starts (format: hh:mm, example: 23:30 for 11:30 PM) - Duration: Define how long each maintenance window lasts in hours (example: 2 for a 2-hour window) • Recurring Schedule Options: - No repeat: One-time maintenance window on the specified start date only - Daily: Maintenance window will be repeated every day - Weekly: Maintenance window will be repeated weekly on selected days of the week - Monthly: Maintenance window will be repeated monthly on a specific day • Weekly Schedule Settings (when Weekly is selected): - Day of the week Selection: Choose which days of the week the maintenance window occurs: * Sunday through Saturday: Check boxes to select specific day(s) of the week for the maintenance window • Monthly Schedule Settings (when Monthly is selected): - Monthly Schedule Type: * Date-based: Maintenance window occurs on a specific day of the month (example: 15th day of each month) * Week-based: Maintenance window occurs on a specific weekday occurrence within the month (example: 2nd Tuesday of each month) * Last day of the month: Maintenance window occurs on the last day of the month - Day of Month: When using date-based scheduling, specify which day of the month (1-28) - Occurrence in Month: When using week-based scheduling, select which week of the month (First, Second, Third, Fourth, or Last) - Day of the Week: When using week-based scheduling, select which day of the week (Sunday through Saturday) Examples of Monthly Configurations: - Date-based: "3rd day of every month" = Day of Month: 3 - Week-based: "Second Tuesday of every month" = Occurrence: Second, Day of Week: Tuesday - Week-based: "Last Friday of every month" = Occurrence: Last, Day of Week: Friday - Last day of the month: "Last day of every month" After a non-repeating maintenance window occurs, the next maintenance window must be scheduled in 3 months. If the start date of a non-repeating maintenance window is more than 3 months in the past, this policy will be disregarded, and updates will be scheduled according to default settings. If you disable or do not configure this policy, Windows Update will follow its default scheduling behavior.

Internal name
MaintenanceWindow
Policy ID
6cfbd55c4076
Elements
16

Registry values

How enabled and disabled states update the registry.

ScopeRegistry locationTypeEnabled valueDisabled valueCopy
Computer
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowEnabled
REG_DWORD
HKLM
1
HKLM
0
Registry location
Type REG_DWORD · Computer
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowEnabled
Hive
HKLM
Enabled value
1
Disabled value
0

Policy elements

Inputs and configuration options exposed by this policy.

ScopeElementTypeRegistry mappingConstraints & behaviorCopy
Computer
Start date (Format: yyyy-mm-dd example: 2025-10-30)
ID MaintenanceWindowStartDateID
text
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowStartDate
Type
REG_SZ
None
Computer
Start time (Format: hh:mm example: 23:30 for 11:30 PM)
ID MaintenanceWindowStartTimeID
text
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowStartTime
Type
REG_SZ
None
Computer
Duration (hours):
ID MaintenanceWindowDurationHoursID
decimal
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowDurationHours
Type
REG_DWORD
Range: 2 to 24
Computer
Day of the Month:
ID MaintenanceWindowMonthlyMonthBasedDayOfMonthID
decimal
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowMonthlyMonthBasedDayOfMonth
Type
REG_DWORD
Range: 1 to 28
Computer
Update actions only allowed inside the maintenance window:
ID MaintenanceWindowUpdateActionsID
enum
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowUpdateActions
Type
REG_DWORD
Options: Download, install, and restart (1), Install and restart (2), Restart only (3)
Computer
Select repeat schedule:
ID MaintenanceWindowRepeatScheduleOptionID
enum
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowRepeatScheduleOption
Type
REG_DWORD
Options: No repeat (1), Daily (2), Weekly (3), Monthly (4)
Computer
Monthly Schedule Type:
ID MaintenanceWindowMonthlyScheduleID
enum
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowMonthlySchedule
Type
REG_DWORD
Options: Date-based (1), Week-based (2), Last day of the month (3)
Computer
Occurrence in Month
ID MaintenanceWindowMonthlyWeekBasedOccurrenceInMonthID
enum
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowMonthlyWeekBasedOccurrenceInMonth
Type
REG_DWORD
Options: First (1), Second (2), Third (3), Fourth (4), Last (5)
Computer
Day of the Week
ID MaintenanceWindowMonthlyWeekBasedDayOfTheWeekID
enum
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowMonthlyWeekBasedDayOfTheWeek
Type
REG_DWORD
Options: Sunday (1), Monday (2), Tuesday (3), Wednesday (4), Thursday (5), Friday (6), Saturday (7)
Computer
Sunday
ID MaintenanceWindowWeeklySundayID
boolean
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklySunday
Type
REG_DWORD
Options: true (), false ()
True: None · False: None
Computer
Monday
ID MaintenanceWindowWeeklyMondayID
boolean
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklyMonday
Type
REG_DWORD
Options: true (), false ()
True: None · False: None
Computer
Tuesday
ID MaintenanceWindowWeeklyTuesdayID
boolean
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklyTuesday
Type
REG_DWORD
Options: true (), false ()
True: None · False: None
Computer
Wednesday
ID MaintenanceWindowWeeklyWednesdayID
boolean
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklyWednesday
Type
REG_DWORD
Options: true (), false ()
True: None · False: None
Computer
Thursday
ID MaintenanceWindowWeeklyThursdayID
boolean
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklyThursday
Type
REG_DWORD
Options: true (), false ()
True: None · False: None
Computer
Friday
ID MaintenanceWindowWeeklyFridayID
boolean
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklyFriday
Type
REG_DWORD
Options: true (), false ()
True: None · False: None
Computer
Saturday
ID MaintenanceWindowWeeklySaturdayID
boolean
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklySaturday
Type
REG_DWORD
Options: true (), false ()
True: None · False: None
Start date (Format: yyyy-mm-dd example: 2025-10-30)
Computer · Type text
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowStartDate
Type
REG_SZ
DetailsNone
Start time (Format: hh:mm example: 23:30 for 11:30 PM)
Computer · Type text
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowStartTime
Type
REG_SZ
DetailsNone
Duration (hours):
Computer · Type decimal
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowDurationHours
Type
REG_DWORD
Details
Range: 2 to 24
Day of the Month:
Computer · Type decimal
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowMonthlyMonthBasedDayOfMonth
Type
REG_DWORD
Details
Range: 1 to 28
Update actions only allowed inside the maintenance window:
Computer · Type enum
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowUpdateActions
Type
REG_DWORD
Details
Options: Download, install, and restart (1), Install and restart (2), Restart only (3)
Select repeat schedule:
Computer · Type enum
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowRepeatScheduleOption
Type
REG_DWORD
Details
Options: No repeat (1), Daily (2), Weekly (3), Monthly (4)
Monthly Schedule Type:
Computer · Type enum
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowMonthlySchedule
Type
REG_DWORD
Details
Options: Date-based (1), Week-based (2), Last day of the month (3)
Occurrence in Month
Computer · Type enum
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowMonthlyWeekBasedOccurrenceInMonth
Type
REG_DWORD
Details
Options: First (1), Second (2), Third (3), Fourth (4), Last (5)
Day of the Week
Computer · Type enum
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowMonthlyWeekBasedDayOfTheWeek
Type
REG_DWORD
Details
Options: Sunday (1), Monday (2), Tuesday (3), Wednesday (4), Thursday (5), Friday (6), Saturday (7)
Sunday
Computer · Type boolean
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklySunday
Type
REG_DWORD
Details
Options: true (), false ()
True: None · False: None
Monday
Computer · Type boolean
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklyMonday
Type
REG_DWORD
Details
Options: true (), false ()
True: None · False: None
Tuesday
Computer · Type boolean
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklyTuesday
Type
REG_DWORD
Details
Options: true (), false ()
True: None · False: None
Wednesday
Computer · Type boolean
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklyWednesday
Type
REG_DWORD
Details
Options: true (), false ()
True: None · False: None
Thursday
Computer · Type boolean
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklyThursday
Type
REG_DWORD
Details
Options: true (), false ()
True: None · False: None
Friday
Computer · Type boolean
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklyFriday
Type
REG_DWORD
Details
Options: true (), false ()
True: None · False: None
Saturday
Computer · Type boolean
Registry mapping
Path
Software\Policies\Microsoft\Windows\WindowsUpdate
Value name
MaintenanceWindowWeeklySaturday
Type
REG_DWORD
Details
Options: true (), false ()
True: None · False: None