A method for storing backups (401C; 500; 801C, 802C, 803C, 808C) of virtual machines, comprising: identifying an end of a backup generation session; in response to identifying the end of the backup generation session: performing a date analysis to identify a set of potentially stale backups of the backups; performing a continuity chain analysis of each backup of the set of potentially stale backups to identify a set of stale backups, wherein the continuity chain comprises a plurality of backups each associated with different periods of time that form a continuous lineage; and deleting each backup of the set of stale backups, wherein performing the continuity chain analysis of each backup of the set of potentially stale backups to identify the set of stale backups comprises: selecting a backup of the set of potentially stale backups; reading a file name (401A; 801A; 802A; 803A; 808A) of the selected backup (401C; 801C; 802C; 803C; 808C); extracting a portion of the file name; performing a first matching of the extracted portion of the file name to respective file names of the backups; making (622:YES) a first determination that the selected backup is chained to a second backup of the backups based on the first matching; and excluding the selected backup from the set of stale backups. identifying an end of a backup generation session; in response to identifying the end of the backup generation session: performing a date analysis to identify a set of potentially stale backups of the backups; performing a continuity chain analysis of each backup of the set of potentially stale backups to identify a set of stale backups, wherein the continuity chain comprises a plurality of backups each associated with different periods of time that form a continuous lineage; and deleting each backup of the set of stale backups, performing a date analysis to identify a set of potentially stale backups of the backups; performing a continuity chain analysis of each backup of the set of potentially stale backups to identify a set of stale backups, wherein the continuity chain comprises a plurality of backups each associated with different periods of time that form a continuous lineage; and deleting each backup of the set of stale backups, wherein performing the continuity chain analysis of each backup of the set of potentially stale backups to identify the set of stale backups comprises: selecting a backup of the set of potentially stale backups; reading a file name (401A; 801A; 802A; 803A; 808A) of the selected backup (401C; 801C; 802C; 803C; 808C); extracting a portion of the file name; performing a first matching of the extracted portion of the file name to respective file names of the backups; making (622:YES) a first determination that the selected backup is chained to a second backup of the backups based on the first matching; and excluding the selected backup from the set of stale backups. selecting a backup of the set of potentially stale backups; reading a file name (401A; 801A; 802A; 803A; 808A) of the selected backup (401C; 801C; 802C; 803C; 808C); extracting a portion of the file name; performing a first matching of the extracted portion of the file name to respective file names of the backups; making (622:YES) a first determination that the selected backup is chained to a second backup of the backups based on the first matching; and excluding the selected backup from the set of stale backups.