SammaPix
All tools

TwinHunt

Find duplicate and near-duplicate photos in your browser. Perceptual hashing compares visual content — not file bytes. Nothing uploaded, nothing stored.

Find duplicate and near-duplicate photos

Drop JPG, PNG, WebP, HEIC — perceptual hashing runs in your browser

Free: up to 200 files · Pro: 500

What is TwinHunt?

TwinHunt is a free browser-based duplicate photo finder that uses perceptual hashing (pHash) technology to detect visually similar and identical images. Unlike byte-level comparison, pHash finds duplicates even when photos have been resized, re-saved, or lightly edited. Processing runs at approximately 50ms per image — entirely in your browser.

Sensitivity is adjustable: strict mode catches exact duplicates (Hamming distance 0–5), normal mode catches very similar images (6–10), and loose mode catches broader matches (11–20). No photo data is ever uploaded to any server. TwinHunt works offline once the page is loaded.

How it works

1

Drop your photos

Select or drag up to 50 images (free) or 500 (Pro). JPG, PNG, WebP, and HEIC are all supported.

2

Analysis runs in browser

A perceptual hash is computed for each photo using DCT. Then every pair is compared. Processing is fast — around 50ms per image.

3

Review duplicate groups

Duplicates are shown side-by-side with file names, sizes, and similarity badges. Check which ones to delete and export a report.

What TwinHunt does

Perceptual hashing

Uses pHash (Discrete Cosine Transform) to compare images by visual content, not file bytes. Finds duplicates even after resizing, re-saving, or minor edits.

Near-duplicate detection

Adjustable sensitivity finds exact copies (Hamming distance 0–5), very similar images (6–10), and looser matches (11–20). Tune it to your library.

100% client-side

Every pixel is processed in your browser using Canvas API and DCT. No photo ever leaves your device. Works offline once the page is loaded.

Reclaim disk space

TwinHunt shows you which photos to delete and how much space you would free. Actual deletion is done in your file manager — we never touch your files.

Common questions

What is perceptual hashing (pHash)?

pHash is an algorithm that generates a 64-bit fingerprint for an image based on its visual content, not its raw bytes. Two images with the same visual content — even if saved differently, resized, or lightly edited — will have fingerprints that are close together (low Hamming distance). TwinHunt uses a DCT-based pHash: the image is reduced to 32×32 grayscale, the Discrete Cosine Transform extracts frequency components, and the top-left 8×8 block encodes the visual signature.

Will it find photos that are slightly cropped or colour-adjusted?

It depends on the degree of change. Minor colour adjustments, small crops, and re-compression artefacts are usually within the 'Very similar' threshold (Hamming ≤ 10). Heavy crops, filters, or significant edits will produce a higher Hamming distance and may not be matched at the Normal sensitivity setting. Use the Loose setting to cast a wider net.

Are my photos uploaded to a server?

No. TwinHunt processes everything in your browser using the Canvas API and JavaScript. No image data is transmitted to any server. The tool works completely offline once the page has loaded.

Does it work with HEIC files from iPhone?

Yes. For preview thumbnails, TwinHunt uses the embedded JPEG thumbnail inside the HEIC file (extracted via exifr) — this is fast and requires no conversion library. The pHash is computed from the full image data via a standard canvas draw, which browsers support for HEIC on macOS and iOS.

Can TwinHunt delete my files?

No. Browsers cannot delete files from your filesystem. TwinHunt only identifies duplicates and lets you download a plain-text report listing the files you selected for removal. Actual deletion must be done in your file manager or Finder.