Early access is live: one-time license $34.99
Duplicate finder

Find every duplicate STL in your library.

Meshory fingerprints every model by its actual file contents and its geometry, and finds identical copies across all the folders, drives and NAS mounts you point it at, collected into one Duplicates view. Everything runs on your machine; nothing is uploaded.

Updated Sep 10, 2026

The short answer

Meshory finds duplicate 3D models by content, not by filename. It fingerprints every STL, 3MF, OBJ, FBX and STEP file twice: once as a hash of the file's bytes, once as a hash of the mesh geometry, so renamed downloads and format conversions group together, and re-centered slicer projects wait for your review. It runs locally on macOS, Windows and Linux, and never deletes anything on its own.

Where the copies come from

Nobody downloads a model twice on purpose.

But it happens anyway: the dragon you grabbed again months later because you couldn't find the first one. The dragon_final_FINAL.stl rename before a print. The ZIP you extracted twice into different folders. The backup drive that became a second library. A few years of collecting, and the same models are scattered across your disks under a half-dozen names, invisible in a file manager, because nothing about the filenames says they're the same.

A duplicate STL finder that compares names would miss almost all of them. Meshory compares the files themselves.

How it works

Content fingerprints, not filename guesses.

  1. 01

    Point it at your folders

    Add the folders and drives where your models already live. Meshory scans them in place, and nothing is moved, renamed, or uploaded.

  2. 02

    Every model gets a fingerprint

    Each model is fingerprinted twice: a content hash of its actual bytes, and a geometry hash of the mesh itself. Every folder is fingerprinted too, from the set of models inside it. Filenames, folders and file encodings don't matter, only the model.

  3. 03

    Copies show up as one group

    Files with the same fingerprint are the same model, and folders with the same fingerprint are the same pack. The Duplicates view collects them into single cards: three downloads of one dragon become one group, and a pack sold in four folders becomes one card naming the four, not two hundred file matches.

What it does, and deliberately doesn't

Certain matches, separated from guesses

Bulk grouping covers two certain tiers: identical file contents, and identical geometry (the same mesh saved as a different file). Moved, rotated, rescaled or re-tessellated near-copies surface separately as “likely duplicates” for you to review, never mixed into bulk cleanup.

Local drives, NAS and archives

Network sources are duplicate-scanned too. Hashing runs in short background batches so NAS scans stay fast and the drive stays responsive. Copies inside ZIP, RAR, 7Z and TAR/TGZ archives are covered as well.

You stay in control

Meshory shows you the copies and recommends which one to keep, with the reason stated on the card. It never deletes, moves, or renames anything on its own. Your files stay exactly where they are until you decide otherwise.

Go deeper

How the tiers work

A hash finds your re-downloads and is structurally blind to your re-exports. What each tier catches, and why you want both, is in hash-based vs. geometry-aware detection.

Repair or cleanup?

If a pack's models are broken rather than redundant, that's a different job entirely. Start with cleaning up downloaded STL packs to diagnose which one you have.

The bigger cleanup

Deduplication is step one of a larger overhaul. The complete system (folders, tags, naming, thumbnails, NAS) is the guide to organizing your whole STL library.

Duplicate finder questions

Is there a tool that finds duplicate 3D models by content, not filename?

Yes. Meshory compares the files themselves: an exact content hash catches renamed copies, and a geometry fingerprint catches the same mesh re-exported under a different name or format. Everything runs locally on your machine, nothing is uploaded, and detection reaches inside ZIP, RAR, 7Z and TAR/TGZ archives and across NAS mounts.

Why not use a generic duplicate file finder like fdupes, jdupes or Czkawka?

For exact copies, do. They hash bytes and they are good at it. What they structurally cannot catch is the same mesh re-exported from a slicer or saved to another format, because re-exporting changes the bytes. That is the tier Meshory adds on top of hashing, and it is where most of a 3D library's real duplication lives.

What else does a 3D-aware duplicate finder do that a general one doesn't?

It knows which files are models. A general tool reports the reference photos and PDF guides bundled inside a model pack as duplicates of each other, burying the findings that matter; Meshory indexes those beside your models and never reports them as duplicates. It also renders both candidates, so you decide from a picture of the two meshes rather than from two identical-looking paths.

The same part shows up in three different kits. Is that really a duplicate?

Technically yes, usefully no: the folder level is the answer. Meshory also fingerprints whole folders from the set of models inside them, so when two or more folders hold exactly the same pack you get one card naming those folders rather than a match for every shared file.

How do I hide a part that appears in several kits?

Turn on “Whole-folder matches only” in the filter bar and the shared bracket that legitimately appears in three kits drops out of view, leaving the packs that really are duplicated. Companion files can differ freely: only the models are compared, and the card lists the READMEs, renders and PDFs that differ instead of counting them against the match.

Does it catch renamed copies?

Yes, that's the point. Detection uses a fingerprint of the file's actual bytes, so dragon.stl and dragon_final_FINAL.stl group together if their contents are identical, no matter which folders they live in.

Will it match edited or re-exported models?

A re-export of the same mesh groups automatically via the geometry tier, even though the file bytes differ, as long as the model wasn't moved. Slicer projects usually re-center the model, so they appear as “likely duplicates” in a separate review tab, alongside rotated, rescaled or re-tessellated copies, and never join bulk cleanup. A genuinely modified model stays separate.

Which formats does it cover?

Five model formats get both tiers: STL, 3MF, OBJ, FBX and STEP. ZIP, RAR, 7Z and TAR/TGZ archives count too, both as whole archives and for the models inside them. Companion files like images and PDFs are indexed beside your models but never reported as duplicates, so a render repeated across fifty folders cannot bury the real findings.

Does it match the same model saved in different formats?

Yes, as long as the model sits in the same position in both files. STL, 3MF, OBJ and FBX match one another across formats, so the same mesh saved as an STL and as an OBJ still groups. A slicer's 3MF project usually re-centers the model, so it lands under likely duplicates for review. STEP is matched against other STEP files, since its geometry is described as CAD surfaces rather than a mesh.

Do I have to decide which copy to keep myself?

Only if you want to. Every group marks one copy as Recommended and says why: the copy in your organized folder rather than a downloads pile, the oldest copy, or the one inside an archive. Keep recommended selects the rest of that group, and one auto-select pass applies the same rule across every group. Likely duplicates under Needs review are never auto-selected, and nothing is trashed without a confirmation.

Does it delete or modify my files?

Detection itself only reads. Meshory groups the copies so you can see the redundancy, and every cleanup is an action you take: choose Move to Trash and the copies you picked go to your system Trash (the Recycle Bin on Windows), where they can still be restored. Nothing in your library is moved, renamed, or deleted unless you ask for it.

What about models on a NAS or network drive?

Covered. Network sources are indexed and browsable right away. Duplicate detection is a separate pass you start yourself, and on a network drive it paces itself in short batches so the drive stays responsive while it works.

Will it work on a OneDrive, Dropbox, Google Drive or iCloud folder?

Yes. Meshory recognizes cloud-synced folders (OneDrive, Dropbox, iCloud Drive, and Google Drive including its mounted drive letter) and treats them gently: when you run duplicate analysis it paces itself exactly as it does on a NAS, and it only reads files whose size matches another file's, so it never bulk-downloads your whole library. Files it does read are downloaded by your sync client once, and you can return them to cloud-only afterwards.

Does any of this leave my machine?

No. Scanning, hashing and grouping all run locally. Your files are never uploaded; there's no cloud and no account.

See what's hiding in your library.

How detection works

One-time purchase with a 14-day money-back guarantee. Pricing details