How to Create Daily System Restore Points Automatically in Windows 10

This post tells you how to schedule the creation of daily System Restore point during startup or logon in all versions of Windows, including Windows 10.

The first method involves a VBScript that I wrote to create restore points, and the 2nd method uses the WMI command-line tool Wmic.exe. The script method has an advantage where you can force the creation of restore point even if a previous restore point was created within the last 24 hours.

The following screenshots and instructions below are from a Windows 10 computer.

How to Create Daily System Restore Points Using Task Scheduler

To create a daily restore point automatically, follow one of these methods:

Method 1: Using Task Scheduler and VBScript

  1. Download automatic_restore_point.zip, unzip and extract the enclosed VBScript file to your C:\Windows directory.
    Create Daily System Restore Points Automatically
  2. Launch Task Scheduler (taskschd.msc) and click Create Task… in the Actions pane.
    Create Daily System Restore Points Automatically
  3. Type the name and description for the task.
  4. Click Change User or Group…, type SYSTEM and press ENTER. This makes the task to run under the Local System account.
  5. Enable Run with highest privileges checkbox.
  6. Select Windows 10 in the Configure for: drop-down list box.
    Create Daily System Restore Points Automatically
  7. Click the Triggers tab, and click New.
  8. In the Begin the task, select either At startup, or At log on option. If selecting the latter, select Specific user: so that the task is triggered when logging on to the specific user account.
    Create Daily System Restore Points Automatically
  9. Click OK, and click the Actions tab
    Create Daily System Restore Points Automatically
  10. Click New… In the New Action dialog, either type or Browse to select the following file:
    C:\Windows\System32\Wscript.exe
  11. In the Add arguments (optional) field, type the path the script is moved, in this case:
    C:\Windows\automatic_restore_point.vbs
  12. Click OK.
    Create Daily System Restore Points Automatically

    This adds the entry to Actions tab.

    Create Daily System Restore Points Automatically

  13. Click OK.
    Create Daily System Restore Points Automatically

That’s it! You’ve configured Task Scheduler to create System Restore point daily.

More Information & Script Customization

To check if the scheduled creation of system restore point is working, open System Restore window.

Create Daily System Restore Points Automatically

Note that this script, by default, doesn’t create a restore point if a recent one exists and created in the last 24 hours. To force the script to create the restore point regardless of the last restore point creation date/time, open Notepad elevated (Run as Administrator) and change the following line in the script:

i24hrsLimit = 1

to

i24hrsLimit = 0

… and save the file.



Create Daily System Restore Points Automatically

The downside of setting it to 0 is that restore point will be created at every startup/login. For instance, if you reboot the computer 3 times a day, there will be 3 restore points.


Method 2: Using WMIC.exe at Startup or Login

Use the same procedure as above (Steps 1 through 9) for creating the task, but in the “New Action” window use the following Program name in the Program/script: text box.

wmic.exe

In the Add arguments (optional), use the following parameters:

/Namespace:\\root\default Path SystemRestore Call CreateRestorePoint "Automatic Daily Restore Point", 100, 7

create daily restore point script or wmic

That’s it! Hope you found the script and article useful. Let me know what you think, in the Comments section below!

Additional Notes

  1. The VBScript script used in this article is based on my earlier script at Create System Restore Points Using Script Or Command-Line, but slightly modified so as to make it run as a scheduled task.
  2. Windows has already a built-in System Restore task that is supposed to create regular system protection points. However, it may not be creating a restore point on a daily basis. Moreover, in Windows 8 and higher, automatic System Restore points are not created if one was already created in the last 24 hours.

    Also, the frequency (24 hours) can be altered by setting the registry value SystemRestorePointCreationFrequency, as specified in the MSDN article CreateRestorePoint method of the SystemRestore class.

About the author

Ramesh Srinivasan founded Winhelponline.com back in 2005. He is passionate about Microsoft technologies and he has been a Microsoft Most Valuable Professional (MVP) for 10 consecutive years from 2003 to 2012.

7 thoughts on “How to Create Daily System Restore Points Automatically in Windows 10”

  1. Both won’t work for me.
    I tried both versions with my ASUS notebook running Windows 10 Pro 1607 14393.321.
    Starting the task or rather the script would result in heavy read-write activity of the harddisk for round about 1 minute but checking the list of recently created restore points shows that no new restore point has been created.
    Of course “i24hrsLimit” had been set to “0”.

  2. Yes, works! Thanx a lot!
    But there’s still a titchy thing:
    The attempt to change the script file text:
    sDesc
    in order to modify the description for the restore point will not affect the final name in the list of restore points.
    Seems as if the name is recklessly generated by the system.
    It’s somewhat astonishing, isn’t it?
    My (German) system always calls the new restore point “Automatischer Wiederherstellungspunkt” (means: automatic restorepoint) and it is not for love or money willing to accept changes.

  3. Hi, If I have 2 protection drives (C and D), will it be 1 restore point created for 2 drives?
    Is it possible to schedule to create separate restore points for both drives?

Leave a Comment