A personalized keychain costs about $0.15 in filament and takes under 20 minutes to print. The same item in a gift shop runs $8 to $15. With a basic FDM printer, a free CAD tool, and a spool of PLA, you can turn out names, logos, event badges, and one-of-a-kind gifts in batches. This guide covers materials, print settings, design rules, multi-color techniques, and finishing so your first batch looks professional.
Quick Takeaways
- Best all-around material: PLA at 200 °C nozzle / 60 °C bed for indoor gifts; PETG for keychains that live in pockets and bags.
- Ideal thickness: 3 mm for keychains, 2 mm for name tags, 2.4 mm for badges with raised text.
- Fastest multi-color method: a pause-at-layer color swap (no multi-material system required).
- Batch advantage: a 256 × 256 mm bed fits 40+ keychains per plate in roughly 2 hours.
| Product | Typical Size | Thickness | Print Time (each) | Filament Cost |
|---|---|---|---|---|
| Keychain | 50 × 25 mm | 3 mm | 12–20 min | ~$0.15 |
| Name tag | 80 × 25 mm | 2 mm | 15–25 min | ~$0.20 |
| Event badge | 60 × 60 mm | 2.4 mm | 20–35 min | ~$0.30 |
Why 3D Printed Personalized Gifts Work So Well
Custom items normally require engraving machines, vinyl cutters, or minimum orders from a vendor. FDM printing removes all three barriers. You change a name in your slicer or CAD file, press print, and have a unique object.
Three factors make these products ideal first projects:
- Low material use. Most designs weigh 3–8 g.
- Forgiving geometry. Flat bases print without supports.
- High perceived value. Handmade, name-specific items feel personal in a way store-bought merchandise does not.
They also scale into small businesses. Craft fairs, school fundraisers, conventions, and corporate events all create steady demand for customized tags and badges.
Choosing the Right Material
Material choice decides how long the item survives. A keychain endures drops, friction, sunlight, and heat inside parked cars. A name tag on a desk faces far less abuse.
| Material | Nozzle Temp | Bed Temp | Durability | Best For | Difficulty |
|---|---|---|---|---|---|
| PLA | 190–215 °C | 55–65 °C | Moderate, brittle | Name tags, desk badges, gifts | Easy |
| PLA+ | 205–225 °C | 55–65 °C | Good | Everyday keychains | Easy |
| PETG | 230–250 °C | 70–85 °C | High, flexible | Bag tags, outdoor keychains | Moderate |
| TPU (95A) | 220–240 °C | 40–60 °C | Very high, rubbery | Luggage tags, pet tags | Hard |
| ABS/ASA | 240–260 °C | 90–110 °C | High, heat resistant | Car keychains, outdoor badges | Hard |
Rule of thumb: use PLA+ for most keychains, PETG if the item will sit in a hot car or get frequent impact, and TPU when you want a soft, bendable tag that will not snap.
Specialty filaments add visual appeal at no extra complexity:
- Silk PLA gives a metallic shine, which suits gift items.
- Glow-in-the-dark PLA works well for kids’ bag tags (it abrades nozzles, so use a hardened or 0.6 mm nozzle).
- Wood-fill or marble PLA creates premium looks with minimal finishing.
Design Fundamentals
Good design makes the difference between a sturdy product and one that snaps at the key ring hole.
Key Dimensions
| Feature | Recommended Value | Why |
|---|---|---|
| Overall thickness | 3 mm (keychain) | Resists bending and snapping |
| Key ring hole diameter | 4–5 mm | Fits standard split rings |
| Wall around hole | ≥ 3 mm | Prevents the most common failure point |
| Corner radius | 2–4 mm | Reduces stress and catches less on pockets |
| Text height (raised) | 0.6–1.2 mm | Readable without long print times |
| Minimum text stroke width | ≥ 0.8 mm | Prints cleanly with a 0.4 mm nozzle |
| Font size | ≥ 8 mm cap height | Stays legible at small scale |
Font Selection
Thin or ornate scripts fail on FDM printers. Choose bold sans-serif or slab fonts (for example Arial Black, Roboto Bold, Montserrat Bold). Avoid hairline strokes below 0.8 mm, because the nozzle cannot resolve them and the text breaks up.
Raised vs. Engraved vs. Flush Text
| Style | Look | Print Difficulty | Durability |
|---|---|---|---|
| Raised text | High contrast, tactile | Easy | Medium (can wear) |
| Engraved text | Subtle, clean | Medium | High |
| Flush two-color | Professional, flat | Medium | Highest |
Raised text on a contrasting base color is the fastest approach for beginners and looks excellent.
Free Tools for Customization
- Tinkercad: drag-and-drop shapes plus a text tool. Ideal for first projects.
- Fusion 360 (personal license): parametric control for batch variations.
- OpenSCAD: script-based, perfect for generating hundreds of name variants.
- Blender: useful for organic or artistic badge shapes.
For batch production, here is a minimal OpenSCAD template that generates a keychain from a single name variable:
name = "ALEX";
font_name = "Liberation Sans:style=Bold";
difference() {
union() {
// Base plate
linear_extrude(height = 3)
offset(r = 3) offset(delta = -3)
square([50, 22], center = false);
}
// Key ring hole
translate([6, 11, -1]) cylinder(h = 5, d = 5, $fn = 48);
}
// Raised text
translate([14, 5, 3])
linear_extrude(height = 1)
text(name, size = 11, font = font_name, halign = "left");
Change name and export an STL for each person. Using the command line, you can automate it:
openscad -o alex.stl -D 'name="ALEX"' keychain.scad
openscad -o maria.stl -D 'name="MARIA"' keychain.scad
Recommended Print Settings
These settings assume a 0.4 mm nozzle on a standard Cartesian or CoreXY FDM printer.
| Setting | PLA / PLA+ | PETG | TPU |
|---|---|---|---|
| Layer height | 0.12–0.16 mm | 0.16–0.20 mm | 0.20 mm |
| First layer height | 0.2 mm | 0.2 mm | 0.2 mm |
| Wall count | 3 | 3 | 3 |
| Top/bottom layers | 5 / 4 | 5 / 4 | 5 / 4 |
| Infill | 100% (thin parts) | 100% | 100% |
| Print speed | 50–80 mm/s | 40–60 mm/s | 15–25 mm/s |
| Cooling fan | 100% | 30–50% | 50–100% |
| Retraction | 0.8 mm @ 40 mm/s (direct drive) | 1.0 mm | 0–0.5 mm |
Why 100% infill? At 3 mm thickness, “infill” is mostly perimeters anyway. Full infill adds strength at the key ring hole and costs fractions of a gram.
Orient parts flat. Print the keychain lying on the bed. Layer lines then run across the part’s length, not across the weak hole area. Standing parts up creates a lethal weak point along the Z-axis.
Bed Adhesion and Surface Finish
- Textured PEI gives a matte bottom and reliable grip.
- Smooth PEI gives a glossy bottom, ideal when the underside is visible.
- Add a brim of 3–5 mm only for tiny parts that lift at the corners.
- Use ironing on top layers (flow 10–15%, speed 15 mm/s) for a glass-smooth finish on flat surfaces.
Multi-Color Techniques
Color contrast makes text readable and products appealing. You do not need a multi-material system.
Method 1: Pause-at-Layer Color Swap (Single Extruder)
Print the base in color A, pause just before the text layers, swap filament, and finish in color B. In PrusaSlicer or OrcaSlicer, right-click the layer slider and choose “Add color change.” For Cura, use the ColorChange post-processing script.
For Klipper users, a macro handles the swap cleanly:
[gcode_macro COLOR_SWAP]
gcode:
PAUSE
G91
G1 Z10 F600
G90
G1 X10 Y10 F6000
M117 Swap filament, then RESUME
After inserting the new filament, run RESUME. Purge a short strand before the nozzle returns to the part, because residual color contaminates the first lines of text.
Method 2: Multi-Material Systems (AMS, MMU3, Toolchangers)
These print complete flush-color text automatically. Expect extra purge waste (often 3–5 g per color change), which dominates cost on tiny items. For keychains, minimize changes by placing text in a single layer band.
Method 3: Paint or Marker Finishing
Print raised text, then wipe a paint marker across the surface. Wipe the top flat with a damp cloth while the paint is wet. Only the recessed or lowest areas keep the color. This works best on engraved text and is cheap and fast.
Step-by-Step: Making Your First Keychain
- Create the design. Use a 50 × 25 × 3 mm base, a 5 mm hole, and 1 mm raised text.
- Export as STL or 3MF. Choose 3MF if you want to preserve color assignments.
- Slice it. Apply the table settings above and set 100% infill.
- Preview layers. Confirm that text strokes appear as continuous lines, not broken fragments.
- Print flat. Use a clean bed and confirm first layer squish at 0.2 mm.
- Remove carefully. Let the bed cool first. PLA releases from PEI at around 30 °C.
- Clean up. Trim stringing with a hobby knife or a quick pass with a heat gun at low setting.
- Attach hardware. Add a split ring or lobster clasp.
Batch Production Tips
If you plan to sell or gift in volume:
- Fill the bed. A 256 × 256 mm bed fits 40 or more keychains at 50 × 25 mm with 5 mm spacing.
- Use the same filament spool for the whole batch. Color differences between spools show up on matching sets.
- Print overnight with a small enclosure or draft shield to maintain consistency.
- Label plates. Add small ID marks or print a separate plate per customer to avoid mix-ups.
- Reduce travel and stringing. Enable Avoid crossing perimeters and tune retraction, since many small parts mean many travel moves.
| Batch Size | Approx. Print Time | Approx. Filament | Cost per Unit |
|---|---|---|---|
| 10 keychains | 1 h 30 min | 40 g | ~$0.15 |
| 40 keychains | 4 h | 160 g | ~$0.15 |
| 100 keychains | 10 h (3 plates) | 400 g | ~$0.15 |
Finishing and Hardware
Raw prints are fine. Finished prints sell.
| Finish Method | Effort | Result |
|---|---|---|
| Light sanding (400→800 grit) | Low | Smooths edges and removes layer lines on sides |
| Heat gun pass | Low | Removes stringing; small gloss effect on PLA |
| Acetone vapor (ABS/ASA only) | Medium | Glossy, sealed surface |
| Clear coat spray | Low | Protects paint, adds UV resistance |
| Epoxy resin dome | High | Premium glass-like finish on badges |
For hardware, stock a set of 25 mm split rings, lobster clasps, pin backs (for badges), magnetic backs (for name tags), and lanyard clips.
Real-World Use Cases and Examples
Gifts
- Birthday party favors: print each guest’s name plus a themed icon (star, dinosaur, rocket).
- Wedding table tags: flat-lay name tags in white silk PLA with gold text.
- Teacher appreciation: school-logo keychains with the teacher’s name on the reverse.
Small Business and Events
- Trade show badges: magnetic-back name tags using 2 mm PLA+ for consistent branding.
- Craft fair merch: pet name tags, luggage tags in TPU, and initial keychains.
- Corporate onboarding kits: engraved employee badges with company logos.
Practical and Technical Uses
- Tool and equipment ID tags: engraved asset numbers on PETG tags that resist oil and moisture.
- Makerspace member badges: color-coded by access level with QR codes engraved on the surface.
- Luggage tags: TPU flex tags with a contact card slot, designed with a 1.2 mm window lip.
QR Code Badges
Engrave a QR code at minimum 25 × 25 mm with 0.4 mm deep recesses and fill with contrasting paint. This turns a name badge into a digital business card or a pet tag that links to owner contact info.
Common Problems and Fixes
| Problem | Likely Cause | Fix |
|---|---|---|
| Text blurs or fills in | Layer too thick, over-extrusion | Drop to 0.12 mm layers; calibrate flow to 95–98% |
| Hole snaps in use | Thin wall around hole | Increase to ≥ 3 mm wall; use PETG |
| Corners lift | Poor adhesion, drafts | Clean bed, add brim, raise bed by 5 °C |
| Stringing between letters | Retraction too low | Increase retraction by 0.2 mm steps; lower temp by 5 °C |
| Rough top surface | Low top layer count | Use 5+ top layers; enable ironing |
| Colors bleed at swap | No purge after change | Purge 50–100 mm of filament before resuming |
Frequently Asked Questions
What is the best material for 3D printed keychains?
PLA+ or PETG work best. PLA+ offers easy printing and good strength for indoor use, while PETG handles heat, impact, and moisture better. Choose TPU if you want a flexible, nearly unbreakable tag.
How thick should a 3D printed keychain be?
Use 3 mm thickness with at least 3 mm of material around the key ring hole. Thinner designs of 2 mm work for name tags but may crack if used as keychains.
Can I make multi-color keychains without a multi-material printer?
Yes. Use a pause-at-layer color change in your slicer. Print the base in one color, pause before the text layers, swap filament, and resume. Alternatively, paint raised text with a marker.
How much does it cost to 3D print a keychain?
Typically $0.10–$0.30 per piece in filament, assuming 3–8 g at roughly $20 per kg. Hardware like split rings adds a few cents more.




