Find duplicate photos — without deleting the wrong one

Most duplicate finders tell you two files match and leave you to trust them. This one confirms every match byte for byte, shows you every copy side by side, and sends what you choose to the Recycle Bin rather than nowhere.

Press Ctrl+D in QuickImageViewer. It scans every folder it knows, groups the copies, and lists them with the folder each one came from. Free, part of the viewer, and nothing is deleted unless you say so.

Why "it found a match" is not good enough

A duplicate finder that is wrong deletes a photograph. That is not an inconvenience to be corrected later — for family pictures it is the only copy, and it is gone.

Most tools stop at a hash. A hash is very strong evidence and it is still evidence: a hash maps many possible inputs onto one value, and "no collision has been observed" is not the same claim as "these two files are the same". Others go further the wrong way and match visually similar images, which finds your edited version and your original and calls them duplicates.

What this does instead

  1. Group by size. Two files of different sizes cannot be identical, so almost nothing is opened. On a library of tens of thousands of pictures this eliminates nearly all of them without a single read.
  2. Hash what is left. Only files that share a size with another are opened and hashed in full.
  3. Confirm byte for byte. Every group that survives the hash is then compared byte by byte before it is reported. This is affordable precisely because it runs last: what reaches it is a handful of files that already agree twice over, so it confirms rather than searches.

The consequence of being wrong here is a deleted photograph, so the rule is: identical copies only. A re-encoded, resized or rotated version is a different file and is deliberately not listed — even though a looser tool would report it and look cleverer for doing so.

Seeing them before you choose

Results open in the Find panel, and each row is numbered by group1. 1. 1. 2. 2. — so it is obvious at a glance which copies belong together. Every row shows the folder it came from, compressed from the middle so the drive and the last folder both survive: those are exactly the two things that tell two copies apart.

Click a row and every copy in that group appears side by side at the bottom of the panel, with the selected one framed. Identical files usually differ only in name and location, and looking at them together is the only way to be sure before you act. Clicking a thumbnail selects that copy.

Resolving one

Right-click a row or a thumbnail for three choices: open it, show it in Explorer, or send it to the Recycle Bin.

Never a straight delete, deliberately. A choice made at speed from a list has to be reversible, and Windows already provides the undo — it costs nothing to route through it. A listing is also written to qivDuplicates.txt beside the program, so the whole scan can be read outside the app or kept as a record.

What it does not do

Questions

Does it cost anything?

No. QuickImageViewer is free and open source under the AGPL — no advertising, no telemetry, nothing to buy. The duplicate finder is part of the viewer, not an add-on.

Do I have to install anything?

No. It is a single executable of about 9.7 MB with no installer and no Visual C++ Redistributable. Put it anywhere and run it; to remove it, delete the file.

Will it slow my machine down?

The scan runs on a background thread and the viewer stays usable. The size-grouping step means the great majority of your files are never opened at all.