unsubbed.co

Czkawka

Multi-functional app to find duplicates, empty folders, similar images, and more.

Open-source disk cleanup, honestly reviewed. No marketing fluff, just what you get when you run it.

TL;DR

  • What it is: A free, open-source desktop utility written in Rust that finds and removes duplicate files, similar images, empty folders, junk, and a dozen other categories of storage waste [README].
  • Who it’s for: Anyone drowning in redundant cloud backup copies, photo libraries scattered across drives, or a Windows machine that’s been accumulating junk for five years. Technical users who want CLI automation. Non-technical users willing to spend 20 minutes learning an unfamiliar interface [1][3].
  • Cost savings: Free versus $30–$90 one-time fees for commercial duplicate finders like Gemini 2 or CleanMyMac subscription tiers. The only cost is setup time [README][2].
  • Key strength: Genuinely comprehensive — 14 distinct scan types covering everything from duplicate hashes to similar videos to bad file extensions, all in a single offline tool with zero telemetry [README][3]. At 30,000+ GitHub stars, it’s the most-starred open-source duplicate cleaner in existence.
  • Key weakness: Installation is confusing — GitHub releases list 39+ different assets and the multiple frontends (Krokiet, Czkawka GUI, CLI) with no clear recommendation for newcomers creates unnecessary friction [3]. macOS installation requires more technical steps than Windows [1][2].

What is Czkawka

Czkawka (pronounced tch•kav•ka, Polish for “hiccup”) is a disk cleanup utility that goes further than any single-purpose duplicate finder. Where most tools do one thing — find identical files — Czkawka runs across 14 categories: duplicates by hash or name or size, similar images by visual content, similar videos, duplicate music by tags or audio fingerprint, empty folders, empty files, temporary files, broken files, invalid symlinks, bad extensions, files with problematic names, Exif metadata stripping, and video conversion [README].

The project is maintained by a single primary developer (qarmin) and has accumulated 30,043 GitHub stars and over 1,000 forks — numbers that put it comfortably above every alternative in its category. It’s written in memory-safe Rust, runs with no internet access, and collects zero telemetry or usage data [README][3].

There are currently three frontends built on the same core library: Krokiet (the current recommended GUI, built on the Slint framework), Czkawka GUI (the older GTK 4 frontend, still receiving bugfixes), and Cedinia (an experimental Android touch-friendly frontend). There’s also a full CLI for scripting and automation [README]. The split between frontends is a source of confusion for new users — more on that in the installation section.

The practical use case that comes up most in reviews: you’ve spent years backing up photos to OneDrive, then Google Drive, then Dropbox. Each service created its own folder structure, slightly resized images, added compression. You now have 35,000 “unique” photos that are actually 160GB of the same vacation photos in three slightly different resolutions [1]. Czkawka’s Similar Images mode is the tool that cuts through that.


Why people choose it

The reviews converge on four things: it’s free, it’s fast, it’s private, and it does more than competitors.

On privacy. The XDA Developers review [3] is blunt about why this matters: “Other cleaner options, like CCleaner or Glary Utilities, tend to operate within something of a black box. I don’t know exactly what’s happening behind the scenes while running them.” Czkawka has no network access whatsoever — the source is on GitHub, you can read every line. For a tool that scans your entire drive and sees every file you own, that matters more than people admit.

On speed. Czkawka is multithreaded and caches results between scans. The XDA review [3] calls it “dramatically faster” than alternatives, noting that the first scan after adding a new directory takes time, but subsequent scans are “nearly instantaneous.” The MakeUseOf review [1] doesn’t quote specific benchmarks but implies the scan of a drive large enough to contain 35,000 photos completed without complaint.

On comprehensiveness. This is the comparison that matters against DupeGuru and FSlint. The README’s own comparison table shows Krokiet and Czkawka outperform every listed alternative on feature count [README]. DupeGuru finds duplicates. FSlint runs Linux-only. Bleachbit is a system cleaner, not a duplicate finder. Czkawka does all of that and adds similar-image detection, similar-video detection, music matching, symlink validation, and extension verification [README].

