Storage / Beginner

Find duplicate files on Mac without paying for an app

Published Jul 21, 2026 · 6 min read · macoptimize

Before spending money on a duplicate finder, it is worth checking whether duplicates are your problem. We have seen plenty of Macs where the owner was certain duplicates were the cause, and the scan found 500MB of repeated photos next to 40GB of forgotten device backups. Duplicates are rarely the biggest item, but they are real and they are easy to find.

Method 1: Finder smart folders for obvious copies

Most duplicates announce themselves in the filename.

  • Open Finder and press Command F.
  • Set the search scope to your home folder.
  • Add a rule: Name contains "copy".
  • Add another with Any selected: Name contains "(1)".
  • Sort by name and work through the list.

This catches the piles that come from dragging files between folders and downloading the same attachment twice. It will not catch identical content saved under different names, which is where the next method helps.

Method 2: fdupes for byte level matching

fdupes compares files by size first and then by content hash, so it finds true duplicates regardless of filename. Install it with Homebrew, then scan a directory:

brew install fdupes
fdupes -r ~/Documents

Add -S to see the size of each set, which is how you prioritise:

fdupes -rS ~/Documents | head -60

To remove duplicates interactively, letting you decide each set:

fdupes -rd ~/Documents

Read the prompts carefully. Every duplicate finder, free or paid, is only as good as the decision you make about which copy is the original. Do not add -N (which keeps only the first file automatically) to a folder containing your only copy of anything.

Method 3: look for visual patterns

Duplicate media has a habit of revealing itself visually. Two identical large files appear as two identical large blocks near each other, which is faster to notice than reading a list of checksums. Screenshots, exported images and video takes are the usual finds here, and a treemap is well suited to spotting them.

Spotting them in macoptimize

The Analyze tab draws each folder as a treemap of real sizes. Duplicate images or video exports show up as repeated blocks of the same size, and you can click straight to the path to confirm before deleting anything. No separate duplicate scanner needed for the obvious cases.

Where duplicates actually come from

  • Photo libraries and exports. The same shot exported at three resolutions for different clients.
  • Backups of backups. A folder copied to an external drive and back, leaving two trees that overlap.
  • Download folders. The same PDF saved once per meeting.
  • Design assets. Versioned files where every iteration was kept, and only the last one matters.
  • Node and build output. Identical source files copied into every package of a monorepo.

The safety rules

  1. Never run an automated duplicate deletion across your only backup.
  2. Check that the file dates and sizes match before removing anything.
  3. For photos, compare the pixel dimensions and the capture date, not just the file name.
  4. Move to the Trash rather than deleting permanently, so a mistake is recoverable for a few days.

The realistic expectation

On a well organised Mac, duplicates account for 1GB to 10GB. On a machine with years of unmanaged exports, it can be far more. The way to know is to measure rather than assume, and to check the caches, backups and developer folders at the same time, because that is where the larger numbers usually sit.

The hash method, if you want certainty

Comparing by name finds some duplicates and misses the rest. Comparing by content finds all of them and takes longer. A middle path that is usually good enough: group files by size first, since identical files always share a size, and only hash within groups:

find ~/Documents -type f -size +1M -exec md5 {} + 2>/dev/null | sort | uniq -w32 -dD

Read it as follows: find collects files over a megabyte, md5 prints a hash and a path, sort groups them, and uniq -w32 -dD finds duplicate hashes and prints every matching line, so you get the full set of copies rather than one representative. Swap md5 for shasum if you prefer a slower, stronger check.

Two identical files that share a size and a hash are genuinely identical. That is the point at which deletion decisions are safe to make.

Where duplicates actually cost you

  • Downloads. The same PDF, installer or asset pack fetched twice is the most common source, and the easiest to clear.
  • Design exports. final.png, final-v2.png and final-v2-copy.png are frequently byte identical, because the export ran twice with no change.
  • Photo imports. Importing the same card twice, or importing from a phone after a partial import, creates exact copies inside the library.
  • Project folders. Cloned repos and copied asset directories carry their own duplicates along.

Notice that device backups and build output are not on the list. Those are large, but they are not duplicates, and treating them as such is how people delete something they needed.

When not to bother

Duplicate hunting has a poor ratio of time to space on most machines. A serious pass over a home folder might return 1GB to 8GB, while clearing build output in one folder returns more in one command. Do the duplicates pass when you have already handled the caches, the snapshots and the large files, and treat it as tidying rather than as the fix.

A visual shortcut

In macoptimize, the Analyze tab draws each folder as a treemap sized by real bytes. Repeated identical blocks of the same size are visible without running any comparison at all, and clicking one shows the exact path. It is the quickest way to catch the obvious cases before deciding whether a proper scan is worth the time.

FAQ

Is fdupes safe to use on my whole home folder?

The scan is safe, the automatic deletion is not. Scanning only reads files. The risk is in flags like -N that pick which copy to keep without asking, because the file it keeps may be the one linked from a project. Always run interactively with -d, or move rather than delete.

Do duplicate photo finders handle Live Photos correctly?

Not always. A Live Photo is a still image plus a short video that reference each other, and a tool that treats them separately can leave you with a still that no longer animates. Use the Photos app's own duplicate detection for anything inside a library.

What if the duplicates are inside a Photos library?

Do not touch the library package by hand. Open Photos and use its built in duplicate finder, which understands the structure and keeps the correct copy. Editing the package directly can corrupt the library, and a repair afterwards is slow and sometimes partial.

How much space do duplicates usually account for?

Less than people expect. One to eight gigabytes is a typical result on a home folder that has never been cleaned, while the same machine often has 40GB in caches and snapshots. Check those first if space is the goal.

Can I move duplicates somewhere else instead of deleting them?

That is the safer habit, especially for photos and documents. Move them to an archive folder or an external drive, wait a month, and delete if nothing broke. It costs nothing and removes the risk of deleting the only copy of something that mattered.

Or let it do the work

macoptimize scans the folders in this guide, shows the real sizes, and clears what you select. $20 one time, covers 2 Macs.