3D Printing Custom Keycaps: Design, Print, and Finish Like a Pro
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.
Custom keycaps are one of the most satisfying 3D printing projects you can tackle. The parts are tiny, the tolerances are tight, and the finished product is something you use every single day.
But keycaps are also one of the most demanding prints to get right. The stem that connects to your switch needs to be dimensionally perfect, the surface finish matters because your fingers touch it constantly, and the profile shape affects how the key feels when you type. Here's everything you need to nail the process.
Understanding Keycap Anatomy
Every keycap has three critical dimensions you need to get right:
- The stem: The cross-shaped mount that clips onto the switch. Cherry MX-compatible stems are the standard. The cross opening measures approximately 4.0 mm tall by 1.17 mm wide, with the horizontal bar at 1.17 mm tall by 4.0 mm wide. Getting these dimensions even 0.1 mm wrong means a cap that won't seat properly or wobbles on the switch.
- The profile: The curvature and height of the keycap top. Standard profiles include Cherry, OEM, SA, DSA, and XDA, each with different heights and sculpting angles per row. Your design needs to match the profile of the surrounding keys or the typing feel will be inconsistent.
- The wall thickness: Minimum 1.2 mm for resin, 1.5 mm for FDM. Thinner walls crack under the repeated impact of typing. Thicker walls (2 mm+) feel more solid and produce a deeper sound profile when bottoming out.
Resin vs FDM: Which Method Works Better?
OVERTURE High Speed PLA Filament, 1.75 mm, 1 kg, Black
Black PLA spool for everyday FDM printing.
See on Amazon →Resin (MSLA/SLA) wins for keycaps. The fine detail resolution, smooth surface finish, and tight dimensional accuracy of resin printing make it the natural choice. A standard MSLA printer with a 4K+ screen produces keycaps that feel injection-molded after light sanding. Resin keycaps can also be made translucent for RGB shine-through legends.
FDM works, but requires more effort. The layer lines on FDM prints are tangible on keycap surfaces, you'll feel them with every keystroke unless you sand and finish the caps. A 0.1 mm layer height with a 0.25 mm nozzle produces decent results on high-end FDM machines, but you're still sanding and priming afterward. FDM is best for initial prototyping before switching to resin for final caps.
Design Workflow
Step 1: Start with a template. Don't model a Cherry MX stem from scratch, download a verified template from Thingiverse or Printables. Search for "Cherry MX keycap blank" and pick a template with confirmed fit from community feedback. The stem dimensions in these templates are already dialed in, saving you hours of test-print iteration.
Step 2: Choose your profile. For a single artisan cap (typically Escape or a function key), DSA profile is the simplest, it's flat-topped and uniform across all rows. For a full set, you'll need row-specific sculpting (R1-R4 heights and angles) which is significantly more complex to model. Start with a single artisan cap before attempting a full set.
Step 3: Sculpt in ZBrush, Blender, or Fusion 360. For organic shapes (skulls, animals, abstract art), ZBrush or Blender's sculpt mode gives the most creative freedom. For geometric designs, Fusion 360 or FreeCAD works better. Boolean-subtract the stem cavity into the bottom of your sculpted cap. Export at maximum resolution, keycaps are small enough that file size is never a concern.
Step 4: Orientation and supports. Orient the keycap stem-up in your slicer. This puts the support contact points on the bottom of the cap (hidden when installed) rather than the visible top surface. Use light supports with small contact points (0.3-0.4 mm) to minimize post-processing marks.
Printing Settings
| Parameter | Resin (MSLA) | FDM |
|---|---|---|
| Layer height | 0.025-0.05 mm | 0.08-0.12 mm |
| Nozzle / pixel size | 28-50 µm pixel | 0.25 mm nozzle |
| Print time (1 cap) | 45-90 min | 20-40 min |
| Post-processing | Wash, cure, light sand | Sand, prime, sand, paint |
Surface Finishing
Even resin keycaps benefit from light finishing:
- Wet sand with 800-grit, then 1500-grit, then 2000-grit for a smooth matte surface
- Clear coat with spray lacquer for a glossy finish that protects against skin oils and sweat
- Soft-touch coating (Rust-Oleum Soft Touch) creates a rubberized feel that mimics PBT texture
- Dye sublimation isn't possible on 3D prints, but you can paint legends using a fine brush, vinyl stencils, or UV-print transfers for professional-looking text
Published by the 3D Printer Stuff editorial team. Published August 23, 2026. Updated September 12, 2026.
Editorial responsibility: see Imprint.
Spotted an error or have something to add? corrections@3dprinterstuff.com
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)
You might also like
FreeCAD for 3D Printing: Setup and First Model
FreeCAD is free, open-source, and powerful enough to design real 3D-printable parts. Here's how to set it up properly and model your first functional print from scratch.
Raspberry Pi Cases: 10 Best 3D Printable Designs
Your Raspberry Pi deserves better than sitting bare on your desk. Here are 10 of the best 3D printable case designs, from sleek NAS enclosures to retro gaming consoles.
Dental and Jewellery Resin Printing: Where Hobby Machines Stop Working
A crown sitting 100 micrometres proud gets rejected. Why repeatability across the plate matters more than 16K resolution, what ash residue tells you, and what the full chain actually costs.