<p>STL is unit-less, but everything that cares about units will pick one.
Typically, the unit picked is mm.</p>
<p>But even if that's not the case, you can always scale it with a unit conversion ratio after importing it.</p>

CC BY-SA 4.0
2021-09-17T23:34:15.603Z
I see. So the slicer automatically assign "mm" as a unit to the STL geometry. thanks
Brett Cooper
CC BY-SA 4.0
2021-09-18T01:47:07.040Z
If I say I want you to cut the string I give into 3 equal pieces, and then I give you a 12" long piece of string, where is the unit assignment taking place?  Do you assign "mm" to something?
Abel
CC BY-SA 4.0
2021-09-18T02:18:44.777Z
But we pass a STL file to the slicer and the STL does not have dimensional information. So the slicer must interpret that dimension in a certain unit. user10489 mentions that the software will pick a unit...
Brett Cooper
CC BY-SA 4.0
2021-09-18T12:31:34.127Z
So usually the unit is picked when the software is written, so like, it is always mm for that software.   But I had one software package that would say "This object is tiny, it looks like you drew it in inches instead of mm" and would automatically scale it without asking -- frequently incorrectly.
user10489
CC BY-SA 4.0
2021-10-02T23:57:17.227Z
meaning that if say I programmed a slicer to use inches (I don't think there's a lower unit) the resulting G-code would result in a different sized print than if I processed it in say Cura?
Tristan Adams
CC BY-SA 4.0
2021-09-17T22:48:17.083Z
2021-09-18T09:27:36.510Z
2021-09-18T09:27:36.510Z
user10489
<p>I understand that an STL file contains all the coordinates of all the vertices of all triangles that a surface may be subdivided into. But it does not contain the physical dimensions of the model.
However, in Tinkercad, we create a 3D model with very specific dimensions in mm.</p>
<p>We then import the STL file into a slicer where it appears with exactly the same dimensions we set up in Tinkercad for the object. After converting the STL to G-code, the printer prints the 3D model with the dimensions we intended it to have.</p>
<p>How is all that possible if the initial STL file does not have information about the physical dimensions of the object?</p>

<stl>
STL files and physical dimensions of a 3D printed object
Brett Cooper
# STL files and physical dimensions of a 3D printed object

(Asked by: username_0 on 2021-09-17)

I understand that an STL file contains all the coordinates of all the vertices of all triangles that a surface may be subdivided into. But it does not contain the physical dimensions of the model.
However, in Tinkercad, we create a 3D model with very specific dimensions in mm.

We then import the STL file into a slicer where it appears with exactly the same dimensions we set up in Tinkercad for the object. After converting the STL to G-code, the printer prints the 3D model with the dimensions we intended it to have.

How is all that possible if the initial STL file does not have information about the physical dimensions of the object?

**Tags:** stl

---

## 1 answers

### Answer by username_1 on 2021-09-17. Score: 3

STL is unit-less, but everything that cares about units will pick one.
Typically, the unit picked is mm.

But even if that's not the case, you can always scale it with a unit conversion ratio after importing it.

> **Comments:**
> **username_0**: I see. So the slicer automatically assign "mm" as a unit to the STL geometry. thanks  
> **username_2**: If I say I want you to cut the string I give into 3 equal pieces, and then I give you a 12" long piece of string, where is the unit assignment taking place?  Do you assign "mm" to something?  
> **username_0**: But we pass a STL file to the slicer and the STL does not have dimensional information. So the slicer must interpret that dimension in a certain unit. user10489 mentions that the software will pick a unit...  
> **username_1**: So usually the unit is picked when the software is written, so like, it is always mm for that software.   But I had one software package that would say "This object is tiny, it looks like you drew it in inches instead of mm" and would automatically scale it without asking -- frequently incorrectly.  
> **username_3**: meaning that if say I programmed a slicer to use inches (I don't think there's a lower unit) the resulting G-code would result in a different sized print than if I processed it in say Cura?  

---

