
You held the shutter down for a second and a half during the first dance. Your camera thanked you with fourteen frames of the same dip, and now, at your desk, they're fourteen separate decisions. Multiply by every moment you covered and near-duplicates are most of your cull. Here's how to burn through them.
Modern mirrorless bodies shoot fast enough that "one moment" routinely becomes a dozen files. And bursting is often correct in the field: blinks during formals, toddlers mid-launch, the bouquet toss. Insurance at capture time is cheap.
The bill arrives at the desk, and it's steeper than it looks, because near-duplicates aren't just more frames, they're the hardest kind of frame to judge. Perception research has a name for the problem: our ability to notice a difference depends on the size of that difference relative to the whole (the Weber's-law framing). Ten frames shot half a second apart sit below the threshold where differences jump out, so your eye hunts for something to grab and finds nothing. That hunt is where culls go to die, the frames that look most alike consume the most seconds each.
Add loss aversion, deleting nine frames feels like losing nine moments, even though the moment survives fully intact in the one you keep, and you get the classic outcome: all ten kept "for now," the decision deferred to your future self, who will face the same ten frames at editing time with less patience. (The full psychology is in why picking photos is so hard.)
The single biggest unlock: stop judging near-duplicates one at a time in the filmstrip. Scrolling frame-by-frame means holding frame 3 in memory while looking at frame 7, and comparison from memory is exactly what humans are bad at. Side-by-side comparison, by contrast, is what we're built for.
This grouping habit is the engine inside the two-hour wedding cull, and skipping it is one of the nine sins in our culling mistakes list.
First, the rule that protects you from yourself: if you've stared at two frames for more than a few seconds without finding a difference, there is no difference that matters. No client, no album designer, no future you will ever see what you can't see right now at full attention. Pick either, move on. Call it the 3-second rule. The exact count matters less than having a tripwire that ends the stare.
When you want the decision to be principled rather than random, run a fixed tiebreaker order, top-down, stop at the first clear difference:
| Priority | Check | Why it ranks here |
|---|---|---|
| 1 · Eyes & expression | Open, engaged, natural mouth | A blink or grimace kills a frame no matter how sharp it is |
| 2 · Hands & body | Relaxed hands, flattering angles, mid-gesture grace | Claw hands and awkward elbows are the second thing clients notice |
| 3 · Frame edges | Cut-off limbs, photobombers, exit signs, clutter | Edge problems are hard to crop or clone away later |
| 4 · Sharpness | Critical focus where it matters (near eye) | Only a tiebreaker: checked last, not first |
| 5 · Composition | Cleaner geometry, better light falloff | If you're down here, both frames were worth keeping anyway |
Notice sharpness sits fourth, not first. Pixel-peeping every duplicate is how a ten-frame burst eats five minutes; expression differences are visible at fit-to-screen and settle most ties on their own.
Keeping the runner-up costs you three times: storage (every spared RAW compounds across a year of shoots, see the RAW file management guide for what that does to your archive), attention (the same comparison ambushes you again at editing and album design), and gallery quality (if both survive to delivery, they compete, and the weaker one dilutes the stronger). Keep a second frame only when it's genuinely different, another expression, another composition, never because it was merely second-best.
Everything above works with software you already own. But duplicate grouping happens to be the part of culling machines do genuinely well: modern AI culling tools cluster visually similar frames automatically and pre-select the sharpest, eyes-open candidate in each cluster, so you review one suggested winner per moment instead of ten unsorted strangers. The judgment stays yours; the tedium doesn't.
That's the workflow we're building Kepla around: the app stacks each burst and proposes one to keep, and you approve or swap from your phone: couch, not desk. It's coming soon as native iPhone, iPad and Mac apps, free while we build. For the complete picture of where duplicate handling fits in a full cull, start with the complete culling guide.
Two reasons. Perceptually, the frames sit below the threshold where differences are easy to see, so your eye has nothing obvious to grab. Psychologically, deleting nine frames feels like losing something, loss aversion, even though you only ever needed one. The fix is structural: compare side by side, apply tiebreakers in a fixed order, and time-box the decision.
Expression and eyes first, a blink or awkward mouth kills a frame regardless of sharpness. Then hands and body position, then edges of the frame (cut-off limbs, photobombers, clutter), then technical sharpness, and composition last. Work the list top-down and stop at the first clear difference.
Almost never. If the winner is sharp and usable, the runner-up will never be opened again. It just costs storage, clutters the catalog, and forces the same comparison on you again at editing or album-design time. Keep a second frame only when it's genuinely different (another expression, another composition), not merely second-best.
Yes. Lightroom can auto-stack by capture time, which approximates burst grouping, and modern AI culling tools go further by grouping visually similar frames and pre-selecting the sharpest, eyes-open candidate within each group. You still make the final call, but on one suggested frame per group instead of ten strangers.
Kepla for Mac clears the obvious misses from a card, names the reason on every frame it sets aside, and leaves the choosing to you. Nothing is ever deleted, moved or renamed. Free through the private preview · the first hundred photographers keep it at $99 a year.