When duplicate photos have different filenames
iPhone renames, AirDrop suffixes, and manual renames make filename-based dedupe useless. Here's the fix.
Most simple “duplicate photo finders” rely on filenames. That works terribly for photos. iPhone camera roll exports rename files. AirDrop adds suffixes when there’s a conflict. iCloud Photos uses different names than the original IMG_XXXX. And anyone who’s organized photos manually has renamed batches at some point. A photo named IMG_3847.HEIC on one device might be 2024-03-15 16.32.jpg on another and family_dinner_5.heic somewhere else — same picture, three names.
Why filenames lie
Filenames change for plenty of reasons:
- iPhone exports often number from 1 in each batch, so
IMG_0001exists fifteen times across as many batches. - AirDrop appends
2or(1)on conflict. - Image Capture lets you set a custom rename pattern.
- macOS Finder appends
copyand2during folder merges. - Photos.app exports use date-based names by default.
- Manual rename — for organizing, sharing, or just preference.
None of these change the photo. The bytes inside the file stay the same.
Content-based dedupe with Dupe
Dupe ignores filenames entirely. It computes a SHA-256 hash of the file’s bytes — the actual image data plus metadata — and groups files by hash.
- Install Dupe and open it.
- Click “Add Folder” and add every folder where photos might live — Pictures, Desktop, Downloads, external drives, iPhone backup folders.
- Click “Scan.”
- Browse duplicate groups. Each group shows you the different filenames each copy goes by, plus full file paths.
- Pick which name/copy to keep, trash the rest.
A subtlety: if you renamed a photo in Finder, Dupe still sees it as the same file as its un-renamed counterpart elsewhere. But if you used an app to re-export a photo and gave it a new name (say, Photos.app exporting a JPEG of a HEIC), the export has different bytes and isn’t a duplicate. That’s correct — those are two different files of the same scene.
Edge case: EXIF strip changes the bytes
If a photo has been through a service that strips EXIF metadata, the resulting file has different bytes than the original even though the visible pixels are identical. Dupe will treat them as separate files. This is the same trade-off as the previous tip about exact-match versus similarity matching.
Safety
- Trash-only deletion. 30-day recovery.
- Byte-identical matching — no false positives.
- The Photos.app database is excluded.
- Hidden folders and system paths are skipped.
For most photo libraries that have been around for years across multiple devices, content-based dedupe finds duplicates that no filename-based tool would catch.
More Dupe tips
-
Apple Photos Duplicates album — what it catches and what it misses
The Photos app Duplicates album is handy, but it has real limits. Here's what it finds, what it doesn't, and how to fill the gaps.
-
Clean up leftover files from uninstalled apps on Mac
Dragging an app to the Trash doesn't remove all its data. Here's where the leftovers live and how to clean them.
-
Clean up your Mac without buying a cleaner app
Most paid cleaner apps do things macOS already does. Here's a free, manual workflow that's just as effective.
-
A no-bullshit guide to cleaning up your Mac's disk
Skip the SEO bait and the sketchy cleaner apps. Here's what actually works to reclaim disk space on a Mac.