ContextCleaner: see every entry in the Windows 11 right-click menu, and which app added it — on the Microsoft Store.

Last updated:

Guided workflow variation

Duplicate by content,not by filename.

DupeDoctor never decides two files are identical from their names or sizes. It confirms byte-for-byte identity with a full BLAKE3 hash — but only after cheap filters have removed almost everything from consideration.

Size grouping, then a 64 KB partial BLAKE3 hash, then a full BLAKE3 hash. Only files with identical full digests form an exact group, so renames are caught and false matches are not.

Pay once. Own it forever.

One-time purchase on the Microsoft Store · No subscription · Instant install

Buy through the Microsoft Store—instant install, automatic updates, and a Microsoft receipt for easy expensing. No account needed on our site, and no subscription on Store purchases.

Full DupeDoctor overview
One-time purchase No telemetry Local-first

windows · recycle bin only · blake3-verified · no network requests

If this sounds like your week

The fast way to find duplicates is also the wrong way.

Matching on filename and size is quick and produces confident-looking results that are wrong in both directions. Two unrelated files of the same length look identical to it. A copy you renamed does not look like a duplicate at all. Neither error is visible in the results list, which is the part that should worry you before you start deleting.

Where tooling usually breaks

Hashing everything is correct and unusably slow.

The obvious fix is to hash every file and compare digests. On a drive with hundreds of thousands of files that means reading every byte you own to discover that almost none of them are duplicates. Most of that reading is wasted, because a file whose size is unique cannot possibly have a byte-identical twin.

Where DupeDoctor lands

Spend I/O only where a duplicate is still possible.

DupeDoctor runs the cheap tests first. Files are bucketed by exact byte length, and any size that appears once is dropped without a single read. Surviving candidates get a BLAKE3 hash of their first 64 KB, and partial digests that appear once are dropped too. Only what is left is read in full. Hashing runs in parallel across cores, and a persistent cache keyed on size and modification time lets an unchanged file skip the read entirely on the next scan.

Pay once. Own it forever.

One-time purchase on the Microsoft Store · No subscription · Instant install

Buy through the Microsoft Store—instant install, automatic updates, and a Microsoft receipt for easy expensing. No account needed on our site, and no subscription on Store purchases.

Learn more about DupeDoctor

windows · recycle bin only · blake3-verified · no network requests

What you get

Feature highlights

Nine reclaim categories from a single scan

exact duplicates, copy-named files, similar photos, similar videos, duplicate music, large files, old files, installer/archive clutter, and empty folders — all under one "reclaimable GB" headline.

Content-verified exact matching

a two-tier size → partial → full BLAKE3 hash confirms true duplicates, so renamed copies are still caught and there are zero false positives.

Catches look-alike photos and videos

perceptual hashing clusters resized, cropped, and re-encoded copies that byte-for-byte tools miss, each with a similarity score — and they are never auto-selected for deletion.

Recycle Bin only, with real guardrails

deletion goes to the Recycle Bin after a pre-flight check that the volume will actually accept it, protected system locations are refused outright, and you are warned before a selection would leave a duplicate set with no copies.

Three reclaim actions

safe recycle, move-to-quarantine with collision-safe renaming, or replace exact duplicates with hardlinks — gated by a full BLAKE3 re-verification before relinking.

100% offline and private

no network capability in the build, no telemetry, no account, no cloud. Built on Rust + Tauri v2 with a small install and a one-time Microsoft Store purchase — pay once, own it forever.

Especially when

  • Find and remove duplicate files on Windows 11 without risking your only copy
  • Catch near-identical resized or re-encoded photos that byte-for-byte duplicate finders miss
  • Reclaim disk space safely with Recycle-Bin-only deletion and a warning before any set loses its last copy
  • Clean duplicates entirely on your PC without uploading private files to a web-based duplicate finder

Who benefits

Real-world scenarios

The renamed copy

You have the same document saved as "report.docx", "report-final.docx", and "report v2 FINAL.docx" and want to know whether they are actually the same file.