On the Rust choice. This comes up in every technical review. Memory-safe Rust means the tool doesn’t have the class of crash or corruption bugs that plague Python and C-based alternatives. For a tool that’s about to delete hundreds of files, that’s not a trivial point [README][4].


Features

Based on the README and first-hand review descriptions:

Duplicate detection:

  • Finds exact duplicates by file hash (Blake3, CRC32, XXH3), by size, by name, or by combinations [README][3]
  • Hash-based comparison catches files renamed or moved — not just name matches [1]

Visual similarity:

  • Similar Images — finds photos that are visually similar but not byte-identical: different resolutions, compression artifacts, watermarks, slight crops [README][1]
  • Adjustable similarity threshold — you decide how aggressive the match is [2]
  • Similar Videos — same concept applied to video files [README]

Audio:

  • Same Music — matches by metadata tags or by analyzing audio content (not just filename) [README][2]

Filesystem hygiene:

  • Empty Folders, Empty Files, Temporary Files, Invalid Symbolic Links — self-explanatory [README]
  • Broken Files — identifies files that are corrupted or invalid [README]
  • Bad Extensions — finds files whose actual content doesn’t match their extension (a .jpg that’s secretly a .png) [README]
  • Bad Names — flags files with special characters or other naming problems [README]
  • Big Files — surfaces the top N largest files in a given path [README]

Destructive/transform operations:

  • Exif Remover — strips metadata from images (privacy-relevant for sharing photos) [README]
  • Video Optimizer — crops static sections and converts to more efficient formats [README]

Operational:

  • CLI frontend for scripting and automation [README][3]
  • Cache support — repeat scans reuse prior results for unmodified directories [README][3]
  • Multi-language interface (Polish, English, Italian, others) [README]
  • Selection rules: auto-select duplicates by criteria like “keep oldest” or “keep in X folder” [2]
  • Exclude/include directory lists per scan [3]
  • Android app (experimental, Cedinia) [README]

Pricing: SaaS vs self-hosted math

Czkawka is free. There is no paid tier, no cloud version, no subscription. The license is MIT for the code outside the bundled Cargo app libraries, with CC BY 4.0 for icon assets [README license files].

The relevant comparison is against commercial alternatives:

What paid alternatives charge:

  • CleanMyMac X: subscription-based, roughly $34.95/year or higher depending on the bundle. Includes duplicate finder as one feature among many [market data — exact current pricing not verified].
  • Gemini 2 (Mac only): one-time purchase around $19.95. Duplicate-focused, polished Mac-native UI. Cisdem Duplicate Finder is in a similar range [2].
  • Cisdem Duplicate Finder: the Cisdem review [2] recommends their own product over Czkawka, particularly for Mac users. Pricing not cited in the review — treat as a competitor with a commercial interest in that recommendation.

The math for a typical founder: You spent $35/year on CleanMyMac to find duplicates once a quarter. You ran it three times and then stopped because the subscription renewal felt wrong for something you use four times a year. Czkawka is $0 and runs on Linux, Windows, macOS, and Android. The only cost is the 20-minute learning curve.

The more honest comparison: if you need to do this once — clear 160GB of photo duplicates off a new machine — a free tool you never pay for is obviously correct. If you need to do this on a fleet of machines on a schedule, the CLI makes automation straightforward [README][3].


Deployment reality check

Czkawka is a desktop application, not a server, so “deployment” means “getting it installed and running.” The XDA Developers review [3] captures the problem clearly: “Getting the app up and running took some finagling, especially since there are multiple versions of it per operating system… there are 39 different assets on GitHub.”

That’s the core installation issue. The GitHub releases page offers an overwhelming list of binaries: different combinations of Krokiet vs Czkawka GUI vs CLI, different architectures (x86, ARM), different OS versions, nightly vs stable. There’s no single recommended download for a first-time user.

