STL repair guide
Remove Duplicate STL Triangles: Verify the Saved Surface
Substantially updated 2026-10-31. First published 2026-09-05.
An exact duplicate repeats the same three vertex positions. Removing a redundant copy can leave the visible surface unchanged, but a coincident face may also be part of a larger overlap or an incorrectly oriented pair. Inspect the reported faces and recheck the saved copy; deleting triangles is not a Boolean union.
Identify an exact repeated face
InspectMesh matches the three stored coordinate positions exactly after sorting them, so triangle vertex order and the stored STL normal do not affect duplicate detection. The processor excludes invalid or near-zero-area faces from duplicate and edge checks; standard cleanup can also remove degenerate faces and correct supported winding in the same explicitly submitted action. It does not equate partly overlapping polygons, differently tessellated coincident surfaces or spatially crossing shells.
A repeated valid face is different from a zero-area face. Use the zero-area and narrow-triangle controls to compare repeated positions, collinearity and workflow-specific numerical tolerances.
Run the 13-to-12 triangle control
| File | Actual processor result | Next decision |
|---|---|---|
| Clean reference cube | 12 triangles; zero duplicates, boundaries and over-shared edges | Keep as comparison. |
| One extra identical face | 13 triangles; one exact duplicate; three over-shared edges | Run standard cleanup only after confirming the original surface is intended. |
| Downloaded cleanup result | One removed; 12 triangles; zero duplicates, open and over-shared edges; 20 × 20 × 20 bounds | Reopen this derivative and inspect the surface and slicer layers. |
| Opposite-winding repeat | 13 triangles; one order-independent duplicate; three over-shared edges | The detector cannot determine which coincident face owns the intended surface. Inspect first; tested cleanup output retained the original face. |
The measured standard action removed one face and no degenerate or orientation faces from each duplicate control. Both saved outputs were reparsed as 12-face cubes with their original bounds. This controlled result does not promise that every exact repeated face in an arbitrary assembly is safe to delete.
When overlap is a different problem
Coplanar faces with different tessellation, surfaces crossing in space, and two intended bodies sharing a face need a design decision. A duplicate count of zero does not test those cases. Use the crossing-surface explanation or separate-part guide at that branch; a Boolean union belongs in source CAD when the intended solid is known.
Verify the downloaded copy
Compare the input and saved output with the quality checker: triangles, exact duplicate count, coordinate bounds, boundary edges, over-shared edges and winding conflicts. Inspect a cross-section and sliced layers where the face was removed. Stop if a cavity, clearance or functional boundary changes.
FAQ
Does one duplicate report prove the retained face is correct?
No. Detection matches the same three positions regardless of order. Review which coincident surface belongs before cleanup.
Will standard cleanup also remove degenerate faces?
Yes, the same explicit server action may remove zero-area faces and correct supported winding. Compare every reported change before accepting the derivative.