sodcalculator

10 Tech How-To

Fix Task Scheduler Not Running Programs in Windows 11

Guide 10-37220 · Updated · Step by step

If Task Scheduler in Windows 11 isn’t running your scheduled programs, the fix usually involves checking the task’s trigger and conditions, verifying the account password, and ensuring the task is enabled with the correct ‘Run only when user is logged on’ setting. Below is a step-by-step guide to diagnose and resolve the most common causes, plus background on how Task Scheduler works and what to do when a task still fails.

Why Task Scheduler Stops Working

Task Scheduler is a Windows component that lets you automate programs, scripts, and maintenance tasks. It runs tasks based on triggers (time, logon, event) and conditions (AC power, network, idle). When a task doesn’t run, the cause is usually one of four things: the task is disabled, the trigger is misconfigured, the account that runs the task has an expired password, or the task’s conditions prevent it from starting (e.g., it requires AC power and the laptop is on battery). Less common but also possible: the Task Scheduler service itself is stopped, or a corrupted task registration needs to be recreated.

Step-by-Step Fixes

  1. Enable the task and check the trigger. Open Task Scheduler (press Win+R, type taskschd.msc, press Enter). In the left pane, select Task Scheduler Library. Find your task, right-click it, and select Enable if it’s grayed out. Then double-click the task, go to the Triggers tab, and verify the start date and time are in the future (or that the trigger is set to repeat). If the trigger is set to “One time” and that time has passed, it won’t run again.
  2. Check the account password. If your task is set to “Run whether user is logged on or not,” Task Scheduler stores the password. When the password changes (or expires), the task fails. Go to the General tab, select “Run only when user is logged on” (or re-enter the password for the other option), and click OK. You’ll be prompted for the password. This is the most common fix for tasks that used to work but suddenly stopped.
  3. Review conditions. On the Conditions tab, uncheck options like “Start the task only if the computer is on AC power” and “Start only if the computer is idle for” if you want the task to run regardless. Also check “Wake the computer to run this task” if you expect it to run while the PC is asleep.
  4. Verify the program path and arguments. On the Actions tab, make sure the “Program/script” field points to the correct executable or script. If it’s a script, you may need to fill the “Start in” field with the folder containing that script. A common mistake is leaving “Start in” blank for a script that references relative paths.
  5. Restart the Task Scheduler service. Press Win+R, type services.msc, find Task Scheduler, right-click and select Restart. If the service is disabled, set its startup type to Automatic and start it.
  6. Run the task manually. Right-click the task and select Run. If it runs manually but not on schedule, the issue is with the trigger or conditions. If it fails manually, the problem is with the action (path, arguments, or permissions).

How to Check the Last Run Result

Every task records a “Last Run Result” code. In the Task Scheduler main window, click on the task and look at the bottom pane. A result of 0x0 means the task ran successfully. 0x41303 means the task has not yet run. 0x41301 means the task is currently running. 0x1 or 0x2 often indicates an incorrect program path or action. To get more detail, go to the History tab (if enabled) and look for event ID 201 (task completed) or 203 (task failed). You can also check the Windows Event Log under Applications and Services Logs > Microsoft > Windows > TaskScheduler for operational events.

Common Misconception: “Run only when user is logged on” vs. “Run whether user is logged on or not”

Many users think “Run only when user is logged on” means the task won’t run at all unless the user is actively at the computer. Actually, it means the task runs in the user’s session and shows any UI. If you choose “Run whether user is logged on or not,” the task runs in the background, but it requires a stored password (or a service account). If you don’t want to store a password, you can select “Do not store password” and the task will run with limited access—but then it cannot access network resources or certain files. For most personal tasks, “Run only when user is logged on” is simpler and more reliable.

When the Task Still Won’t Run

If you’ve tried the above and the task still fails, try creating a brand-new task from scratch. Sometimes the XML of an imported or edited task gets corrupted. Export the task (right-click > Export), then delete it and import it back. Also, check if the task is set to “Run with highest privileges”—if your program needs admin rights, that box must be checked, and the task must run in the user’s account with UAC disabled for that task. Another possibility: the task is being triggered but the program exits immediately with an error. To see that, add a cmd /k to the action (e.g., cmd /k C:\path\program.exe) so the command window stays open and shows the error message.

Frequently Asked Questions

Why did my task stop running after I changed my Windows password?

If the task is set to “Run whether user is logged on or not,” Windows stores the password in the task. When you change your password, the stored one becomes stale. Re-enter your current password in the task’s General tab, or switch to “Run only when user is logged on” to avoid the issue.

Can I make a task run every 5 minutes?

Yes. In the Triggers tab, create a trigger with “Repeat task every” set to 5 minutes, and choose a duration like “Indefinitely.” Make sure the trigger’s start date is set to now or earlier, and that the task is enabled.

My task runs but the program doesn’t appear on screen. Why?

If the task is set to “Run whether user is logged on or not,” it runs in a separate session and won’t show any window. Change it to “Run only when user is logged on” to see the program’s interface. Also, if the program requires user interaction (like clicking a button), it won’t work in the background.

What does error code 0x80070005 mean?

This is an access denied error. The account running the task doesn’t have permission to execute the program or access the file. Check the folder permissions, or run the task with highest privileges if it needs admin rights.

Is there a way to test a task without waiting for the trigger?

Yes. Right-click the task and select “Run.” This executes the action immediately, regardless of triggers. If it runs, the issue is with the trigger or conditions; if not, the action itself is broken.

Alternatives to Task Scheduler

If Task Scheduler continues to give you trouble, you can use other built-in tools: Startup folder for programs that run at logon, Group Policy for domain environments, or Windows PowerShell scheduled jobs (Register-ScheduledJob) which are similar but managed via PowerShell. For simple recurring reminders, you could also use a third-party automation tool, but those carry their own risks. Stick with the built-in options unless you have a specific need.

Related

General steps for current mainstream versions; menus can differ by device and version. See the disclaimer or report an error.

More in this bed

The whole Tech How-To bed →