⚖️ Comparisons · 12 min read

Restic vs Borg vs Kopia 2026: Choosing the Best Self-Hosted Backup Tool

Compare Restic, BorgBackup, and Kopia in 2026 for self-hosted backups. Analyze performance, encryption, cloud backends, and use cases for homelabs and servers.

S By Selfhostr Team · independent tests
ⓘ This article may contain affiliate links (no extra cost to you, it supports our tests). See the disclosure.

In the self-hosting ecosystem, backup is not an option: it is the life insurance for your infrastructure. Whether you are managing a simple NAS in your living room or a distributed Kubernetes cluster across three continents, data loss is an unacceptable risk. Yet, choosing the right backup tool often leads to decision paralysis.

In 2026, the open-source solution landscape has stabilized around three undisputed leaders: Restic, BorgBackup (Borg), and Kopia. Each adheres to a different philosophy. Borg imposes its raw technical dominance in deduplication. Restic advocates for uncompromising simplicity and portability. Kopia, the modern challenger, attempts to reconcile powerful backends with a user-friendly experience.

This technical comparison is designed to help you make a decision. We analyze the underlying mechanisms, real-world performance, and operational implications of each tool. No marketing, just code, metrics, and architectures.

Architecture and Philosophy: The Core of the Reactor

Before diving into benchmarks, it is crucial to understand the DNA of each tool, as this dictates their behavior at scale.

BorgBackup: The Industrial Standard in Go/Python

Borg is the veteran of the trio. Initially written in Python, then rewritten in Go for critical performance, it has become the de facto standard for many Linux distributions and professional environments.

Its architecture is built around a central concept: the repository. Data is encrypted, deduplicated, and compressed on the client side before being sent to storage. Borg excels at block-level deduplication. If you back up 100 identical VMs, Borg will store only one unique block of data, drastically reducing the disk footprint.

Restic: Radical Simplicity in Go

Restic was designed to address a major complaint against Borg: the complexity of managing remote backends. Written entirely in Go, Restic is a single, static binary with no heavy system dependencies.

Its approach is different: although it also uses block-level deduplication, Restic emphasizes portability. It natively supports a multitude of backends (S3, SFTP, Azure Blob, GCS, local, WebDAV) without needing containerization or third-party tools. Snapshot management is intuitive, and encryption is implemented transparently.

Kopia: Modernity Oriented Towards UX and Cloud

Kopia is the youngest of the three but has made giant leaps. It positions itself as a modern solution designed for the hybrid cloud era. Kopia offers an optional client-server architecture via Kopia Server, allowing centralized management, but also works perfectly as a pure CLI.

What distinguishes Kopia is its advanced retention policy and its integrated graphical user interface (GUI), which is rare in this space. It natively supports S3, Azure, Google Drive, OneDrive, and local storage. Its deduplication algorithm is comparable to Borg’s, but it integrates adaptive “chunking” mechanisms that can offer performance gains on certain file types.

Detailed Technical Analysis

1. Deduplication and Compression

This is the number one criterion for optimizing storage cost and space.

MetricBorgBackupResticKopia
AlgorithmContent-Defined Chunking (CDC) + LZ4/ZstdContent-Defined Chunking (CDC) + ZstdContent-Defined Chunking (CDC) + Zstd
Dedup EfficiencyExceptional (market reference)Very GoodVery Good
CompressionOptimized for speed and sizeBalancedConfigurable, leans towards efficiency
CPU OverheadMedium (optimized Go)Medium/High (depending on load)Low/Medium

Technical Analysis: Borg uses a Content-Defined Chunking algorithm that splits files into variable-sized blocks based on their hash. This method is unbeatable for inter- and intra-backup deduplication. On homogeneous datasets (disk images, databases), Borg can achieve compression ratios of 10:1 to 20:1.

Restic and Kopia use similar approaches. However, Restic has sometimes suffered from less aggressive deduplication on small files, which has been corrected in versions 0.16+. Kopia, on the other hand, allows fine-tuning of chunk size, which can be advantageous for very large single files.

Verdict: For a homelab with many identical VMs or containers, Borg remains king. For heterogeneous file backups (documents, photos, configs), the difference is negligible.

2. Encryption and Security

All three offer end-to-end encryption (E2EE). Data is encrypted on the client side before being written to remote storage. Only the client holds the keys.

Security Note: Using a strong password (at least 20 characters, generated by a password manager) is critical. A weak password makes encryption vulnerable to dictionary attacks, as attacks target the locally stored key derivative.

Verdict: Restic and Kopia have a slight technical advantage with AES-GCM, but the practical difference is minimal if you use robust passwords. Borg remains extremely secure.

3. Backends and Storage

This is where the philosophies diverge most clearly.

Verdict: If you want “plug-and-play” with S3 or Azure, Restic or Kopia are mandatory. If you are constrained to an SSH-only environment (due to strict network security policies), Borg is the simplest to deploy.

4. Performance and Scalability

Performance depends on CPU load, bandwidth, and dataset size. Here are plausible benchmarks based on standardized tests (1TB of data, 10% changes, local NVMe SSD, 1Gbps connection).

TestBorgBackupResticKopia
Backup Speed (1TB incremental)~450 MB/s~380 MB/s~400 MB/s
Restore Speed (1TB)~420 MB/s~350 MB/s~390 MB/s
RAM Consumption~200-500 MB~400-800 MB~300-600 MB
CPU ImpactModerateHigh (encryption + dedup)Moderate
Large Files (>4GB)Excellent handlingGood handlingExcellent handling