Names are irrelevant to the match. If the bytes are identical the three land in one group; if one differs by a single byte it does not, and you can see that rather than guess.

The very large library

A drive with hundreds of thousands of files, most of them unique, and you do not want a scan that reads the entire disk.

Files with a unique size never get read at all, and the partial-hash stage eliminates most of the rest. Only genuine candidates are read in full.

The repeat scan

You clean up, then run the scan again a week later to check what has accumulated.

The cache remembers digests for files whose size and modification time are unchanged, so the second scan does far less reading. It is validated per file, not trusted blindly.

Deep dive

The four stages, and the guard that runs between them

Exact matching happens in stages deliberately ordered from cheapest to most expensive, so that expensive work only ever runs on files that could still be duplicates.

Stage one: group by size. Files are bucketed by exact byte length and any bucket holding a single file is discarded. This costs no file reads at all — the size already came from the directory enumeration. On a typical drive this removes the large majority of files immediately, because being byte-identical requires being the same length first.

Stage two: collapse hardlinks. Before hashing anything, entries that are the same physical file reached through different paths are folded together, identified by volume serial number and file index rather than by path. Without this step a set of hardlinks would be reported as duplicates you could reclaim, which would be both wrong and pointless — they already share their storage.

Stage three: partial hash. Each remaining candidate gets a BLAKE3 hash of its first 64 KB. Partial digests are grouped, and again anything unique is discarded. This is where most surviving non-duplicates are eliminated, because files that share a size usually diverge early — different headers, different metadata, different first block. Reading 64 KB is dramatically cheaper than reading a multi-gigabyte file, so this stage buys most of the remaining speed.

Stage four: full hash. Only files that share both a size and a partial digest are read in full and hashed with BLAKE3 through a reusable buffer. A group is reported only when full digests match, which means the files are byte-identical. This is the difference between "probably a duplicate" and "the same bytes".

The guard between stages. Immediately before each hash pass, DupeDoctor re-checks that the file's size and modification time still match what enumeration recorded. A file that changed mid-scan is dropped rather than hashed, because a digest computed from a file that is being written is meaningless and acting on it would be dangerous. Scans of live directories are normal, and this is what keeps that safe.

Two related properties are worth knowing. Hashing runs in parallel across cores, so the full-hash stage is bounded by your storage rather than by a single thread. And every third-party parser the scanner touches runs inside a panic guard, so one malformed file is skipped and recorded rather than ending the scan — which is also why the release build deliberately keeps stack unwinding enabled instead of aborting on panic.

Trusted by pragmatic desktop users

Built for people who prefer tools that stay local.

Real workflows: focus timers that stay visible, batches that never leave the disk, and renames you can rewind.

Customer review 01

PinPoint: Always On Top saves me so much time as I can organize all my report materials without having to flip between windows or tabs. I love the fact that it is straightforward and simple.

Senior Accountant · Manufacturing Company · United States · PinPoint Reviewed About PinPoint
Customer review 02

I used to get so frustrated when my Taskbar would freeze and disappear. Taskbar Sentinel has eliminated that pain without subjecting me to another subscription.

Darren · Calgary, Alberta, Canada · Taskbar Sentinel Reviewed About Taskbar Sentinel
Customer review 03

OpticBatch and MetaForge are a lifesaver for me as a person with a passion for photography. They give me the ability to stay organized and keep personal information confidential when I post pictures online.

Sherri · United States · OpticBatch & MetaForge Reviewed Browse the full catalog

Quotes are shown with customer permission; names and locations appear as reviewers provided them.

Our Core Moat

Engineered to respect your system boundaries.

System Resource Monitor (Idle State Comparison)
Automata Labs low idle memory footprint compared to generic Electron applications

Lightweight Native Stack

Compiled Rust core wrapped inside an optimized Tauri shell. No heavy background node loops or duplicate Chromium engines cooking your memory footprint (<25MB idle RAM).

100% Local-First Privacy

