A snapshot is a record of a disk or volume's contents at a specific point in time. Taking a snapshot preserves the state of files, folders, and the overall file system. Each snapshot is incremental and saves the changes from the previous snapshot, which helps a computer user roll data back to an earlier state quickly. A snapshot is not a backup, but snapshots can be a valuable part of a data backup and recovery strategy.
Taking a snapshot of a disk volume does not require the time and workflow interruption that making a full backup does, since a snapshot does not actually create a copy of data elsewhere. Instead, taking a snapshot freezes the volume as it is, and any new data (as well as changes to existing data) gets added as new data blocks outside the snapshot. Data blocks within each snapshot are read-only, so each subsequent snapshot needs to preserve only the data blocks added since the previous one.
Rolling back to an earlier version of the volume only requires the system to discard or ignore every data block added after the end of the chosen snapshot. Over time, the system removes old snapshots by merging snapshots together, following the system's retention policy that may limit the number, age, or total size of the volume's snapshots. For example, one common policy is to maintain daily snapshots for a week, weekly snapshots for a month, and monthly snapshots for a year.
Some file systems natively support full file-system snapshots using basic file-system commands, including ZFS and APFS. Other file systems support snapshots only through software utilities; for example, NTFS and ReFS volumes support snapshots through a Windows service called Volume Shadow Copy Service (VSS). Many storage array systems and NAS devices also support volume snapshots, which administrators can configure through their management applications.