Holes, pegs and first-layer squish
Model a clean Ø5 mm hole, print it, and try to push in your Ø5 mm peg: it won't go. The hole came out closer to Ø4.8 mm, with the mouth tighter still, and if you hold it up to the light you'll see it isn't even a circle but a polygon. Your printer isn't out of calibration. It's a handful of systematic errors — the same on every print, in the same direction — that come straight from how FDM lays down plastic. And the good thing about a systematic error is that once you know where it comes from, you compensate for it in the model and it disappears.

The hole comes out small and faceted
A printed hole isn't a circle: it's a polygon, and one that fits inside the circle you drew. Two things shrink it, and both pull the same way.
The first is geometric, and it happens before you even print. When you export the model to STL, the CAD approximates each circle with a run of short straight segments: the chords. Every chord cuts across the real arc and sits slightly inside it, so the plastic travels along an inscribed polygon, not the nominal circle. On a large hole the difference is negligible; on a Ø3 mm hole with few sides, the proportional loss is plainly visible. The fix is straightforward: raise the tessellation resolution (the chord tolerance) when you export the STL, or export in a format that preserves the arcs. Modern slicers can also fit arcs while slicing, but if the polygon is already stitched into the mesh, no downstream fitting will round it back out.
The second is the bead on a curved wall, and it matters more. The nozzle lays down a bead about 0.40–0.44 mm wide, centered on its path. To make the inner wall of a hole, that path follows a circle smaller than the finished hole, and the half of the bead that lands on the inside bites into the opening and narrows it. Chord and bead push the same way: they close the hole, usually by 0.1 to 0.2 mm of diameter, more so the smaller it is. If you see larger closures, 0.3 mm or more, that's no longer the process's built-in bias: that's poorly calibrated flow or horizontal expansion, and it's fixed earlier, in the slicer.
The fix is to oversize vertical holes in the model: add 0.1–0.2 mm to the diameter of small holes (below ~6 mm), or design the clearance in from the start with the figures from Real printed clearances. Almost any slicer offers the same compensation as a horizontal-expansion or X-Y hole-compensation parameter, applied reproducibly from part to part without touching the model. For a hole that has to end up dead on size — a bearing seat, a dowel pocket — print it deliberately narrow and ream or drill it to the final dimension. That's the most reliable way to get a round, on-size cylinder in plastic.
Elephant's foot tightens the hole mouth
The first layer isn't printed at the same height as the rest. It's flattened on purpose: partly so the part sticks to the bed, partly because the nozzle starts closer and the bed's heat keeps the plastic soft for longer. That extra plastic doesn't vanish: it's squeezed out to the sides, and the bottom edge of the part bulges outward by a few tenths. That's elephant's foot.
It spoils fits in three places. A peg printed upright fattens at the base, so it jams in the first millimeter as it enters its hole. A box mouth-up grows in outline at the bottom, and a lid sized to the nominal walls no longer fits. And a vertical hole narrows right at its entry: the result is a neck tighter than the rest of the bore, a few tenths tall, lined up precisely with the very mouth the shaft must enter. It isn't a shift of the whole dimension — the rest of the hole comes out on size — but a local neck, which, for assembly, is almost worse than a uniform shift, because the shaft binds the moment it starts to enter.
The horizontal hole sags and comes out oval
Turn the part so the hole's axis runs horizontal, and a different problem appears: an overhang. The top arc of the hole is a roof with nothing under it: the layers crossing that vault have no support beneath them, so they sag inward. The result is a hole round at the bottom and flattened at the top — oval — often with a rough crown of buckled beads. Its effective diameter across the top half bears no resemblance to a vertical hole's, which is why a clearance calibrated upright is no good for a hole on its side.

There are two routes. The design one is to give the top half a teardrop shape: instead of closing the circle with a flat roof, you carry it up to a point at about 45°, so each bead rests on the one below and nothing has to bridge across thin air. It's the same overhang-and-bridging logic from Supports and bridging: a horizontal hole is nothing but an internal overhang you can engineer away with geometry. But the teardrop changes the shape of the hole — its top half is no longer circular — so it works for a pin or a screw, not for a seat that has to turn or seal in there. For that, the other route is to drill to size after printing: draw the hole a little small, print, and run a drill bit through it to restore its roundness.
The best answer, when the part allows it, is to avoid the problem entirely: reorient so the hole prints vertical and the overhang never exists. A vertical hole comes out rounder and more on size than any trick for rescuing a horizontal one.
The peg is the other half of the bias
Everything above closes holes; the same bead does the opposite to a shaft, and it's worth seeing them together: they're the two halves of one bias. To print a solid peg, the nozzle follows a circle larger than the finished shaft, and the half of the bead that lands on the outside swells the outline and widens it. The same half-bead that narrowed the hole from the inside fattens the shaft from the outside.
Cooling shrinkage works in your favor here, up to a point — a solid shaft contracts toward its own center — but it doesn't go far enough to cancel the bead's widening, so the peg still comes out oversized. Elephant's foot finishes the job by fattening the base. The practical upshot is that a fit drawn at zero clearance doesn't come out at zero clearance: it comes out with interference twice over — the hole closed and the shaft swollen — the two walls pushing against each other. You have to size for both shifts at once.
| Error | Where it bites | Direction | Design fix |
|---|---|---|---|
| Chords (tessellation) + inner bead | small vertical holes | closes the Ø, facets it | raise the STL resolution, oversize 0.1–0.2 mm, or ream to size |
| Elephant's foot | base of pegs, walls, hole mouth | tight neck at the entry | 0.4–0.6 mm bottom chamfer at 45° |
| Overhanging roof | holes on a side wall | flattens the Ø to an oval, roof sags | teardrop at 45°, drill to size, or reorient |
| Outer bead | pegs and shafts | fattens the Ø | leave the shaft at nominal, open the hole |
Putting it together
None of these errors is random. The tessellation chords inscribe your vertical circles inside the nominal dimension, the bead closes holes and fattens shafts, the first layer over-squishes and tightens the mouth, and horizontal roofs sag. They all bias the result in the same direction, every time, which means they all compensate: raise the STL resolution and oversize small vertical holes, chamfer the bottom edge, teardrop or reorient the horizontal ones, and size pegs knowing they come out fat.
With that, your holes and pegs land where you drew them. That is exactly what any clearance you work out later depends on, because every clearance assumes both parts came out at the intended size. The next step is to translate that known bias into concrete gaps per material: you'll find it in Real printed clearances. And if the part starts with a first layer that won't grab, first go back to The first layer and bed adhesion: elephant's foot and poor adhesion stem from the same setting.
