I was trying to print parts for a small CD-ROM drive based plotter based on this thing https://www.thingiverse.com/thing:3521286

But as tolerances are very small and need to match the existing parts, I realized that my printed parts are actually a little bigger, I made a test with a part like this:

   _                          _
 /   \                      /   \
 \  .------------------------. ___
    | [O]________________[O] |  ^
    | |                    | |  |
    | |                    | |  |
    | |                    | |  |
    | |  |<--- 62mm ---->| | |  |
    | |                    | | 70mm
    | |                    | |  |
    | |                    | |  |
    | |                    | |  |
    | |                    | |  |
   _| [O]________________[O] | _v_
 /  '------------------------'  \
 \ _ /                      \ _ /

Side View:

      [X]                [X]

A squared and mouse-eared frame with two protruding 4mm cubes on each corner with inner distances of 62mm and outer of 70mm between each adjacent cubes.

I discovered that, after measuring many times and averaging distances, my model printed 0.227..% larger.

I've heard of shrinkage factor for ABS or Nylon, and people compensate scaling their models while slicing.

But what about PLA?

Im using:

  • Anet A8
  • Stock marlin firmware (not the Anet one)
  • Flashforge natural PLA 1.75mm
  • 0.4mm Nozzle
  • 0.2mm layer height
  • 0.4mm line width
  • 210ºC extrusion temp
  • 60ºC Bed temp
  • 40mm/s print speed
  • Fusion 360, Cura 2.7 or 4.3 and Octoprint.

The printed model is pretty flat, has no curvatures or artifacts either.

Would this be an error of constants on my printer a known artifact from PLA?

  • $\begingroup$ What's your line width? $\endgroup$
    – Trish
    Oct 17, 2019 at 8:34
  • $\begingroup$ The Z direction is usually very close. X and Y isn't a ratio of the total size, but the increase is a factor of how much the extruder mashes down the outer shell. $\endgroup$
    – Perry Webb
    Oct 17, 2019 at 8:58
  • $\begingroup$ If it's repeatable, then just adjust the scale factor by the opposite amount before slicing the model. $\endgroup$ Oct 17, 2019 at 15:42
  • 1
    $\begingroup$ You mention "averaging". Please provide measured values for inner and outer dimensions. Also, you should measure after removing the two bottom layers, which can be squeezed to the bed and appear larger. $\endgroup$
    – FarO
    Oct 17, 2019 at 17:19
  • 2
    $\begingroup$ @rccursach I ask the two values separately because if the inner dimension is smaller than expected, and the outer one is larger, the two with an average of 0.whatever% you have a certain issue, but if both inner and outer dimensions are larger than expected, you have another issue. $\endgroup$
    – FarO
    Oct 18, 2019 at 7:35

3 Answers 3


You are not taking into account die swell.

When printing with a 3D printer hot plastic is forced through a nozzle, which leads to the expansion of the material. The result is, that with 0.4 mm nozzle and 0.4 mm intended line width, the material will actually deposit some fraction of a millimeter wider. In your test case, that is 0.22%. If you'd print a double-sized test piece, I expect 0.11%, and in case of a half-sized 0.44% - in other words, it is a static offset.

Because of this, it is usually better to demand wider lines than the nozzle is, forcing the die swell effect to become negligible in the wider line. I managed this with about 110% of the nozzle width on my machines.

Further Reading: Why is it conventional to set line width > nozzle diameter?

  • $\begingroup$ Awesome! No I didn't think about die swell, I'll make the experiment to scale the model down a few times and verify. Then play with the line width and come back with results. $\endgroup$
    – rccursach
    Oct 18, 2019 at 19:53

There are several ways to try and adjust for this effect of squashing the material, which is ultimately about having enough space for the material you lay down.

As mentioned: You can try to pre-scale models (not very effective as a general solution because it is a function of the model and how many adjacent layers your material is forcing)

You can up the line width.

If your software allows, you can input a slightly larger filament diameter to lay a bit less material. (Wanted to stress this one as it's been pretty useful for me)

If you are intentionally undershooting the volume by some percentage via the filament diameter, it may help to play with the layer height to control the end result of the line's cross section.

I've had good results with a combination of the latter three (basically comes down to calibrating the printer to get settings for your desired material spool, and level of detail -> sizes of line and layer for the print)


Cura has a fixed offset called "horizontal expansion", which can be set negatively. This way you can hardcode a -0.1mm offset for example. It worked for me where holes got too small and pegs got too thick.

  • $\begingroup$ Simplify3D has this as well, but I tend to find it troublesome because it will actually adjust your model and not just change the print settings. It's best to get your extrusion width calibrated instead. $\endgroup$
    – Logarr
    Oct 23, 2019 at 21:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .