Scroll to navigation

restic backup(1) restic backup(1)


restic-stats - Scan the repository and show basic statistics


restic stats [flags] [snapshot ID] [...]


The "stats" command walks one or multiple snapshots in a repository and accumulates statistics about the data stored therein. It reports on the number of unique files and their sizes, according to one of the counting modes as given by the --mode flag.

It operates on all snapshots matching the selection criteria or all snapshots if nothing is specified. The special snapshot ID "latest" is also supported. Some modes make more sense over just a single snapshot, while others are useful across all snapshots, depending on what you are trying to calculate.

The modes are:

  • restore-size: (default) Counts the size of the restored files.
  • files-by-contents: Counts total size of files, where a file is considered unique if it has unique contents.
  • raw-data: Counts the size of blobs in the repository, regardless of how many files reference them.
  • blobs-per-file: A combination of files-by-contents and raw-data.

Refer to the online manual for more details about each mode.


Exit status is 0 if the command was successful, and non-zero if there was any error.


-h, --help[=false] help for stats

-H, --host=[] only consider snapshots for this host (can be specified multiple times)

--mode="restore-size" counting mode: restore-size (default), files-by-contents, blobs-per-file or raw-data

--path=[] only consider snapshots including this (absolute) path (can be specified multiple times)

--tag=[] only consider snapshots including tag[,tag,...] (can be specified multiple times)


--cacert=[] file to load root certificates from (default: use system certificates or $RESTIC_CACERT)

--cache-dir="" set the cache directory. (default: use system default cache directory)

--cleanup-cache[=false] auto remove old cache directories

--compression=auto compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION)

--insecure-tls[=false] skip TLS certificate verification when connecting to the repository (insecure)

--json[=false] set output mode to JSON for commands that support it

--key-hint="" key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)

--limit-download=0 limits downloads to a maximum rate in KiB/s. (default: unlimited)

--limit-upload=0 limits uploads to a maximum rate in KiB/s. (default: unlimited)

--no-cache[=false] do not use a local cache

--no-extra-verify[=false] skip additional verification of data before upload (see documentation)

--no-lock[=false] do not lock the repository, this allows some operations on read-only repositories

-o, --option=[] set extended option (key=value, can be specified multiple times)

--pack-size=0 set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE)

--password-command="" shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)

-p, --password-file="" file to read the repository password from (default: $RESTIC_PASSWORD_FILE)

-q, --quiet[=false] do not output comprehensive progress report

-r, --repo="" repository to backup to or restore from (default: $RESTIC_REPOSITORY)

--repository-file="" file to read the repository location from (default: $RESTIC_REPOSITORY_FILE)

--retry-lock=0s retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries)

--tls-client-cert="" path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)

-v, --verbose[=0] be verbose (specify multiple times or a level using --verbose=n``, max level/times is 2)



Jan 2017 generated by restic generate