How to Create System Restore Points using Script or Command-Line?

System Restore is a very valuable feature in Windows that helps you easily recover the system in the event of any misconfiguration. If you’ve be using the System Restore feature regularly, then you need to know how to create System Restore Points in a single-click using command-line. You can also do this by scripting it using WMI or PowerShell.

This article discusses some methods to quickly create a System Restore point in a single click in Windows 10 and earlier versions of Windows.

How to Create System Restore Points using Command-line or Script

For quick restore point creation, there are three methods discussed: 1) using the WMI command-line, or using PowerShell or using a custom Windows Script.

Method 1: Restore Point creation using WMIC

  1. Open a elevated (admin) Command Prompt.
  2. Type the following command and press ENTER:
    Wmic.exe /Namespace:\\root\default Path SystemRestore Call CreateRestorePoint "%DATE%", 100, 1

    (or)

    Wmic.exe /Namespace:\\root\default Path SystemRestore Call CreateRestorePoint "My Restore Point", 100, 12
  3. You should see the following output, which indicates that the restore point creation was successful.

    Executing (SystemRestore)->CreateRestorePoint()
    Method execution successful.
    Out Parameters:
    instance of __PARAMETERS
    {
    ReturnValue = 0;
    };
  4. Exit the Command Prompt window

This creates a restore point automatically. You may create a desktop shortcut to the above WMIC command-line, assign a icon (from rstrui.exe) and set it to run as administrator when double-clicked.

Prefix the target path with cmd /k (and a space) command before the wmic.exe command-line

Double-click the shortcut whenever you want to to create a System Restore point.


Method 2: Restore Point creation using PowerShell command-line

To create a restore point using PowerShell:

  1. Right-click on the desktop and click New. Select shortcut
  2. Type the following command-line for the shortcut target.
    PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& {Start-Process PowerShell -ArgumentList '-NoProfile -ExecutionPolicy Bypass -NoExit -Command "Checkpoint-Computer -Description "MyRestorePoint" -RestorePointType "MODIFY_SETTINGS"; " ' " -Verb RunAs}"
  3. Assign a name for the shortcut (say, Create Restore Point)

Double-clicking the shortcut will create a system restore point automatically. You’ll be asked for elevation permission.

powershell create restore point command-line


Method 3: Restore Point creation using Script

The script method has a couple of advantages. It allows you to assign a custom restore point description in pre-Windows 10 systems. Secondly, in Windows 8 and Windows 10 computers, the script can create a restore point even if an earlier restore point was created in the last 24 hours; refer SystemRestorePointCreationFrequency registry value mentioned at the end of this post. This is not possible if you use the command-line or PowerShell method.

  1. Download create_restore_point.zip
  2. Extract the vbscript to a folder of your choice, say D:\Scripts.
  3. Double-click the file create_restore_point.vbs to run it.

    You’ll see the elevation prompt and after you provide your consent, the script creates a restore point automatically in Windows 10.

    Job done!

    The script does not show a confirmation message box if the operation is successful. If the restore point creation operation fails, it does show you the error code it encountered.

Script behavior in Windows 8 and earlier

You’ll see the following input box prompt to assign a custom description for it. This prompt appears only if you’re running Windows 8 or earlier.

When you see the following prompt, type the description and press ENTER. The description you provided here will reflect in the System Restore dialog.

The input box is prepopulated with the phrase Manual Restore Point. You may use the default description or modify it accordingly before clicking OK.



Tip #1: If you want to use the default description and don’t want the input box to appear, edit the file create_restore_point.vbs using Notepad, and delete line #37 (line that starts with the following code) and save the file.
sDesc = InputBox ("Enter a description.".......

Note: You won’t see the above input box if the script detects you’re using Windows 10. That’s because due to a change in Windows 10 v1607 and higher, custom restore point description don’t work. In Windows 10, automated or scripted restore points are always named Automatic Restore Point.

Tip #2: You may create a shortcut to the script and place it in your Start menu or taskbar, and customize the shortcut icon accordingly. You can use the restore point icon in C:\Windows\System32\rstrui.exe.

Here is how I pinned the shortcut to the Start menu in Windows 10…

To Pin the shortcut to the script to Taskbar or Start menu, edit the script shortcut’s properties and include wscript.exe before the target path.


Troubleshooting: Restore Point not created when using WMIC or PowerShell method?

In Windows 8 and higher, if an application or script calls the CreateRestorePoint method to create a restore point, Windows skips creating this new restore point if any restore points have been created in the last 24 hours.

So, if the above PowerShell or WMIC command-line doesn’t create a restore point for you, it’s probably because there is another restore point created within the last 24 hours. In that case, the PowerShell method may show the following warning:

powershell restore point frequency 24 hours warning

WARNING: A new system restore point cannot be created because one has already been created within the past 1440 minutes. The frequency of restore point creation can be changed by creating the DWORD value ‘SystemRestorePointCreationFrequency’ under the registry key ‘HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore’. The value of this registry key indicates the necessary time interval (in minutes)

The frequency of restore point creation can be changed by creating the DWORD value SystemRestorePointCreationFrequency under the registry key:

HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore

The value data of this registry value indicates the necessary time interval (in minutes) between two restore point creation. The default value is 1440 minutes (24 hours).

system restore point creation frequency 24 hours

  • If the application calls CreateRestorePoint to create a restore point, and the registry key value is 0, system restore does not skip creating the new restore point.
  • If the application calls CreateRestorePoint to create a restore point, and the registry key value is the integer N, system restore skips creating a new restore point if any restore points were created in the previous N minutes.

Related articles

If you’re aware of any other command-line or script method to automate system restore point creation, let’s know in the Comments section below.


One small request: If you liked this post, please share this?

One "tiny" share from you would seriously help a lot with the growth of this blog. Some great suggestions:
  • Pin it!
  • Share it to your favorite blog + Facebook, Reddit
  • Tweet it!
So thank you so much for your support, my reader. It won't take more than 10 seconds of your time. The share buttons are right below. :)

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.

9 thoughts on “How to Create System Restore Points using Script or Command-Line?”

  1. Great script, thanks very much. Any way that it could be amended to add a confirmation that the SRP creation was successful, or at least, took place?

  2. hello…i have can’t get the script to work as i have a lot of my services disabled. I cant work out which service i need to enable in order to get the script to work…System restore is running and i have tried WMI and volume shadow copier and neither have any effect. please help

  3. Good solution. My Windows-7 was not creating restore points and those I manually created would disappear after 2-3 days! I saved this script file after deleting the line asking for description. Then I created a new task in Task scheduler giving path of this script in the ‘Run a program’ and selected the option of running it with highest privileges. Now my computer runs System Restore at the schedule that I have created. Thanks a lot 🙂

  4. I put the WMIC script to use. Short, elegant, powerful. Thanks for the tip. One thing bothers me though – running this WMIC command seems to kill older restore points. Is that by design? Any way to leave older restore points as a just-in-case

Leave a Comment