Kopia: A File-Level Backup Tool That Puts Encryption and Storage Choice in Your Hands
Cross-platform backup tool for Windows, macOS & Linux with fast, incremental backups, client-side end-to-end encryption, compression and data deduplication. CLI and GUI included.
At a glance
- What is it?
- Kopia is a cross-platform backup tool with client-side encryption, compression, and deduplication, supporting local, network, and cloud storage. This review covers its architecture, setup, and limitations.
- Who is it for?
- Adopt Kopia if you need a file-level backup tool that gives you full control over storage location and encryption keys, and if you are comfortable with the CLI or the included GUI. Do not use it if you expect whole-disk imaging or if you need a fully tested integration with every Rclone-supported cloud provider.
- Can I use it commercially?
- Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository received new commits within the last day.
- What is it written in?
- Mainly Go, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on November 13, 2026, and from our analysis. They are not legal advice.
Star history
- kopia/kopia14,669 ★ · +889
| Repository | 2026-08-04 | 2026-11-13 |
|---|---|---|
| kopia/kopia | 13.8k | 14.7k |
889 Stars in the last 101 days, measured from the daily GitHub snapshot. Compare with other projects
Editorial analysis
What Kopia Solves and Who It Is For
The documentation emphasizes that you are in full control of where snapshots are stored. You provision the storage, pay for it, and tell Kopia where it is. You can use multiple storage locations for different repositories, and you can back up multiple machines to the same location. This is a deliberate design choice that appeals to users who already have cloud storage or a NAS and do not want to pay for a proprietary backup service. It also appeals to privacy-conscious users because encryption happens on the client side, meaning the storage provider never sees plaintext data.
How Kopia Works: Snapshots, Encryption, and Deduplication
Kopia's core mechanism is the snapshot. You create a snapshot of a file or directory, and Kopia stores it in a repository, which is a logical container that maps to a storage location. The README lists four key features: compression, deduplication, user-controlled end-to-end encryption, and error correction. Deduplication works by splitting data into chunks and storing only unique chunks, so repeated files or unchanged portions of files consume less space. This is what saves you money on storage, as the README notes. Encryption is end-to-end and user-controlled, so the storage provider cannot access your data. Compression also reduces storage costs. Error correction is mentioned as a feature, but the README does not detail the algorithm or the level of protection. That is a gap in the documentation; you would need to consult the full docs to understand whether it is forward error correction or simple checksums.
Storage Backends: From Local Disks to Rclone
Kopia supports a wide range of storage backends, which is one of its strongest points. The README lists Amazon S3 and S3-compatible storage, Azure Blob Storage, Backblaze B2, Google Cloud Storage, WebDAV, SFTP, and local or network-attached storage. It also supports some cloud storage options through Rclone, but this integration is marked as experimental. The README specifically says that not all Rclone-supported products have been tested, and some may not work. It names Dropbox, OneDrive, and Google Drive as tested. This is an honest limitation: if you want to use a less common Rclone backend, you are on your own to verify it works. The repository server option is also mentioned, which lets you run your own server to accept backups from multiple machines. This is useful for a homelab or small organization that wants to centralize backups without relying on a public cloud.
Getting Started: CLI and GUI
The README points to the installation page and a getting started guide, but it does not include concrete commands. The README shows an asciinema recording of the CLI in action, which suggests that the typical workflow is: install Kopia, create a repository with a storage provider and encryption passphrase, then create snapshots of selected paths. The GUI is included, but the README notes that the video demo shows an older version, so the current interface differs. For a new user, the GUI is likely the easier entry point, but the CLI offers more control and is scriptable. The documentation also mentions a Docker image on Docker Hub, which is another way to run Kopia, especially for server-side use. The exact commands are not in the README, so you should consult the Getting Started guide for the current syntax.
Limitations and Failure Modes
The most obvious limitation is that Kopia does not do full-disk imaging. The README states this directly: 'Kopia does not image your whole machine.' If you need to restore an entire operating system, you need a different tool. Another limitation is the experimental Rclone integration. While it extends the range of storage backends, the README warns that not all Rclone-supported products have been tested and some may not work. This is a real risk if you rely on a niche cloud provider. A third limitation is that you must manage your own storage. Kopia does not provide storage; you have to provision and pay for it. This is a trade-off: you get control, but you also get the operational burden of ensuring your storage is available and durable.
Maintenance and Upgrade Cost
Kopia is written in Go and licensed under Apache-2.0, which is permissive and allows commercial use without copyleft obligations. The project is actively maintained, with the latest release v0.23.1 pushed on 2026-06-16, and previous releases in May 2026 and December 2025. This cadence suggests regular updates, which is good for security and bug fixes. However, the README does not specify a migration path for repositories across versions. Backup tools must maintain backward compatibility, otherwise you could be locked out of your snapshots after an upgrade. The documentation does not address this explicitly, so you should verify that your repository format is stable before relying on Kopia for long-term backups. The build instructions are in BUILD.md, and contribution guidelines are available, which is helpful if you need to patch the tool yourself. The security reporting email is provided, which is a positive sign for responsible disclosure.
Alternatives and How They Differ
A common alternative to Kopia is restic, another open-source backup tool that also uses client-side encryption and deduplication. The key difference is in storage backends and interface. Restic has a similar model but does not include a GUI by default, whereas Kopia ships with a GUI. Restic also supports a different set of backends, and its repository format is distinct. Another alternative is BorgBackup, which is popular on Linux but has limited native support for cloud storage; it often requires a remote server or a wrapper like borgmatic. Borg uses its own chunking and encryption, but it does not natively support S3 or B2 without extra tools. Kopia's advantage is the breadth of direct cloud integrations and the built-in GUI. If you are already using restic, the migration to Kopia would require creating a new repository and doing a fresh backup, since the formats are incompatible. The choice between these tools often comes down to which storage backends you need and whether you prefer a GUI.
Editorial conclusion
Adopt Kopia if you need a file-level backup tool that gives you full control over storage location and encryption keys, and if you are comfortable with the CLI or the included GUI. Do not use it if you expect whole-disk imaging or if you need a fully tested integration with every Rclone-supported cloud provider. Before committing, verify that your chosen storage provider is explicitly supported (S3, Azure, B2, GCS, WebDAV, SFTP, local, or one of the tested Rclone backends like Dropbox, OneDrive, or Google Drive) and test a restore from a snapshot to confirm your data is recoverable. The project is actively maintained, with recent releases in 2026, but the Rclone integration remains experimental, so treat that path with caution.
Frequently asked questions
What is a Kopia?
Kopia is an open source backup and restore tool written in Go for Windows, macOS and Linux. It creates encrypted, compressed and deduplicated snapshots of files and directories you select, and stores them in a remote, cloud or local location of your choosing.
Is Kopia free?
The Kopia source is licensed under the Apache License, Version 2.0, which permits commercial use and modification. The storage backend is a separate cost: you provision and pay for the S3, B2, GCS, WebDAV, SFTP or local storage you point Kopia at.
How do I install Kopia without the web interface?
The repository Makefile provides an install-noui target that builds the binary with the nohtmlui build tag, producing a command-line-only build. The plain install target builds the default binary, which embeds the HTML user interface.
Does Kopia back up my entire computer?
No. Kopia states that it does not image a whole machine. You name the files and directories you consider important or critical, and it snapshots those, which means restoring an operating system is a separate task you handle yourself.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/kopia-kopia)Star history chart for your README
[](https://hysenlabs.com/projects/kopia-kopia)Was this useful?