Backup EnginebackupEngine
Docs/Desktop Agent/Restore

Restore

Restore files from backup with file-level precision, point-in-time selection, and cross-device recovery.

File-Level Restore

BackupEngine lets you restore individual files or entire folders without downloading your full backup. The GUI's Restore tab is the full-featured browse-and-pick experience. As of v1.12.2 the CLI runs a real end-to-end restore — list manifests, pick a version, restore the whole set to a target folder.

  • Open the desktop agent and go to the Restore tab.
  • Select the backup set. If multiple destinations exist, choose which copy to restore from.
  • Browse the folder tree or use the search bar to find specific files.
  • Check the files or folders you want to restore.
  • Choose a destination: original location (with optional overwrite) or a new folder.
  • Click Restore to begin downloading and decrypting the selected files.

ℹ Note

v1.12.2+ CLI restore decrypts encrypted manifests on the fly, builds a chunk-resolver against the destination's pack files, and writes restored files under --output preserving the original folder layout. Throttled progress prints once per 500 ms. Press Ctrl+C to abort — files already written stay on disk so you can re-run the restore and pick up where you left off.

⚠ Warning

CLI restore handles file backup sets only through v1.12.4. Server-workload restore (SQL chain replay, Hyper-V VM restore with chain reassembly, BMR / System State image restore) is still GUI-only — the CLI rejects non-file manifests with a clear error so you do not get a partial restore.

Point-in-Time Restore

Every backup run creates a timestamped snapshot. You can browse your files as they existed at any previous backup point and restore from that exact moment. This is essential for recovering from accidental edits, deletions, or file corruption.

  • In the Restore tab, use the timeline slider or calendar picker to select a date and time.
  • The file browser updates to show the state of your files at that point.
  • Select and restore files exactly as they were at the chosen moment.
  • Compare versions side-by-side before restoring to make sure you have the right one.

ℹ Note

The GUI timeline picker is the most discoverable way to compare versions side by side. The CLI's restore list + restore run --version <ts> (v1.12.2+) covers point-in-time selection too — list returns one row per backup run with a millisecond timestamp, pass that timestamp to --version to restore that exact moment.

💡 Tip

BackupEngine retains all versions within your retention policy. The default retention is 30 days for personal plans and 90 days for business plans. You can customize retention per backup set.

Version History

Right-click any file in the Restore tab to view its complete version history. Each version shows the backup timestamp, file size, and whether the file was added, modified, or renamed.

  • See every version of a file across all backup runs.
  • Download any previous version directly.
  • Compare file sizes to identify when significant changes occurred.
  • Versions are deduplicated at the chunk level, so storing many versions is storage-efficient.

ℹ Note

Version-history browsing is GUI-only today.

Cross-Device Restore

You can restore files backed up from one device onto a different device. This is useful when migrating to a new computer, recovering after hardware failure, or accessing files while traveling.

  • Install BackupEngine on the new device and sign in with the same account.
  • In the Restore tab, select the source device from the device dropdown.
  • Browse and restore files from that device's backup sets to the new machine.
  • Your encryption passphrase is required to decrypt the data on the new device.

⚠ Warning

Cross-device restore requires your encryption passphrase. If you use zero-knowledge encryption and have lost your passphrase, BackupEngine cannot recover your data. Consider enabling the managed recovery key option in Settings for an emergency fallback.

Live Restore Status (v1.11.9)

While a restore is running you get a live view of progress in three places at once: the Restore screen itself shows a progress bar with bytes / files / transfer rate / ETA, the Dashboard banner shows the set name + percent, and the system tray icon animates the same way it does during a backup. Hovering the tray icon shows “Backup Engine — Running restore...”.

  • Restore screen: live percent + bytes/files/rate/ETA + the file currently downloading.
  • Dashboard banner: "Restore in progress — <set name> — N%".
  • Tray icon: 8-frame pulse animation; tooltip distinguishes backup vs. restore vs. both.
  • Cancel button on the Restore screen stops the run at the next file or chunk boundary (typically <1s).

ℹ Note

Pause is not supported. Each chunk is a single in-flight presigned-URL pull with no resume cursor — there is no way to pause one safely. If you need to stop a long restore, use Cancel; files written before cancel stay on disk so you can re-run the restore later and pick up roughly where it left off (chunks already on the destination dedup automatically).

⚠ Warning

Starting a restore for a backup set that already has a restore running will pop a “Restore already in progress” dialog and refuse to launch a second one — concurrent restores against the same set would race each other on the destination folder. Cancel the active job first.

Selecting Files in the Tree (v1.11.10)

The folder picker on step 2 cascades selection to every descendant when you check a parent folder. Checking a top-level folder visibly checks every sub-folder beneath it; un-checking removes the entire subtree. The “N files selected” counter reports leaf files only, so it stays accurate even when many intermediate folders are checked.

💡 Tip

Pre-1.11.10 cascade only added leaf files to the selection set, which made nested folders look unchecked even after a top-level check — the count was right, but the visible tree was misleading. That has been fixed in v1.11.10.