You can use the Task Scheduler to restart on schedule in both Windows 11 and Windows 10. Here’s how.
If you generally use your system all day, every day, and cannot restart it without disrupting the workflow, having the ability to schedule a restart is very useful. For example, maybe the system is functioning as a media server, connected to a medical device, 3D printer, or an industrial machine. Whatever your specific use case is, if you need it, you can restart your computer on schedule using the built-in Task Scheduler app.
One of the biggest advantages of restarting Windows regularly is that fix frees up RAM, may improve performance, solves a lot of system & software glitches, and more.
So, without further ado, let me show you how to schedule restart Windows using Task Scheduler in simple steps. Let’s get started.
Note: If you are looking to restart your system automatically to install Windows updates, make sure the Active Hours feature is enabled instead. No need to use the Task Scheduler.
Steps to Schedule Restart Windows
- Open the Start menu.
- Search for “Task Scheduler” and click “Open“.
- Click the “Create task” option on the right panel.
- Type “Schedule Restart” in the “Name” field.
- Go to the “Triggers” tab and click “New“.
- Select “On a schedule” from the first drop-down menu.
- Select the “Daily” under “Settings”.
- Set the date and time.
- Type “1” in the “Recur every” field to run the task every day.
- Click “OK“.
- Go to the “Actions” tab and click “New“.
- Select “Start a program” from the first dropdown menu.
- Type “%SystemRoot%\system32\shutdown.exe” in the “Program/Script” field.
- Type “-r -f -t 10” in the arguments field.
- Click “OK“.
- (Optional) Go to the “Conditions” tab and select the “Start the task only if the computer is idle” checkbox. That way, the system will only restart if it is idle. i.e., not doing anything. Click “OK“.
- That’s it. From now on, Windows restarts on schedule.
Detailed Steps (With Screenshots)
First, open the Task Scheduler. To do that, open the Start menu by pressing the Windows key, search for “Task Scheduler” and click the “Open” option. Once it opens, click the “Create Task” option on the right sidebar.

The above action opens the task creation wizard. Here, type “Schedule Restart” in the “Name” field.

Go to the “Triggers” tab and click the “New” button at the bottom.

Select “On Schedule” from the “Begin the task” dropdown menu. Next, select the “Daily” option under “Settings”. After that, set the start date & time and the number of days you want the task to recur in the “Recur every” field. For example, to run the task every day, you can enter 1, to run the tasks on alternate days, you can enter 2, etc.
Click the “OK” button.
Note: You can also select other schedule options such as Weekly or Monthly depending on your use case.

Go to the “Actions” tab and click the “New” button at the bottom.

In the “New Action” window, configure the options as shown below:
- Action > Start a program.
- Program/script:
%SystemRoot%\system32\shutdown.exe
- Add arguments:
-r -f -t 10
Click the “OK” button.

Go to the Conditions tab and select the “Start the task only if the computer is idle for:” checkbox, set the dropdown next to it to “10 minutes“, and click “OK“.

That’s it. You’ve created a scheduled task to restart Windows. You can find it in the middle of the Task Scheduler window.

From now on, Windows will reboot automatically on schedule as per the task configuration. Right before restarting, it will show a little message giving any active users a chance to save the work.

Good to know: How to display a popup message using a task scheduler.
Wrapping Up — Scheduling System Restart in Windows 11 & 10
As you can see, thanks to the Task Scheduler app, you can easily configure a custom scheduled task to restart Windows on schedule. If you ever want to disable the automatic scheduled restart, simply disable the scheduled task. To do that, open the Task Scheduler, find & right-click on the task, and select the “Disable” option.
Good to know: How to start programs on delay at startup using the task scheduler.
If you have any questions or need help, comment below. I’ll be happy to assist.
Thanks for working this out.
Had to do this for a Windows Server. I used slash instead of dash arguments per help:
See https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/shutdown
I configured it to run under the System account so nobody has to be logged in. The server has some background service load so I did not set the idle condition but instead planned an optimal time to schedule the reboot. Help also has examples of how to write a “planned” message to the event log.
Also see help for “schtasks” which can be used to set up tasks from the command line if you need to do it repeatedly or from a script.