Find duplicate and near-duplicate photos
Drop a set of photos and see which are identical (SHA-256) and which just look alike (perceptual hash, with an adjustable threshold). Results come in groups and can be exported.
Drop images here, or pick them from your device
Stays on your device. Nothing is uploaded.
Processing on this device
How to use it
- Add your photos. HEIC and common formats work.
- Wait for hashing to finish.
- Review exact duplicate groups, then similar groups. Adjust the similarity threshold.
- Export the report if you want it.
What it keeps
- Your files, which are only read.
What it removes or changes
- Nothing changes on disk.
Limits
- It cannot delete files on your disk. A web page has no permission to do that. Use the report to remove duplicates yourself.
- Perceptual similarity is a guess. Check groups visually before deleting.
- A re-saved or converted copy of the same photo is not an exact duplicate, but may appear as similar.
Compatibility
Exact matching works for identical bytes. A HEIC and its JPG copy are different files, so only the similarity check can pair them. Use a lower threshold to be strict and a higher one to catch edits.
Privacy
Hashes are computed in your browser. Files are not uploaded and the report is created locally.
Exact versus similar matches
Exact matching with SHA-256 is certain: two files with the same hash are the same bytes. Perceptual hashing is useful for bursts, edits and converted copies, but can make mistakes in either direction. Delete exact duplicates with confidence. Look at similar ones with your own eyes.
Troubleshooting
Obvious duplicates are not grouped as exact.
They differ in bytes, for example after re-saving. Check the similar groups.
Too many unrelated photos grouped.
The threshold is too loose. Lower it.
It is slow on a big folder.
Hashing many large photos takes time. Work in batches.
Frequently asked questions
Can it delete duplicates?
No. It cannot delete files on your disk.
How are similar photos found?
With a 64-bit perceptual hash and a threshold you set.
Is the report private?
Yes. It is created in your browser.