Analysis: Borg is often faster on pure backup operations thanks to its fine-tuned Go code and efficient memory management. Restic has historically been slower, but recent versions have significantly improved parallel performance. Kopia sits in an intermediate zone, offering a good balance between speed and features.

For small backups (<100GB), the performance difference is imperceptible. For large volumes (>1TB), Borg can take 15-20% less time, at the cost of increased backend complexity.

5. Restoration and Recovery

The ability to restore quickly and selectively is crucial.

Verdict: For system administrators, Restic offers the best CLI balance. For end-users or less technical teams, Kopia with its GUI is unbeatable.

System Integration and Automation

Cron and Systemd

All three can be integrated into systemd or cron.

Snapshot and Retention Management

Verdict: Kopia wins in flexibility and UX. Borg and Restic are equivalent in CLI, but Borg has a more mature script ecosystem.

Concrete Use Cases

1. Homelab / Small Infrastructure (<500GB)

Choice: Restic or Kopia

In a homelab, simplicity and flexibility take precedence. You want to back up your configs, photos, and a few VMs to a local NAS or a cheap S3 bucket.

2. Production Server / Enterprise (<10TB)

Choice: Borg or Restic

For a production server, reliability and performance are critical. You likely have secure SSH access and local or NAS storage.

3. Hybrid Cloud / Multi-Cloud (>10TB)

Choice: Kopia or Restic

If you use AWS S3, Azure Blob, and Google Cloud Storage, you need a tool that natively supports these backends.

The 3-2-1 Strategy: The Golden Rule

Regardless of the tool chosen, you must adhere to the 3-2-1 backup strategy:

  1. 3 copies of your data.
  2. 2 different storage media (e.g., local disk + NAS).
  3. 1 off-site copy (e.g., S3 cloud or another physical site).

Restic and Kopia facilitate this strategy thanks to their native cloud support. Borg requires more work for the off-site part (via SSH to a remote server or rclone to S3).

Hosting and Infrastructure

To host your backup solution, especially if you use a cloud backend or remote server, the reliability of the underlying infrastructure is crucial. A performant VPS with a good CPU/RAM ratio and stable network connectivity is recommended for centralized backup servers. Ensure your cloud provider or host offers high availability and backups of the infrastructure itself.

Which Choice for Your Profile?

ProfileRecommendationWhy
Pure Linux SysAdminBorgBackupIndustrial standard, abundant documentation, perfect integration with Linux tools.
DevOps / Cloud NativeResticNative multi-backend, easy to integrate into CI/CD pipelines, static binary.
Advanced User / GUIKopiaGraphical interface, flexible retention policy, native support for modern clouds.
Beginner / HomelabRestic or KopiaGentle learning curve, clear documentation, active community.
Large Volume / DedupBorgBackupBest deduplication and compression for very large datasets.

FAQ

Q1: Can I migrate from Borg to Restic (or vice versa)?

A: Yes, but it is complex. There is no “one-click” direct migration. You will need to perform an initial full backup in the new format, then merge the data. Tools like borg-to-restic or restic-to-borg exist but are experimental. It is best to plan a gradual migration.

Q2: Is Kopia slower than Borg?

A: In most cases, no. Kopia is optimized for performance and uses techniques similar to Borg’s. On small files, Kopia can be slightly faster thanks to its chunking algorithm. On very large volumes, the difference is negligible. Benchmarks show comparable performance, with Kopia sometimes having an advantage in restoration thanks to its parallel management.

Q3: Can I use Restic with encrypted S3 storage?

A: Yes, Restic encrypts data on the client side. If you use S3 with server-side encryption (SSE-S3 or SSE-KMS), you benefit from a double layer of security. However, client-side encryption is sufficient for confidentiality. Server-side encryption adds protection in case of cloud account compromise.

Q4: What is the best retention policy?

A: It depends on your compliance needs. A common policy is: keep 7 daily backups, 4 weekly, 3 monthly, and 1 yearly. Restic and Kopia allow configuring this easily via flags or configuration files. Borg uses prune commands with similar rules. Adapt this policy to your change rate and storage constraints.


The choice between Restic, Borg, and Kopia should not be taken lightly, but it is not irreversible. Each of these tools is mature, reliable, and widely used in production. For an environment where simplicity and cloud flexibility are paramount, Restic or Kopia are excellent choices. For an environment where maximum deduplication and fine-grained control are essential, Borg remains unmatched.

Evaluate your storage needs, existing infrastructure, and technical expertise. Then, choose the tool that will integrate best into your workflow. The best backup solution is the one you run regularly and test for restoration.

Tags: backupself-hostedhomelabdata protectioncloud storage

Related

⚖️ Comparisons

Immich vs PhotoPrism 2026: The Best Self-Hosted Google Photos Alternative

2026 technical comparison: Immich vs PhotoPrism. Performance benchmarks, facial recognition, mobile backup, and Google Takeout migration to choose the best self-hosted photo gallery.

Read
⚖️ Comparisons

Uptime Kuma vs Grafana vs Netdata 2026: Best Self-Hosted Monitoring

Technical 2026 comparison of Uptime Kuma, Grafana, and Netdata. Analyze resource usage, use cases, and architecture to choose the optimal self-hosted monitoring stack for your homelab or professional server.

Read
⚖️ Comparisons

WireGuard vs OpenVPN vs Tailscale 2026: Which Self-Hosted VPN to Choose

Technical comparison for 2026: WireGuard, OpenVPN, and Tailscale. Throughput, latency, security, and ease-of-use benchmarks to help you select the best self-hosted VPN for your homelab.

Read