DupeOut
Find and clean duplicate photos, on-device.
Smart clustering catches bursts and near-identical shots that byte-match cleaners miss. Bad Photos surfaces corrupted, blurry, and pocket-shot accidents. A 30-day Trash means nothing's ever truly gone until you say so. No cloud, no analytics, no tracking — your library stays on your phone.
Requires the TestFlight app (free) · Spaces limited.
What you get
Smart clustering
Vision feature embeddings group photos that look like the same scene — same-moment bursts, near-duplicates, semantically similar reshoots. Not just exact byte matches.
Strict / Balanced / Loose
Tap to switch matching strictness without rescanning. Strict for high-confidence dupes only. Loose for "find me everything that looks like this." Balanced is the daily default.
Bad Photos detection
Five categories with multi-signal gates: corrupted files, blown-out frames, pocket shots with the lens covered, blank uniform captures, and out-of-focus shots. Per-category bulk delete.
30-day Trash
Every deletion goes to a local 30-day Trash first. Restore brings the photo back with its Live Photo pairing intact. Permanent purge happens automatically after the window — or whenever you say.
100% on-device
Hashing, embedding, clustering, and bad-photo detection all run locally via Apple's Vision framework. Zero network calls. No analytics. No third-party SDKs. Your photos never leave your iPhone.
Live Photo aware
Live Photo + still pair detection so you can choose whether to keep the motion or just the still. iCloud-only photos transparently download for scanning the way Photos.app handles them.
Manual keeper override
The ranker picks a keeper per cluster automatically — sharpest, biggest, latest. Disagree? Swipe in the cluster detail and tap Make Keeper. The previous pick auto-stages for trash.
Siri Shortcuts
"Hey Siri, how many duplicates in DupeOut?" returns the count without opening the app. "Scan with DupeOut" or "Open DupeOut Trash" trigger the obvious actions.
Ten themes
Default, Boutique, Midnight, Ocean, Sunset, Forest, Paper, Aurora, Monochrome, Editorial. Each ships a custom app icon and re-tints the entire UI — accent colors, gradients, controls.
Privacy by default
DupeOut never sends your photos anywhere. There is no DupeOut server. Hashing, similarity embeddings, and clustering all run locally using Apple's Vision and PhotoKit frameworks. The app makes zero network calls during normal use. No analytics, no telemetry, no third-party SDKs, no advertising.