What you actually want:

  • Windows: Download the krokiet-*.exe portable binary from GitHub releases. No installation required — run it directly [README].
  • Linux: Available in many distros’ package managers (Arch AUR, Flatpak, etc.) or compile from source. The README links to each frontend’s own installation guide [README].
  • macOS: This is where it gets harder. The Cisdem review [2] and MakeUseOf review [1] both flag that macOS installation requires more technical steps — likely due to Apple’s Gatekeeper requiring the app to be signed or exempted. If you’re not comfortable right-clicking and selecting “Open” while holding options, or running xattr in Terminal, factor this in.
  • Android: Cedinia is experimental. Don’t use it for production cleanup work [README].

What can go sideways:

  • Picking the wrong binary from 39 options is a real friction point, especially if you grab a CLI-only version expecting a GUI [3].
  • The older Czkawka GUI (GTK 4) still appears prominently in search results and documentation — it works, but the project is moving toward Krokiet as the primary GUI [README].
  • No auto-update mechanism — you check GitHub releases manually for new versions.
  • The dark-only UI was noted as a limitation in the Cisdem review [2]. If you need light mode, it’s not currently an option in the standard builds.

Realistic time to first scan: 5–10 minutes on Windows or Linux once you’ve identified the right binary. 20–45 minutes on macOS if you hit Gatekeeper friction or need to research which build to use.


Pros and cons

Pros

  • Completely free. No subscription, no one-time fee, no “pro tier” for basic features. MIT licensed [README].
  • 14 scan types in one tool. No other free duplicate finder covers this breadth — similar images, similar videos, music matching, broken files, bad extensions, Exif removal, video optimization [README][3].
  • Zero telemetry, zero network access. Czkawka cannot phone home. For a tool scanning your entire drive, this is a meaningful trust advantage over black-box commercial tools [README][3].
  • Genuinely fast. Multithreaded Rust implementation with scan caching. Repeat scans on indexed directories are near-instant [README][3].
  • Cross-platform. One tool covers Windows, Linux, macOS, and experimentally Android — important if you bounce between machines [README][1][3].
  • Similar Images actually works. The use case that motivates most people — cloud backup photo deduplication — is handled by perceptual hashing that catches resized and recompressed copies, not just identical bytes [README][1].
  • CLI for automation. Scripting bulk cleanup across directories is supported without a GUI dependency [README][3].
  • Selection rules. Auto-selecting which duplicate to keep (oldest, newest, in specific directory) reduces manual clicking in large result sets [2].
  • 30,000+ stars. Active community, recent commits, active issue tracking [README].

Cons

  • Installation is confusing. Thirty-nine release assets, multiple frontends with unclear guidance on which to use, and macOS Gatekeeper friction make first-run harder than it should be [3][1][2].
  • Dark mode only. No light theme in current builds. Minor for most users; dealbreaker for some [2].
  • Overwhelming for simple use cases. If you just want to find duplicates, the 14-tab interface can feel like a cockpit when you wanted a broom [2].
  • No macOS app store distribution. You’re downloading unsigned binaries from GitHub, which requires manual Gatekeeper bypass on macOS [1][2].
  • Experimental Android app. Cedinia is flagged as experimental in the README — don’t use it to make deletion decisions on a phone [README].
  • No cloud/remote scanning. Scans local paths only. No network drive integration beyond what your OS mounts as local [README].
  • Single primary maintainer. A project with 30K stars and one primary author is a bus-factor concern for long-term maintenance, though the contributor count and fork depth reduce this somewhat.

Who should use this / who shouldn’t

Use Czkawka if:

  • You’ve accumulated photo duplicates from multiple cloud backup services (OneDrive + Google Photos + Dropbox in the same folder) and want to recover the storage.
  • You’re on Windows or Linux and want a free, trustworthy alternative to paid cleanup tools.
  • You have a large media library (photos, music, video) and want perceptual similarity detection, not just byte-identical matching.
  • You want CLI automation for scheduled cleanup scripts.
  • Privacy matters to you — you don’t want a cleanup tool that connects to the internet.

Skip it (and use a paid tool like Gemini 2) if:

  • You’re on macOS and want a polished App Store experience without touching Terminal.
  • You want light mode and a simpler interface with in-app preview before deletion.
  • You’re non-technical and the GitHub releases page with 39 assets will cause you to give up and close the tab.

