Skip to content


Repository files navigation

iRuler customizable ruler

3D printable customizable ruler in centimeters, inches, or both (formerly thing:1902359)


Creative Commons - Attribution - Share Alike


This is a remix of stu121's customizable ruler (Thingiverse thing:109739).


Photo 1🔎 Photo 2🔎 Photo 3🔎

Description and Instructions

Did you ever have an acute need for a custom ruler that is exactly two centimeters long? Or does everyone keep on stealing your rulers because there is no permanent way to tag them? This customizable iRuler with will solve all your problems!

This is a remix of stu121's customizable ruler. It has a refined design, and more customizable options:

  • Available in either centimeters or inches, or both.
  • The subdivision lines are now recessed, which makes them more printable on an average FDM printer.
  • Text and numbers can be embossed or recessed by using a positive, respectively negative height. A height of 0 omits text or numbers. You can even have the text cut all the way through, but this will leave you with loose bits for letters like ‘o’ and ‘B’.
  • Optional hole.
  • Configurable width.
  • Optional rounded corners.
  • The design can be flipped around to have the text facing either upward or downward.

Creating a custom ruler

Open the .scad file in OpenSCAD and use the OpenSCAD Customizer to create a model with your own desired specifications.

If the subdivision lines are set too narrow, they will fuse together and become invisible. You can do some tiny test prints with the ruler set to 2 cm or 1 inch to find a good setting, but the default should be OK for most printers.

Not all Unicode characters may work, although the usual Latin characters like ‘é’ should be directly usable in OpenSCAD without having to use escape codes. Non-European scripts can be usable if you change the font (you will have to do that in the code, there is no customizer option for this).


If accuracy is important, you must consider the fact that most plastics will shrink when cooling down after printing. For ABS this can be very significant. To get a perfectly accurate ruler, you should scale up the 3D model in your slicing program or an external 3D model editor, by the inverse of the shrinkage factor.

To determine the shrinkage for your filament and print settings, first print a test piece with the exact same material and settings as you want to use for the ruler. Measure the actual distance between two known points on the printed object. I provide two calibration models that have notches 20 cm or 15 cm apart (7.874 or 5.906 inches). Do not rely on outside dimensions: for the calibration models, measure between the tips of the small triangles, the expected distance is either 200 mm or 150 mm. Calculate the scale factor as the expected length divided by the measured length, and use this factor to scale up the model before printing it.

For instance for the silky gold PLA of the first photo, I noticed about 0.5mm shrinkage across 20 cm, hence I had to upscale the ruler to 100.25% to make it accurate.

Hints for Printing

A layer height of 0.1 is recommended for the details to be well printed. If you can, set perimeter width as narrow as possible (i.e., 0.4 for a 0.4 mm nozzle).



First publication on Thingiverse.


Added inches option which has subdivisions down to 1/16th.


Migrated to GitHub, added option for combined cm and inches, and rounded corners.


centimeter, centimeters, customizer, imperial, inch, inches, metric, millimeter, millimeters, openscad, ruler, Ruler_in_Centimeters, writescad