# Snap-fit cantilever joint (hook and catch)

> How do you design a snap-fit for 3D printing?

- Category: Joinery › 3D-print connectors
- Kind: Hardware
- Basis: Xem Studio design — geometry computed in the generator from traditional proportions
- Page: https://xemstudio.com/objects/snap-fit-cantilever-joint/ · JSON: https://xemstudio.com/api/geometry?object=snap-fit-cantilever-joint · Plain text: https://xemstudio.com/objects/snap-fit-cantilever-joint/sheet.txt
- License: dimension sheet CC BY 4.0 (Xem Studio); files Xem Studio Design License (free to use and sell from, not to redistribute as files: https://xemstudio.com/license/)
- Use in every chat: add https://xemstudio.com/mcp as a connector (https://xemstudio.com/use-with-ai/)

## Overall (mm)

| length | width | height |
|---|---|---|
| 25.0 | 16.0 | 29.0 |

**Exact dimensions.** True size, with no printing tolerance added.

## Notes

- Woodworking joint drawn for 3D printing: the parts lock together by shape, so a print can be joined without glue or screws. Drawn at true size with the parts line to line (zero gap) in their assembled position — add your printer's fit allowance to the mating faces (your AI or slicer can do this).
- The basic printed snap: a cantilever arm with a hook that springs into a window. Keep the arm's strain low: for PLA/PETG the undercut should be no more than about 6–7 % of the arm length.
- Print the arm along its length in the plane of the bed — layer lines across the arm make it snap.

## Sizes

| dimension | value |
|---|---|
| stock | 2 mm arm, 8 mm wide, 18 mm long |
| parts | hook part, catch part |
| hook | 1.2 mm undercut, 30° lead-in |
| assembles | push in: the arm flexes and the hook clicks into the window |
| holds | pulling apart until the hook is pressed back |

## Where the files are

- Xem Studio: [Joinery design (geometry computed in the generator from traditional proportions)](https://xemstudio.com/) — web — Xem Studio design

## Free STEP/STL (3 parts, Xem Studio Design License, Xem Studio)

Index: https://xemstudio.com/files/hardware/snap-fit-cantilever-joint/index.json · license: https://xemstudio.com/files/hardware/snap-fit-cantilever-joint/LICENSE.md

- snap-fit-cantilever-joint-hook-part: [STEP](https://xemstudio.com/files/hardware/snap-fit-cantilever-joint/snap-fit-cantilever-joint-hook-part.step) · [STL](https://xemstudio.com/files/hardware/snap-fit-cantilever-joint/snap-fit-cantilever-joint-hook-part.stl) — Part with the cantilever arm and hook
- snap-fit-cantilever-joint-catch-part: [STEP](https://xemstudio.com/files/hardware/snap-fit-cantilever-joint/snap-fit-cantilever-joint-catch-part.step) · [STL](https://xemstudio.com/files/hardware/snap-fit-cantilever-joint/snap-fit-cantilever-joint-catch-part.stl) — Mating wall with the catch window
- snap-fit-cantilever-joint-assembled: [STEP](https://xemstudio.com/files/hardware/snap-fit-cantilever-joint/snap-fit-cantilever-joint-assembled.step) · [STL](https://xemstudio.com/files/hardware/snap-fit-cantilever-joint/snap-fit-cantilever-joint-assembled.stl) — All parts in their assembled position (each part its own solid)

## Questions

**How long should a snap-fit arm be?**

Long enough that the hook undercut is a small share of its length: 18 mm for a 1.2 mm hook here.

**Which way should a snap-fit be printed?**

With the arm lying flat along the bed, so the layers run along the arm.

## Fits with

- [Jigsaw puzzle joint (for splitting large prints)](https://xemstudio.com/objects/jigsaw-puzzle-joint/)
- [French cleat dimensions: 45° on 3/4 in stock from a 5 in blank](https://xemstudio.com/objects/french-cleat/)
