Workflow · 8 min read

How to engrave serial numbers into a batch of 3D prints

Numbering a production run without CAD: where to put the mark, how deep to cut it, and how to keep the digits readable after the first layer lines appear.

Once you print the same part more than about twenty times, you need to be able to tell the copies apart. Which ones came off the machine that was drifting. Which batch used the older filament. Which unit the client is complaining about. A serial number cut into the model solves all of it, and it costs nothing per part because it happens before slicing.

The awkward bit is that adding a different number to each of sixty models normally means sixty trips through CAD. It does not have to.

Engrave, don’t emboss

You can either cut the number into the surface or raise it above the surface. For batch numbering, cut it in, every time.

  • Raised text needs support and catches on things. On a vertical face it overhangs; on a top face it prints fine but snaps off in a bag of parts.
  • Recessed text is protected. It survives tumbling, sanding and years of handling, because the surface around it takes the wear instead.
  • Recessed text is easier to read. Shadow inside the cut gives contrast even in a single colour. Raised text on the same colour part is nearly invisible.

Choose the face before you choose the number

The mark should be somewhere a person can find deliberately and never notices otherwise. In practice that means:

  • A flat face. Curved surfaces distort the digits and make depth inconsistent across the mark.
  • The underside or the back, if the part has a presentation side. Nothing about a serial number is decorative.
  • Not a mating surface. A recess on a face that has to sit flat against something else is a leak path, a rock, or a glue failure waiting to happen.
  • Not a thin wall. Cutting 1 mm into a 1.2 mm wall leaves 0.2 mm, which will not survive the part being dropped.

If the part is printed face-down on the bed, remember the bottom surface is the smoothest one you will get. It is usually the best place for a mark, and the engraving will come out crisper there than anywhere else.

Depth: 0.8 to 1.2 mm is the useful range

Depth is a trade between readability and strength. 4B Engraver exposes it from 0.6 to 2.0 mm, and the practical band is narrower than that.

DepthResult
0.6 mmTwo or three layers at 0.2 mm. Readable in good light, easy to lose under a coat of paint.
0.8–1.2 mmThe sweet spot. Reliable shadow, survives sanding and paint, costs almost no strength.
1.5 mm+Only for large parts or when the mark must survive heavy finishing. Watch your wall thickness.

A useful way to think about it: pick a depth that is at least four layer heights. At a 0.2 mm layer that is 0.8 mm. Anything shallower and the slicer may render the recess as a surface texture rather than a cut, which reads as a smudge.

Size the digits for the printer, not the screen

The number looks perfectly clear in a 3D preview at any size. On the machine it is limited by the nozzle. A 0.4 mm nozzle cannot cut a feature narrower than about 0.4 mm, so the gaps inside an 8 or a 6 close up if the digits are too small.

As a starting point, keep character height at 4 mm or more with a 0.4 mm nozzle. Below about 3 mm the digits start merging and you will be reading them with a loupe. If the part is small enough that 4 mm does not fit, use fewer characters rather than smaller ones — a three-digit number at 4 mm beats a six-digit one at 2 mm.

Design the numbering scheme first

A prefix plus a sequence is almost always right, because the prefix tells you what the thing is and the sequence tells you which one. Something like MK2-001 carries the revision, so a part that comes back in a year is instantly identifiable. Add the year if the run will repeat: MK2-26-001.

Two things worth deciding once and never changing:

  • Pad the numbers. 001 rather than 1. It keeps the mark the same physical width on every part, which matters because the recess changes print time slightly, and it sorts correctly in every spreadsheet you will ever paste it into.
  • Start at 001, not 000. Zero-indexed serials confuse everyone who is not a programmer, including you in six months.

Generate the batch

The workflow that avoids CAD entirely:

  1. Upload the STL or 3MF once.
  2. Pick the flat face to mark.
  3. Set the prefix and the starting number.
  4. Set depth, and check the digits in the 3D preview at the size they will actually print.
  5. Download the numbered models and drop the whole set into the slicer.

The output is a watertight 3MF, which matters more than it sounds: a mesh with holes will slice into something unpredictable around the engraving, and boolean operations on imported STLs are exactly where that tends to happen.

Print one before you print sixty

Always run a single part first and look at the actual mark. You are checking three things: that the digits are separated, that the depth gives visible shadow on the real material colour, and that the recess did not land somewhere the slicer decided to bridge oddly. Five minutes here saves a whole plate.

Keep a record the number points to

A serial number is only useful if it resolves to something. Keep a plain spreadsheet with one row per unit: serial, print date, machine, filament batch, and where it went. This is the entire point of the exercise, and it is the step people skip.

When a part fails eighteen months later, the number on the underside turns “one of these broke” into “the ones from that spool, on that machine, in that week”. That is the difference between guessing and knowing.

Checklist

  1. Cut the mark in; never raise it.
  2. Pick a flat, non-mating, non-visible face with enough wall behind it.
  3. Depth 0.8–1.2 mm, and at least four layer heights.
  4. Character height 4 mm or more on a 0.4 mm nozzle.
  5. Prefix plus zero-padded sequence, starting at 001.
  6. Generate the whole batch in one pass, not one model at a time.
  7. Print one, inspect the mark, then commit the plate.
  8. Log every serial against machine, filament and destination.