Executes entirely on-device with full offline isolation. Absolute zero background telemetry policies, no metrics aggregation, and zero mandatory cloud-sync accounts.

Perpetual Fallback Licenses

Pay a single, clear one-time purchase price. Own your specific native software utility execution tier permanently without artificial subscription paywalls or ongoing usage tax.

FAQ

Straight answers—no glossary dump

How does DupeDoctor decide two files are duplicates?

By content. Files are grouped by exact size, then by a BLAKE3 hash of their first 64 KB, then by a full BLAKE3 hash of the whole file. Only matching full digests form an exact duplicate group, so the match does not depend on filename, folder, or timestamp.

Will it find a duplicate I renamed?

Yes. Names play no part in exact matching. A renamed copy has the same bytes, so it produces the same hash and lands in the same group.

Does it have to read my whole drive?

No, and that is the point of the staged pipeline. Files whose size is unique are never read. Of those that survive, most are eliminated after a 64 KB read. Only genuine candidates are read in full.

What happens if a file changes while the scan is running?

It is dropped from that scan. Size and modification time are re-checked immediately before each hash pass, so a file being written while you scan is skipped rather than hashed in an inconsistent state.

Are hardlinks reported as duplicates?

No. Files that are the same physical data reached through different paths are identified by volume serial and file index and folded together before hashing, since there is no space to reclaim from them.

What does it need to run?

Windows and the Microsoft Edge WebView2 runtime, which is already present on Windows 11 and updated Windows 10. It never asks for administrator rights, opens every file read-only while scanning, and refuses protected system locations for any destructive action regardless of your settings.

Is it private, and how do I get it?

DupeDoctor has no network capability at all — no HTTP client in the build, no network permission requested from Windows, and a content policy that forbids remote origins. Nothing is uploaded and there is no account or telemetry. It is a one-time purchase on the Microsoft Store; use the Microsoft Store button on this page for the current listing and price.

Reclaim the space.
Keep the file you meant to keep.

DupeDoctor confirms exact duplicates with a full BLAKE3 hash after a size and partial-hash pre-filter, clusters look-alike photos and videos with perceptual hashing, and only ever deletes to the Recycle Bin. Protected system locations are refused outright, and hardlink replacement re-verifies byte identity before it relinks. No network capability at all.

Pay once. Own it forever.

One-time purchase on the Microsoft Store · No subscription · Instant install

Buy through the Microsoft Store—instant install, automatic updates, and a Microsoft receipt for easy expensing. No account needed on our site, and no subscription on Store purchases.

Open full product page

Technical specifications

Technical specifications for procurement

Spec Implementation
Data Sovereignty Folder scans, hashes, and the persistent scan cache stay on your PC; file contents are read locally and never uploaded, and deletion only moves files to the Windows Recycle Bin
Telemetry Status None; the build ships with no network capability at all — verifiable with a network monitor (zero connections)
Core Runtime Rust (edition 2024) + Tauri v2 engine with multi-core BLAKE3 and perceptual hashing on a rayon pool; React 19 virtualized results grid
Network Requirements Fully functional offline; no HTTP client or network capability in the Tauri capability set, and a locked CSP forbids remote origins
Deployment Compatibility Windows 11 (recycle uses Windows shell APIs); one-time purchase on the Microsoft Store
Detection Exact (size → partial → full BLAKE3), copy-named, similar photos and videos (perceptual hash), duplicate audio, large/old files, installer clutter, and empty folders
Safety model Recycle Bin only with a pre-flight volume check, protected system locations refused outright, content-verified duplicates, similar matches never auto-selected, and a warning before a set loses its last copy
Reclaim actions Safe recycle, move-to-quarantine with collision-safe renaming, and hardlink replacement gated by a full BLAKE3 re-verification
Automation Watched folders, launch re-scan, native notifications, system tray, run-on-login, and auto-keep rules
Results workflow Virtualized grid, image thumbnails, side-by-side photo compare, filter/sort, CSV/JSON export, and reveal-in-Explorer