Skip it (and use BleachBit) if:

  • Your primary goal is system junk removal — browser caches, application logs, temp files — rather than personal file deduplication. BleachBit is built for that workflow specifically.

Skip it (and use DupeGuru) if:

  • You only need duplicate file detection and want the simplest possible interface. DupeGuru is older and less actively developed, but the UI is more approachable for first-time users than Krokiet.

Alternatives worth considering

From the README’s comparison table and the review sources:

  • DupeGuru — the traditional comparison. Python/Qt, runs on Linux, Mac, Windows. Simpler interface than Krokiet, duplicate-finding only, less actively developed [README comparison table].
  • FSlint — Linux-only, older, effectively unmaintained. Covered fewer scan types even when active [README comparison table].
  • BleachBit — covers temporary files and system junk, cross-platform, free. Not a duplicate finder. Different use case but frequently mentioned alongside Czkawka [README comparison table][4].
  • Cisdem Duplicate Finder — commercial Mac-focused tool. Better Mac UI and App Store installation. The Cisdem review [2] recommends it over Czkawka for Mac users, though note the obvious conflict of interest in that recommendation.
  • Gemini 2 — Mac-only, paid one-time purchase. Clean UI, smart auto-selection, no technical setup. Correct choice if you’re on Mac and don’t want to touch Terminal.
  • CleanMyMac X — subscription Mac utility that includes a duplicate finder among many features. More expensive, but broader cleanup scope if you want one tool for everything.
  • jdupes — command-line only, extremely fast, Unix-focused. For engineers who want the most efficient hash-based deduplication without a GUI.

For a non-technical Windows user who wants free, the realistic shortlist is Czkawka vs DupeGuru. Czkawka wins on features and active development. DupeGuru wins on interface simplicity. For Mac users willing to pay $20, Gemini 2 is an honest recommendation over dealing with Czkawka’s macOS friction.


Bottom line

Czkawka is the most capable free duplicate cleaner available, and it’s not close. Fourteen scan types, Rust performance, zero telemetry, CLI automation, and 30,000 GitHub stars make a strong case. The real barrier is installation friction — GitHub releases listing 39 assets, multiple frontends without clear first-run guidance, and macOS Gatekeeper friction add up to a tool that demands slightly more patience than it should. Once past that, it delivers: the Similar Images mode alone has recovered hundreds of gigabytes for people who bounced between cloud backup services and ended up with the same vacation album in three different compression formats [1][3]. If you’re on Windows or Linux and you’ve been paying for cleanup software, stop. If you’re on macOS and comfortable with Terminal, spend the 45 minutes — the payoff is real. If the command line sounds like a threat, spend $20 on Gemini 2 and skip the friction.


Sources

  1. Tashreef Shareef, MakeUseOf“This open-source app freed up 160 GB of duplicates I didn’t know I had” (January 23, 2026). https://www.makeuseof.com/czkawka-open-source-duplicate-file-cleaner-free-up-storage/
  2. Sarah Miller, Cisdem“Czkawka Review: Is It a Good Duplicate File Finder for You?” (Updated January 8, 2026). https://www.cisdem.com/resource/czkawka-review.html
  3. Patrick Hearn, XDA Developers“I found dozens of duplicate files hiding on my PC with this one free tool” (December 20, 2025). https://www.xda-developers.com/free-tool-helped-me-find-dozens-of-duplicate-files-hiding/
  4. Medevel“Czkawka: Hidden Files Taking Up Space? This Free App Reclaims GBs Instantly!”. https://medevel.com/tag/linux/page/2/
  5. TechNotes“Czkawka – Find & Remove Duplicates, Empty, Broken Files in Linux” (March 2021). https://tech.iprock.com/archives/date/2021/03

Primary sources:

Features

Integrations & APIs

  • Plugin / Extension System

Search & Discovery

  • Tags / Labels

Localization & Accessibility

  • Multi-Language / i18n

Mobile & Desktop

  • Android App
  • Mobile App