Why do restore points in Windows Vista use so much disk space?

A reader asked us why restore points are so large in Windows Vista compared to Windows XP. He notes “The average XP restore point was around 50 MB.  On Vista, restores points vary between 1 GB – 3 GB.” Why the big difference? Eduardo Laureano, the Program Manager for System Restore, explains:

In Windows Vista, System Restore is now based on the VSS technology, which keeps track of block-level changes across your entire volume(s). In contrast, Windows XP System Restore would keep copies of changed system files by using a file system filter. The Windows XP method isn’t performance efficient because it works above the file system level, impacting every system operation. It is also not consistent as it doesn’t have needed information across the entire volume. It wouldn’t restore, for instance, applications that place binaries (purposely or maliciously) in the user profile.

These new restore points, aka Shadow Copies, are taken daily across your volume, or at application/driver installation. The size of each shadow copy will vary on the amount of changed blocks are being recorded on your system. The more it churns, more data will be stored aside. Once they reach their cap, 15% of your volume, older shadow copies will be deleted to free up room for new ones. With these improvements in place, the Windows Vista solution allows for a more reliable (restore points are readily available), robust (supports a much broader set of repair scenarios) and efficient (seamless impact on performance) System Restore.

The tradeoff of taking additional space is compensated by allowing features like Shadow Copy to work as an automatic local backup. With that you can restore previous versions of accidentally edited/deleted files and folders across your entire disk.