Home and desk

Make a headphone hanger that fits your desk

This tool builds a headphone hanger sized to your desk and headband and exports it as STL. Choose a desk edge clamp, an under-desk screw plate or a wall plate, then enter arm length, cradle width and curve in millimetres.

A bump on the lower jaw tip makes the mouth 0.6 mm narrower than the desk (24.4 mm for a 25 mm desk), so the flexing jaw grips; a 45° ramp lets it slide on. The arm top follows a concave arc with rounded edges, so the headband sits centred without pressing into the padding, and the rising tip stops it sliding off. A small hook under the arm is for winding the cable.

Free, no sign-up. Change the sizes in millimetres and download the STL.

Curved headphone hanger clamped to a desk edge

Ready-made variants

Each variant is the same template with different settings. Follow the link and the editor opens with those values.

Adjustable sizes

These values are edited in the editor's template panel. A number outside the range is clamped to the nearest limit automatically.

SizeRangeDefault
Shape
MountingClamp, Under desk, WallClamp
Dimensions
Arm length30–150 mm70 mm
Cradle width20–80 mm40 mm
Thickness4–15 mm8 mm
Cradle radius0–400 mm150 mm
Arm drop *0–80 mm15 mm
Mounting
Desk thickness *12–50 mm25 mm
Clamp depth *15–80 mm35 mm
Root tolerance *0–1.5 mm0.4 mm
Plate length *30–120 mm50 mm
Screw hole diameter *0–6 mm4 mm
Options
Cable wrap hookOn / OffOn

Sizes marked with a star appear in the panel only when the related shape, style or option is active.

What it is used for

  • A permanent spot for a gaming headset on the desk edge
  • Hidden headphone hook screwed under the desk
  • Studio headphone hanger on a wall
  • Cable wrapped on the hook under the arm

Printing tips

Orientation
Print on its side: profile on the bed, cradle width going up. Clamp gap, arm and cable hook all come out in one plane.
Layer height
0.2 mm layers. Layers run parallel to the profile, so arm and clamp resist bending well.
Infill
30% infill and at least 4 walls; walls decide how well the flexing clamp holds up.
Supports
Not needed. Screw holes on the under-desk and wall plates are teardrop shaped and close at 45° on top.
Material
Use PETG or ASA for the clamp, which holds by flexing; PLA loosens or cracks over time. PLA is fine for screwed versions.

Tips

  • On a rounded desk edge, increase clamp depth so the jaw sits flat.
  • For heavy headphones use 10 mm thickness.

Which mounting type should I pick?

The clamp fits without drilling and can move with you; it suits desks from 12 to 50 mm thick. The under-desk plate is fixed with two screws, the arm comes out from below and the hanger stays out of sight. The wall plate works away from the desk, beside a door or at the end of a shelf.

  • Rented home or shared desk: clamp
  • Permanent and hidden: under-desk screws
  • No desk nearby: wall plate, two screws

How do cradle curve and width work?

Cradle width is where the headband rests; 30-45 mm suits most headphones. The curve is the radius of the arm top, and a smaller radius lifts the tip more. Below 1.25 times the arm length the tool enlarges it with a note. Zero gives a straight arm with a 10 mm tip lip.

  • Wide gaming headband: width 45-50 mm
  • Slim headband: width 30 mm, curve 120 mm
  • Straight arm: curve 0, tip lip added automatically

Frequently asked questions

The clamp is loose on my desk. What should I do?

Measure the desk with calipers and enter the exact value; the mouth is always 0.6 mm narrower. Edge banding can add a few tenths of a millimetre.

How much weight can it hold?

At 8 mm thickness in PETG it carries far more than any headset weighs. A long arm on a slim body may flex at the tip, and adding thickness is the most effective fix.

Do I need the cable hook?

No, you can switch it off in the options. When it is on, a small J hook facing the mount forms under the arm and the cable wraps around it.

Similar templates

Set the sizes to fit your part

Open the template in the editor, enter your values and download a print-ready STL. No account needed.

Open in editor