Make room with confidence
How to find exact duplicate photos on Mac without losing the keeper
Repeated downloads and export folders can leave several copies of the same image scattered across a Mac. Before removing them, separate exact file copies from similar-looking photographs. A cleanup tool should explain what it matched, show which file will remain, and let you review the result before anything moves.

Decide which library you are cleaning
Files in Downloads, Desktop, project folders and external drives are a different cleanup target from a managed Apple Photos library. Clean View checks indexed, locally available files in scanned folders. It does not search inside the Photos library package. Keep the Photos library intact and use its own controls for assets managed there.
Apple Photos offers a Duplicates collection and a Merge action for duplicates it identifies. Apple says merged extras move to Recently Deleted, where they can be recovered for 30 days. Follow Apple’s Photos duplicate-removal instructions for that workflow. Do not assume that a folder-based checker and Photos use the same matching rules.
Understand what exact duplicates means
Clean View groups candidate files by their current byte size, then compares SHA-256 hashes of their complete contents. Matching names are not enough, and matching sizes are only a first filter. A copied file with a different filename can be recognized; an edited version or a different encoding is not assumed to be the same file.
That distinction is useful when a project contains both a camera original and a delivery export. They may show the same subject while remaining different files. Likewise, burst photographs and alternate crops need visual judgment. Exact-duplicate detection is for repeated content, not for choosing the best expression, composition or edit.
Scan the folders you actually want to review
Use Clean View’s Scan menu to add relevant folders to the saved library, then open Duplicates. The duplicate check works from that index rather than walking the computer again. It reads candidate content locally on a background worker, reports progress and can be cancelled. Nothing is removed simply because a scan finishes.
Start with a manageable scope, such as a finished project and its download folder. Confirm that both locations are present in the library. A file outside the index cannot be part of the comparison. Unreadable files, changed files, symbolic links and cloud-only placeholders are skipped; a completed check is not a guarantee that every file on every attached service was inspected.
Review the keeper before selecting the extras
The results identify groups and a suggested keeper. Clean View prefers an existing hard-linked member, then the oldest modification date, with the path breaking ties. This makes the suggestion predictable; it does not mean that the chosen folder is necessarily your preferred archive location. Look at the paths before accepting the selection.
Select Extra Copies leaves one member of each group unselected. Search and format filters can hide a keeper from the grid, but they do not remove it from the safety check. If you need a different organization, first decide where the retained file belongs and finish any folder changes, then scan again so the results reflect the current library.
Move reviewed copies to Trash, then keep a recovery window
Clean View rechecks contents before selecting extras and again before a confirmed duplicate removal. It also checks the selected file and a surviving member immediately before each individual move. If a file changes or a survivor disappears, that group can be stopped. Removing every verified member of a duplicate group is refused.
Review the selection and the normal Move to Trash confirmation. Files already moved in a partially completed batch remain in Trash, and skipped files are reported. Command-Z can restore files moved by Clean View during the current session; after quitting, use Finder’s Trash to recover them. Keep a separate backup for important work, and do not empty Trash until you have checked the retained files in their usual applications.
Treat the space number as an estimate
The recoverable-space figure describes logical bytes in independent extra files, not guaranteed immediate free disk space. Hard-link aliases are counted once. APFS clones, compressed or sparse files, snapshots and keeping files in Trash can make the storage change differ from the displayed total. Apple’s APFS overview explains shared clone data and unallocated sparse blocks; its snapshot guide explains how saved volume states work. Use the estimate to prioritize a review, not as a promise of a particular capacity increase.
Results describe the files at the time they were checked. A library update, rename, Trash operation or Undo invalidates them; use Scan Again for current results. For routine prevention, keep one clear destination for approved exports and browse new downloads before copying them into several project folders. The Clean View library tools help you inspect those files while keeping originals in their existing locations.
Sources & further reading
Primary references checked for this guide. App-specific details describe Clean View 1.10.3.
A NATIVE MAC VIEWER
Try it with your own library.
Open, zoom and browse with Clean View. Your local files stay on your Mac. Free to download.
Download Clean View