Troubleshooting & Help

Finding duplicate images on a Mac and the ones that only look alike

By the Muse team· 5 August 2026· 6 min read

macOS already has two free ways to find duplicate images: Photos' own Duplicates tool for anything already in your library, and a Terminal command that checksums files anywhere else. Both only catch copies that are genuinely identical. The resized, re-saved or screenshotted repeat that actually clutters a collection is a different problem.

A folder of images always ends up with repeats in it. A screenshot saved twice by accident, a reference exported at two different sizes, the same photo downloaded from two different tabs. Finding the exact copies is a solved problem: macOS can already tell you, in two different ways, when two files are genuinely the same. Finding the near copies, the version that has been resized or re-saved somewhere along the way, is a different job entirely, and neither tool below can do it.

Here is what actually works, starting with what is already on your Mac for free.

Does Photos already find your duplicates?

Since macOS Ventura, released in 2022, Photos has had a built-in Duplicates tool. Open Photos, look under Utilities in the sidebar, and if your library has any repeats they surface on their own in a Duplicates collection. Apple's own guide to removing duplicate photos and videos on Mac covers the mechanics: select the ones you want merged, click Merge, and one original takes the place of the group. Anything removed goes to Recently Deleted first, so you have thirty days to change your mind before it is gone for good.

It is more capable than a simple copy check, too. It catches more than exact copies: pairs that are not byte-for-byte identical but close enough to be the same image, a photo re-shared through an app that stripped its metadata, or a burst of near-identical shots taken a second apart. Apple does not publish how the matching works, and in practice it is good rather than exhaustive, so treat it as a strong first pass rather than the last word. That is genuinely useful, and it costs nothing.

The catch is scope. Photos only looks inside your Photos library. Anything sitting in Downloads, on the Desktop, in a folder of design references, or anywhere else in Finder never gets checked, because it was never imported.

What Finder can do with everything else

For images that live outside Photos, Finder gives you two honest tools and no automatic answer. Switch a folder to List view (Command-2) and click the Size column to sort largest to smallest; two exports of the same image at similar dimensions often end up sitting near each other. Or use the search field with Kind set to Image and a size range added, which narrows a cluttered folder down to a shorter list worth a closer look.

Neither tool compares what is actually inside a file. Both just sort or filter what is already there, which means the last step is always you, scrolling and comparing by eye, assuming Finder is actually rendering previews to compare in the first place. If a folder shows blank icons instead of thumbnails, what to check when image thumbnails aren't showing on a Mac is worth a look before you go any further. That works for a folder of forty images. It stops working long before a folder reaches four hundred.

How do you find exact duplicates with Terminal?

For an exact answer outside Photos, Terminal has one built in: a checksum. Every file can be run through a short calculation that produces a fixed code based purely on its contents. Two files with identical bytes always produce the identical code. Change even one pixel, or re-save the same picture at a slightly different quality setting, and the code comes out completely different, every time.

Open Terminal, found in Applications then Utilities, paste the line below, changing the folder path if your images live somewhere other than Pictures, and press Return.

  1. Run the command. find ~/Pictures -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" -o -iname "*.heic" -o -iname "*.gif" \) -exec md5 -r {} \; | sort > ~/Desktop/duplicate-check.txt
  2. Open the result. A file named duplicate-check.txt appears on your Desktop. Double-click it to open in TextEdit.
  3. Read down the list. Every line starts with a long code followed by a file's full path, sorted so that matching codes sit on consecutive lines. Two lines that start with the same code are byte-for-byte identical files.

This command only writes a list. It does not delete anything, and that is deliberate. Never point a script at your files and let it delete on your behalf without checking first. Open both files yourself, confirm they really are the same image, then move the one you do not want to Trash by hand. Empty the Trash only once you are certain, and do it last, after everything else.

Exact duplicates are the easy problem

Everything above, Photos' merge tool, a Finder sort, a Terminal checksum, is built to catch the same kind of thing: two files that are the same, or close enough for an algorithm to say so with confidence. That covers less of a real collection than it sounds like it should.

The image that actually clutters a reference library is rarely an exact copy. It is the same picture saved twice in two different ways: a Pinterest pin saved as a screenshot and also saved as a link, a reference exported at 800 pixels wide and again at 2,000, the same photo passed through three apps until its compression looks nothing like the original on disk. Visually it is one image. On disk it is three unrelated files with three unrelated checksums, and no hash, no matter how it is calculated, will ever tell you they match.

That is the gap none of the tools above close, and it is usually the bigger one.

Where seeing everything at once helps

The honest fix for a near-duplicate is not a smarter algorithm. It is being able to see everything at once. A resized repeat is obvious the moment you are looking at both images side by side. It is invisible in a file list headed IMG_4821.jpg and IMG_4821 (2).jpg, because a filename carries none of what the picture actually looks like.

This is the one honest thing a visual library changes. Muse lays a collection out as a grid of the images themselves rather than a list of names, so a near-duplicate catches your eye the way it never would scrolling Finder. It also runs the same exact-match check Terminal does, quietly, on its own: when something you save already matches a file already sitting in your library, byte for byte, the two merge into one item automatically rather than adding a second copy. That covers the easy case. The harder case, the resized or re-saved repeat, still comes down to a person recognising it, and a grid is simply a better place to do that than a folder of filenames.

None of this needs an app to start. Photos will catch what is already in your library, and the Terminal command above will catch exact copies anywhere else, both for free. A visual library is worth it once the near-duplicates, the ones no checksum will ever find, are the pile actually slowing you down.

Frequently asked

Does Photos on Mac find duplicate images automatically?
Yes. Since macOS Ventura, Photos has a built-in Duplicates collection under Utilities that surfaces matches on its own, including near-identical copies like a downsampled repost. It only checks images already inside your Photos library, not files sitting in Finder folders such as Downloads or the Desktop.
Can I find duplicate images on a Mac without installing anything?
Yes. Photos handles anything already in your Photos library for free, and a single Terminal command can checksum any folder of images to find files that are byte-for-byte identical. Both are already built into macOS.
Why doesn't a checksum find a resized or re-saved copy of an image?
A checksum is a fingerprint of a file's exact bytes, not of what the picture looks like. Resizing, recompressing or re-saving an image changes those bytes even when it still looks identical, so the fingerprint changes too and the two files no longer match.
Is it safe to delete images straight from a Terminal duplicate list?
Only after you check them yourself. The command that lists duplicates does not delete anything. Open each matching pair, confirm they are really the same image, move the one you do not want to Trash by hand, and empty the Trash last, once you are certain.

Stop hunting for near-duplicates by eye

Free for 30 days. Then $29 once, and it is yours.

Written by the Muse team

We build Muse, a native Mac app that keeps everything you collect in one private library and finds it again in seconds.