TV\Breaking Bad\Season 01\
- Breaking Bad S01E01.mkv + .eng.srt
- Breaking Bad S01E02.mkv + .eng.srt
4.6 GB → 0.7 GB−85%
Because size matters
A video lands in a watched folder. Compressarr transcodes it through HandBrake, files it into an organized library, deletes the leftovers, tells Sonarr and Radarr it's handled, and pings you when it's finished. You never touch it.
v2.1.7·Free & open source, GPLv3·Runtime included
01 How it works
Whatever your downloader drops in the folder — episodes, films, subtitles, artwork — comes out the other side smaller, renamed and shelved where your media server expects it.
TV\Breaking Bad\Season 01\
4.6 GB → 0.7 GB−85%
Movies\Caddyshack (1980)\
3.8 GB → 0.6 GB−84%
The source folder is left empty behind it — originals kept, deleted or recycled as you choose. Figures shown are illustrative; your savings depend on the source.
02 The pipeline
Every file takes the same path, one at a time. You decide the order — drag the queue around mid-run if you want — and interrupting a run only means the next launch picks up where it stopped.
Each lane's input folder is scanned for new video — once on demand, or continuously on an interval you set.
Every file is classified as a TV episode or a movie from its own filename. No separate lane for each.
HandBrakeCLI transcodes with that content type's preset, streaming live percent, fps and ETA to your browser.
The result lands in Show\Season NN\ or its own movie folder — subtitles, artwork and .nfo files along with it.
The original is kept, deleted or recycled as you choose, and emptied-out source folders go too. Anything that cannot finish — a locked file, a dropped network share — is retried on the next pass rather than quietly marked done.
Sonarr or Radarr is told the episode or movie is handled, so it never gets re-grabbed.
A standalone HTML report of the run, and word of it wherever you want — Discord, Slack, Telegram, ntfy, a webhook or a Windows toast, per run or as a daily digest.
No AI, by design
Compressarr contains no AI or machine learning at runtime. Movie/TV detection, file matching, and renaming all run on plain, inspectable regex pattern matching — the same deterministic logic every time, nothing generative involved.
S01E011x01Movie Title (1980)
03 The interface
Compressarr runs as a tray icon with no window of its own. Everything else happens at localhost:1212 — or from the couch, on your phone. Rebuilt in 2.1 around a sidebar and a toolbar that keeps monitoring state and CPU in view on every page — and since 2.1.6 the whole thing is responsive and installs as an app on a phone or tablet.

The control surface. One toggle starts and stops monitoring; Pause holds the current encode without losing it, Run Now skips the wait, Abort kills the running HandBrake process outright. Every queued file can be dragged into a new order — or sent straight to the top or bottom — skipped, removed, or given a different preset while the queue is running. Since 2.1.3 the state card also estimates when the whole queue will finish, from throughput it has actually observed. Monitor page on the wiki

As many lanes as you want. Each has its own input and output folders, and routes Movies and TV separately — a preset and a destination path for each, so a kids' lane can land somewhere entirely different from the main one. Every path field browses the server's filesystem, not your laptop's. Lanes explained on the wiki

Everything in one place. Point it at HandBrakeCLI — or let it find and install one for you — then set how files are handled, what happens when a destination file already exists, and how long logs are kept. Further down: scheduled backups of your whole setup, export and import to move machines, and optional FileBot pre-processing that renames and organises files before a lane even scans them. Every setting on the wiki

Told wherever you actually are. Discord, Slack, Telegram, Pushover, ntfy, Gotify, Notifiarr, IFTTT or a webhook of your own — each channel picks its own trigger, and a Test button proves it works before you rely on it. Prefer a summary to a running commentary? Any channel can send a daily or weekly digest instead of a message per run. And the message itself is yours — Minimal, Standard and Detailed presets, or a free-text template built from 18 fill-in tokens. Setting up notifications on the wiki

What you got back. Rolling totals for the day, month and year, now with the time spent earning them, then every run inside your retention window. Some rows go negative, and that is the honest answer: re-encoding a file that was already efficiently compressed makes it slightly bigger. The savings come from large, lightly-compressed sources — across 237 files and 593 GB on a machine running for several weeks, the all-time figure settles at 74%. Reading the history on the wiki

A report you can keep. Every run writes a self-contained HTML file — per-lane results, disk saved, how long it took, anything that errored — numbered and stored, openable long after the app has closed. Reports explained on the wiki
Screenshots use representational test data, not real media. Your own speed, file sizes and savings will vary with your sources, hardware and presets.
It runs from the system tray, and everything else happens in your browser.
Windows·Signed installer·GPLv3
downloads across all releases
Two installers The button gives you the Full build — it carries its own .NET runtime, so there is nothing to install first. If you would rather not download 262 MB, the regular installer is 157 MB and needs the ASP.NET Core 10.0 Runtime once, from Microsoft.
First time? The setup walkthrough takes you from install to first conversion.
Compressarr is signed with a real, trusted publisher certificate through Azure Trusted Signing — so Windows shows the publisher name rather than the “Unknown Publisher” warning earlier versions triggered.
Windows still scores a download partly on how many machines have already run that exact file, so a brand-new release can occasionally prompt until it builds reputation. If it does, click More info → Run anyway. That gets rarer with every release now that the signature is trusted.