A Jellyfin server that dies takes more than a movie library with it. The custom posters, the years of watched-status flags, the collections a household actually uses, the metadata scraped and hand-corrected over months, all live inside the config directory and the SQLite database. Losing a drive is one kind of pain. Losing the polish is another. The best apps for Jellyfin server data protection on desktop cover both, and the ones we picked cover the third scenario nobody plans for either, which is a botched update that corrupts the library.db before you notice.
We tested eight tools on Windows, macOS, and Linux against a mid-sized library, roughly 8 TB of media and a 3 GB Jellyfin config. Five are backup engines, one is a parity system for media drives, one is a continuous replicator for offsite copies, and one handles filesystem snapshots on ZFS pools. Pick two or three from different rows and the server survives most disasters.
What to look for
A backup tool for a Jellyfin server carries a specific set of requirements:
- Deduplication that survives the 4K library. Media files barely change but the SQLite db and posters do, so per-file dedup does not help as much as content-defined chunking.
- Encryption at rest with a key the server holds, so the backup on cloud storage is still yours.
- Point-in-time restore, because the useful backup is the one from an hour before you deleted the wrong collection.
- Bandwidth ceilings, because a nightly sync should not crush your Plex-competitor’s stream quality.
- A working restore path that does not require the same operating system the backup was taken on. Reinstalling Jellyfin on a different distro should not lock you out of your posters.
- Immutable or append-only snapshots, so a ransomware event on the server cannot reach back and overwrite the backup.
Quick comparison
| App | Best for | Platforms | Free plan | Starting price | Rating |
|---|---|---|---|---|---|
| Kopia | Encrypted deduplicating backups with a UI | Windows, macOS, Linux | Yes | Free | 4.7 |
| Restic | CLI backups to any object store | Windows, macOS, Linux | Yes | Free | 4.8 |
| BorgBackup | SSH-target dedup with long history | macOS, Linux | Yes | Free | 4.7 |
| Duplicati | Scheduled cloud backups with a web UI | Windows, macOS, Linux | Yes | Free | 4.3 |
| Snapraid | Parity redundancy for large media pools | Windows, Linux | Yes | Free | 4.6 |
| rclone | Fast one-way copies to cloud buckets | Windows, macOS, Linux | Yes | Free | 4.8 |
| Syncthing | Continuous file-level replication | Windows, macOS, Linux | Yes | Free | 4.7 |
| Sanoid | ZFS snapshot management and pruning | Linux, macOS | Yes | Free | 4.6 |
1. Kopia, best for encrypted deduplicating backups with a UI
Kopia is what the recent XDA piece on multi-layer Jellyfin protection kept hinting at without naming: an open-source backup engine with content-defined chunking, native encryption, snapshot compression, and a web UI that non-CLI users can actually run. Point it at the Jellyfin config folder and a media root, set two policies (hourly for config, weekly for media), and Kopia handles retention, verification, and offsite replication to S3, B2, Wasabi, or a plain SFTP target.
Where it falls short: the desktop app is Electron and eats memory on machines under 8 GB. Large first uploads can take days if the media pool is measured in terabytes.
Pricing:
- Free: unlimited, open-source, all features.
- Paid: no paid tier.
Platforms: Windows, macOS, Linux, Docker.
Download: Kopia releases or GitHub source
Bottom line: pick Kopia when the household needs a friendly UI and the server has room to run it, and pair it with something else for the raw media redundancy.
2. Restic, best for CLI backups to any object store
Restic is a single-binary Go tool that does content-defined dedup, encryption, and incremental snapshots against local disks, SFTP, S3-compatible buckets, Backblaze B2, Azure Blob, and a dozen more targets. It handles the Jellyfin config folder in seconds after the first snapshot and its check command verifies the repository against silent corruption on the destination.
Where it falls short: the CLI is the interface. Pruning old snapshots on a large repository can take hours because Restic rewrites pack files rather than editing them in place.
Pricing:
- Free: unlimited, open-source.
- Paid: no paid tier.
Platforms: Windows, macOS, Linux, FreeBSD.
Download: Restic downloads or GitHub source
Bottom line: the pick when Kopia’s UI is not needed and the server is already scripted. Pair it with a wrapper like resticprofile for cron.
3. BorgBackup, best for SSH targets with long history
BorgBackup is older than Restic and still the sharper tool when the backup destination is another Linux box over SSH. Deduplication is aggressive, snapshots take almost no space after the first, and the append-only mode on the target repo means a compromised Jellyfin host cannot delete history remotely.
Where it falls short: the Windows path is unofficial and rough. Restoring a single file from a huge archive is slower than the same operation on Kopia or Restic.
Pricing:
- Free: unlimited, open-source.
- Paid: no paid tier.
Platforms: macOS, Linux, BSD. Cygwin build for Windows.
Download: Borg releases or GitHub source
Bottom line: the choice for a homelab with a second Linux server sitting on the same LAN or at a friend’s house.
4. Duplicati, best for scheduled cloud backups with a web UI
Duplicati is the most-installed backup tool on TrueNAS SCALE for a reason. The web UI schedules backups to Backblaze B2, Wasabi, OneDrive, Google Drive, and a long list of others, encrypts locally with AES-256, and mails a summary report when the job finishes. New releases in 2026 finally shipped a stable database format that survives long backup histories without corrupting.
Where it falls short: the older code was famously fragile around repository corruption. The current release fixed most of it, but restore tests are non-negotiable here.
Pricing:
- Free: unlimited, open-source.
- Paid: no paid tier.
Platforms: Windows, macOS, Linux, Docker.
Download: Duplicati downloads or GitHub source
Bottom line: good for someone who wants scheduled cloud backups without touching a terminal, provided they run monthly restore drills.
5. Snapraid, best for parity redundancy on large media pools
Snapraid does not back up. It computes parity across up to six data drives so a single drive failure is recoverable without RAID’s rebuild-window risk. For a Jellyfin server with cold-ish media that changes weekly rather than hourly, Snapraid is far cheaper than mirrored storage and does not need matching drive sizes.
Where it falls short: parity is only as fresh as the last sync run. If a drive dies before the nightly cron, files added that day are gone.
Pricing:
- Free: unlimited, open-source.
- Paid: no paid tier.
Platforms: Windows, Linux, BSD.
Download: Snapraid downloads or GitHub source
Bottom line: the media-drive complement to any real backup tool above. Pair it with Kopia or Restic for the Jellyfin config, and use Snapraid only for the media pool.
6. rclone, best for fast one-way copies to cloud buckets
rclone is the swiss-army knife for moving files between local disks and 50+ cloud back-ends. For Jellyfin protection, its bisync and sync modes plus rclone crypt make it a reasonable backup layer on top of the metadata, and a common way to push a compressed weekly Jellyfin config archive to a cold storage bucket for a few dollars a month.
Where it falls short: rclone is copy-based, not snapshot-based. It does not keep historical versions unless you script rotation, and dedup only happens if the remote supports it natively.
Pricing:
- Free: unlimited, open-source.
- Paid: no paid tier.
Platforms: Windows, macOS, Linux, FreeBSD.
Download: rclone downloads or GitHub source
Bottom line: best used alongside a real backup tool for offsite copies, not as the only backup layer.
7. Syncthing, best for continuous file-level replication
Syncthing replicates folders between two or more machines in near real time, encrypted in transit, no cloud middleman. For a Jellyfin server, a second machine (an old NUC in a closet, a friend’s Pi) mirrors the config directory continuously so a drive failure never costs more than the last minute of activity.
Where it falls short: it replicates whatever state the source has, so accidental deletions propagate. Pair it with a snapshot tool that keeps versions on the receiving end.
Pricing:
- Free: unlimited, open-source.
- Paid: no paid tier.
Platforms: Windows, macOS, Linux, FreeBSD.
Download: Syncthing downloads or GitHub source
Bottom line: the continuous-replication layer that makes hourly backups feel unnecessary for the config directory. Do not use it alone for point-in-time recovery.
8. Sanoid, best for ZFS snapshot management
Sanoid and its companion Syncoid manage ZFS snapshot policies (hourly, daily, monthly, yearly), prune the old ones, and replicate datasets over SSH to a second pool. For a Jellyfin server on TrueNAS or a Proxmox ZFS root, Sanoid gives instant local point-in-time restores that cost near zero disk space, and Syncoid keeps a warm offsite copy in sync.
Where it falls short: the entire system requires ZFS. Fine on Linux and FreeBSD, awkward on macOS unless you run OpenZFS, unavailable on plain Windows.
Pricing:
- Free: unlimited, open-source.
- Paid: JRS support subscriptions available.
Platforms: Linux, FreeBSD, macOS with OpenZFS.
Download: GitHub source
Bottom line: the fastest local recovery in the list if the server already runs ZFS, and near-zero storage cost.
How to pick the right one
The XDA piece got the framing right: no single tool is protection, a stack of two or three is.
- If the household is one Jellyfin server and one cloud destination, use Kopia with a Backblaze B2 target. It is the closest thing to “one tool that does everything” in the list.
- If the server is scripted and there is a dedicated backup box on the LAN, use BorgBackup to the box and rclone to send weekly config archives to a cold cloud bucket.
- If Jellyfin lives on TrueNAS, use Sanoid for local snapshots, Syncoid for offsite ZFS send, and forget every other tool on this list.
- If the media pool is enormous and the goal is drive-failure survivability rather than backup, add Snapraid on the media drives and stop worrying about cloud fees for that volume.
- If nobody in the house wants to touch a CLI, install Duplicati with a Backblaze B2 target and run a real restore test every month.
- If the server config folder needs zero-lag replication to a second box, run Syncthing on both. Add Kopia on the receiving box so accidents on the source do not wipe the mirror.
FAQ
What is the fastest way to protect a Jellyfin server?
Install Kopia, point it at the Jellyfin config directory and one media folder, and set a Backblaze B2 target. That single step covers metadata, watch history, and one media root for a few dollars a month.
Do I need to back up the actual movie files?
Not if they are re-downloadable. Metadata, custom posters, playlists, users, and watch history are what hurt to lose. Media parity via Snapraid is often enough for the files themselves.
Can Kopia and Restic back up to the same bucket?
Yes, use separate paths. The two tools produce incompatible repository formats, so they need their own directories inside the same bucket to avoid stepping on each other.
Is Syncthing a backup?
No. It replicates whatever the source has, including deletions and mistakes. Treat it as high-availability replication and pair it with a snapshot tool.
How often should I test a restore?
Once a month is the industry line and it matches what actual homelab operators say on the Jellyfin subreddit. A backup that has never been restored is not a backup, it is a hope.
What about ransomware on the Jellyfin server?
Use Borg’s append-only mode or S3 object lock on the destination. Any backup that the server can also delete is a backup ransomware can also delete.