3D Printing Tolerances & Clearances: Making Parts That Actually Fit
The first time you print a lid for a printed box, it will not fit. Not because you did anything wrong — because you designed two parts that are the same size and expected one to slide into the other. Physical objects need gaps. This guide covers the practical accuracy you can expect from a desktop FDM printer, why holes always come out smaller than designed, and the clearance numbers that make printed parts slide, snap, or press together the way you intended.
How accurate is a desktop 3D printer, really?
A well-tuned desktop FDM printer typically lands within about ±0.1 to ±0.3 mm of the designed dimension on small and medium parts. That number is the sum of several small errors: belt and motion accuracy, how much the molten plastic spreads when pressed onto the layer below, cooling shrinkage, and how precisely the slicer converts your mesh into toolpaths. Resin (SLA/MSLA) printers do noticeably better — often within ±0.05 mm — which is one of the trade-offs covered in our resin vs FDM comparison.
Two consequences follow. First, dimensions on a single print are not all equally wrong: outside dimensions tend to run slightly large and inside dimensions slightly small, because extruded plastic squishes outward from the toolpath. Second, your printer's error is consistent. Once you measure it, you can design for it — which is the whole game.
Why holes always print undersized
Ask any experienced maker: a 5 mm hole never measures 5 mm. Three effects gang up on interior dimensions:
- Polygonal approximation. An STL "circle" is really a polygon of flat segments that sit inside the true circle (the corners touch it, the flats cut the chord). A coarse mesh makes holes measurably smaller — our resolution guide shows how segment count controls this.
- Extrusion squish. The nozzle lays a road of plastic wider than its centerline path, and that extra width intrudes into the hole from every side.
- Shrinkage. Plastic contracts as it cools, and a hole is surrounded by material pulling inward on it. Materials with higher shrink (ABS, and to a lesser degree PETG) tighten holes more than PLA.
The practical fixes, in order of preference: design holes 0.2–0.4 mm larger than the pin or screw they must accept; print a quick test piece and measure; or drill/ream the hole to final size afterwards — a printed hole makes an excellent pilot.
Clearance: the gap that makes fits work
Tolerance is how far a printed dimension strays from the design; clearance is the gap you deliberately design between two parts so they fit despite those strays. The right clearance depends on the fit you want:
| Fit | Clearance per side | Feels like | Use for |
|---|---|---|---|
| Press / interference fit | 0.0–0.1 mm | Needs a mallet or firm push; stays put | Bearings, pins, permanent joins |
| Snug fit | 0.1–0.2 mm | Slides with friction, no wobble | Lids, caps, snap covers |
| Sliding fit | 0.2–0.3 mm | Moves freely, minimal play | Drawers, sliders, hinges |
| Loose fit | 0.4–0.5 mm | Obvious play, never binds | Bolt holes, parts printed pre-assembled |
These numbers assume a reasonably tuned FDM printer at 0.2 mm layers with a 0.4 mm nozzle — the most common setup. Resin printers can roughly halve them. And remember they are per side: a 10 mm peg in a sliding fit needs a 10.4–10.6 mm hole.
The usual suspects that ruin a fit
Elephant's foot
The first layer is pressed hard against the bed for adhesion, so it bulges outward, making the bottom 1–2 layers of every part slightly oversized. A peg flares at its base; a hole tightens at its mouth. Fixes: add a small chamfer (0.3–0.5 mm) to bottom edges in the design, or use the slicer's elephant-foot compensation setting, which shrinks the first layer's outline to cancel the bulge.
Orientation
Accuracy is not the same in every direction. Dimensions in the XY plane depend on nozzle squish; dimensions along Z quantise to whole layers (a 5.1 mm feature at 0.2 mm layers becomes 5.0 or 5.2 mm). Vertical holes print rounder and more accurate than horizontal ones, whose top arcs sag slightly as small unsupported overhangs. When a fit matters, orient the critical feature vertically if you can.
First-layer and flow tuning
If everything you print runs consistently fat or thin, the printer itself wants tuning: flow rate (extrusion multiplier) a few percent high is the classic cause. Slicers also offer a horizontal expansion / XY size compensation setting that grows or shrinks every outline by a fixed amount — a blunt but effective instrument for dialling in fits without editing the model.
Designing shapes with fit in mind
The clearance rules apply directly to parametric shapes from the Free STL Shapes generator. Printing a pipe that a 10 mm dowel must slide through? Set the inner diameter to 10.4–10.6 mm, and keep the wall difference above your nozzle width (see wall thickness). Making a ring that should press onto a 30 mm tube? Set the inner diameter to 30.0–30.1 mm and let friction do the rest. Because the tool exports exactly the millimeter dimensions you type, the only arithmetic you need is adding the clearance — there is no hidden scale factor (STLs from this tool are 1 unit = 1 mm, as covered in our units and scaling guide).
Print a fit test tonight
Generate a pipe, ring, or cylinder at the exact millimeter dimensions you need — inner diameter, outer diameter, height — and export a water-tight STL in one click. Free, no sign-up, nothing uploaded.
Open the STL generator →Frequently asked questions
What tolerance should I design for FDM printing?
Assume the printer is accurate to about ±0.2 mm unless you have measured otherwise. For mating parts, that means at least 0.2 mm of clearance per side for a fit that moves, and 0.1 mm or less where you want friction to hold parts together.
Why is my 5 mm hole only 4.7 mm?
Because three effects all shrink interior dimensions: the polygon approximation of the circle sits inside the true circle, extruded plastic squishes into the opening, and the surrounding material contracts as it cools. Design holes 0.2–0.4 mm oversized, or drill them to final size after printing.
Can I fix a bad fit without redesigning the model?
Often, yes. The slicer's horizontal expansion (Cura) or XY size compensation (PrusaSlicer) setting adjusts every printed outline by a fixed offset, and elephant-foot compensation fixes tight fits near the bed. For one stubborn hole, a drill bit is faster than another 3-hour print.