Workshop/How to Design Press-Fit Tolerances for 3D Printing

How to Design Press-Fit Tolerances for 3D Printing

This article may contain affiliate links. If you make a purchase through these links, we may earn a small commission at no extra cost to you. This helps us keep creating free content.

How to Design Press-Fit Tolerances for 3D Printing

You design a peg at 10.00 mm diameter and a hole at 10.00 mm diameter. They should fit together perfectly, right? In the CAD world, sure. In the 3D printing world, that peg won't fit in that hole. Not even close. FDM printing introduces dimensional inaccuracies from filament expansion, layer squish, cooling shrinkage, and nozzle geometry that make "nominal" dimensions useless for mating parts.

This guide gives you the actual tolerance values you need for press fits, slip fits, and clearance fits, backed by test data, not guesswork.

Why 3D Printed Dimensions Are Never Exact

Several factors conspire against dimensional accuracy in FDM printing:

How to Design Press-Fit Tolerances for 3D Printing — practical guide overview
How to Design Press-Fit Tolerances for 3D Printing

Outer dimensions print larger. When your nozzle traces a 10 mm circle, the filament expands slightly outward. A 10.00 mm designed peg typically measures 10.10-10.20 mm on a well-calibrated printer. This expansion is consistent and predictable once you characterize your machine.

Inner dimensions (holes) print smaller. The same expansion effect works in reverse for holes, the filament bulges inward. A 10.00 mm designed hole typically measures 9.80-9.90 mm. This is why your "10 mm" peg won't fit in your "10 mm" hole, one grew while the other shrank.

Material shrinkage varies. PLA shrinks about 0.3-0.5% as it cools. PETG shrinks 0.5-0.8%. ABS shrinks 0.7-1.0%. These percentages sound small, but on a 100 mm part, 1% shrinkage is a full millimeter.

How to Design Press-Fit Tolerances for 3D Printing — step-by-step visual example
How to Design Press-Fit Tolerances for 3D Printing
Key insight: The total dimensional error on a mating pair is additive. If your peg grows by +0.15 mm and your hole shrinks by -0.15 mm, the effective interference is 0.30 mm, enough to make assembly impossible without a hammer.

The Three Types of Fits

Clearance fit: Parts slide together easily with visible gap. Used for hinges, removable lids, and parts that need to move freely. Design gap: 0.3-0.5 mm per side.

Slip fit (transition fit): Parts slide together snugly with no visible gap but no force required. Used for alignment pins, battery covers, and removable inserts. Design gap: 0.1-0.2 mm per side.

Press fit (interference fit): Parts require force to assemble and stay together through friction. Used for permanent joints, axle bearings, and snap-fit enclosures. Design interference: 0.0-0.1 mm per side (the peg is actually larger than the hole in CAD).

Recommended Tolerance Values

These values assume a well-calibrated printer with a 0.4 mm nozzle at 0.2 mm layer height. Adjust if your setup differs.

How to Design Press-Fit Tolerances for 3D Printing — helpful reference illustration
How to Design Press-Fit Tolerances for 3D Printing

PLA clearance fit: Add 0.3 mm to hole diameter, subtract 0.1 mm from peg diameter (total gap: 0.4 mm per side). Example: 10.3 mm hole, 9.9 mm peg.

PLA slip fit: Add 0.15 mm to hole diameter, subtract 0.05 mm from peg diameter (total gap: 0.2 mm per side). Example: 10.15 mm hole, 9.95 mm peg.

PLA press fit: Add 0.05 mm to hole diameter, keep peg at nominal (total gap: 0.05 mm per side). Example: 10.05 mm hole, 10.00 mm peg. The natural expansion of the peg and contraction of the hole create the interference.

Pro tip: Print a tolerance test block before committing to a full design. Search Thingiverse or Printables for "tolerance test", there are dozens of free models with graduated clearances from 0.1 to 0.5 mm. Print one, find which gap fits your needs, and use that value in your design. Five minutes of testing saves hours of reprinting.

Designing Effective Snap Fits

Snap fits are the most common press-fit application in 3D printing. A flexible cantilever beam with a hook deflects during assembly and locks behind a mating surface. To make them work reliably:

Orient the cantilever along the Z axis. Print the snap arm so it flexes along layers, not across them. A snap arm printed flat will break at the layer lines the first time you flex it. Printed vertically, the layer lines run along the beam's length, allowing it to flex without delaminating.

Keep the deflection angle under 3 degrees. PLA and PETG have limited elastic range. A snap arm that deflects more than about 3 degrees during assembly will either crack or permanently deform. Design the hook geometry so the arm moves minimally during insertion.

Add a 0.5 mm fillet at the base. The stress concentration at the base of a cantilever is where cracks start. A small fillet distributes the stress and dramatically increases fatigue life. In Fusion 360, chamfer tools work better than fillets for printability.

Use PETG for functional snap fits. PLA is stiff but brittle, it cracks after repeated flex cycles. PETG has much better flexibility and fatigue resistance, making it the ideal material for snap-fit joints that will be assembled and disassembled multiple times.

Accounting for Print Orientation

Tolerances change based on which axis you're measuring. The X and Y axes (horizontal) are controlled by stepper motor positioning and are typically accurate to within 0.05 mm. The Z axis (vertical) is controlled by layer height and is accurate to your layer height setting (0.2 mm at standard resolution).

This means a cylindrical peg printed vertically (standing up) will have accurate X/Y dimensions but a slightly faceted surface from layer stacking. Printed horizontally (on its side), the circular cross-section becomes a polygon of stacked layers, and the diameter in the Z direction rounds to the nearest layer height.

Watch out: Circular holes printed in the vertical orientation (like a screw hole in a flat plate) are particularly prone to undersizing. The printer approximates circles as polygons, and each segment's filament expansion compounds. Add an extra 0.1 mm to the radius of vertical holes compared to horizontal ones.

Calibrate First, Design Second

All the tolerance values above assume your printer is calibrated. If your X and Y steps per mm are off, every dimension shifts proportionally. Run these calibrations before designing precision fits:

  • XY dimensional calibration: Print a 50 mm cube and measure with digital calipers. Adjust steps/mm until the cube measures within 0.05 mm of 50.00 mm on all sides.
  • Flow rate calibration: Print a single-wall cube and measure the wall thickness. It should match your nozzle diameter (0.4 mm for a 0.4 mm nozzle). Adjust flow rate multiplier until it does.
  • First layer calibration: A squished first layer makes holes smaller and pegs wider at the base. Ensure your first layer height is correct, use a feeler gauge or the paper test.

Designing press fits for 3D printing is a skill that improves with practice. Start with tolerance test prints, measure everything with calipers, and keep a notebook of what works on your specific machine. Every printer has slightly different characteristics, and the values that work perfectly on your Ender 3 might need adjustment on a Bambu Lab P1S.

For more on precision 3D printing, check out our guides on retraction settings and choosing the right layer height.

Need accurate measurements? Read our guide to using calipers for 3D printing, the single most important tool for precision work.

Published by the 3D Printer Stuff editorial team. Published November 5, 2026.

Editorial responsibility: see Imprint.

Spotted an error or have something to add? corrections@3dprinterstuff.com

Share with fellow makers:
designcadtolerancesengineering
📖

Explore more

All articles on 3D Printer Stuff →

🔧

Maker Tips, Delivered

New guides, filament tests, and project ideas — every week in your inbox.

🎁 Free bonus: 3D Printing Starter Checklist (PDF)

🧭Part of our topic hub: Projects & Guides→

You might also like

Comments (0)

Leave a comment

Comments are reviewed before publishing.