The Xometry app works best with JavaScript enabled!
  • Solutions
  • Industries
  • Resources
  • Enterprise
  • How Xometry Works
  • Become a Supplier
Resources3D Printing DesignHow to Convert OBJ to STL Files

How to Convert OBJ to STL Files

Picture of Dean McClements
Written by
picture of Greg Paulsen
Updated by
 6 min read
Published August 23, 2022
Updated August 23, 2024

Learn about these two file formats and how to perform the conversion from OBJ to STL.

File conversion. Image credit: Shutterstock.com/AdresiaStock

OBJ is a very compact file structure that stores all of the shape, texture, and color information for a 3D object. It is useful for fast rendering of graphics and is accepted as an input format by higher-spec 3D print machines and slicers. It doesn’t include external factors such as lighting/shadow, but it has all the information needed to display a 3D object at any resolution required. One benefit is that high-resolution data doesn’t bloat the file size, unlike other formats.

STL (commonly interpreted as STereo Lithography, but likely originated as Standard Triangle Language or Standard Tessellation Language) is the “standard” file type used by the majority of 3D printers in the mid and low price ranges. It’s an old format that is clumsy in some ways. But, it is sufficient for communicating shape (without color or texture information). STL is also universally accepted and very reliable. STLs store the surface of an object as geometric data for a series of points. This generally results in triangular subsurfaces, which form a net that describes the external 3D shape. This gives no information about thickness, color, or texture. It’s not a “design” format but a simplified communication tool.

OBJ’s main advantage over STL is that it stores the color and texture data right there in the file, making it ideal for rendering complex and multicolored parts. Several software tools will do the job when you have an OBJ file and need to convert it to an STL format for your slicer software. Most are either free downloads or online tools, so this is not something you need to pay for. Some are easier to use and more intuitive than others.

This article will discuss the steps in OBJ to STL file conversion using Spin 3D, OBJ to STL file definition, their importance, and the converters to use.

1. Download Spin 3D Mesh Converter Software

Go to the Spin 3D download page and follow the freeware version link. Use the operating system you're using if you want the paid version.

2. Add OBJ Files to the Program

There are two methods to add files for conversion: 

  • Use the File Select button at the top left, the big green ➕ 
  • Drag and drop files from your folders into the Spin 3D workspace

3. Select an Output Folder

Choosing an output folder is not necessary, as the default is to save it in the same folder as the file you’re converting. If you want to save it somewhere else it’s simple, just click on the “Browse” button at the bottom right of the screen. Use Explorer to locate the folder you want converted files saved to.

4. Configure the Output Format

To configure the output format, there's a drop-down list on a button next to “Output Format” at the bottom left of the screen – select STL.

5. Convert OBJ to STL

Click on the “Convert” button at the bottom right of the screen and the software will do the rest. The STL file will be saved either in the same directory as the OBJ file uploaded or in the destination folder set.

OBJ to STL file conversion
OBJ to STL file conversion

What Is an OBJ File?

An OBJ file is a file format that represents 3D geometry. From a 3D print perspective, an OBJ file constructs the outward 3D net shape out of a series of flat polygons (mostly triangles) whose vertices (corners) are clearly defined in a simple and regular format. One point is defined through:

  1. v: A position in space (x-y-z and either w or r-g-b) where w is an optional value that defines the color number (0–1). It can also be a set of three values for RGB color.
  2. vt: Texture datum for the point (u-[v-w]), which acts like the definition of the paint applied to texture a triangle. This will only affect a 3D print if the texture has a roughness that is more pronounced than the minimum build resolution.
  3. vn: The vertex normals, which orientate the vertex.

The three points define a triangle, and many, many triangles make a 3D object. There are other properties, such as parameter space vertices, but these are more relevant to 3D rendering on screen and don’t affect 3D printing.

What Is an STL File?

An STL is an ASCII format file that originated with 3D Systems' development of 3D printers. It was used as a means of communicating the printing requirements to the machines they were developing. STL files use the same basic methodology for communication of 3D objects that OBJ uses – but at a lower level of detail. It contains no color or texture information and has a slightly more clunky file structure. Mesh information for the triangles to construct the 3D representation contains 3-point (x-y-z) information for each vector. Plus the “normal” information, defining which face of the resulting triangle is outward facing. Non-standard binary formats of STL have been developed. This adds methods of encompassing color data into the file – but these are not commonly used.

When to Convert OBJ Files to STL Files

Converting OBJ files to STL files is only necessary for home machines and the freeware slicer sector of the market. Most high-end printers can accept OBJ format files. But this is unusual in hobbyist and lower-cost machines, which are only set up to use the STL format.

Table 1. Comparison of OBJ vs. STL
PropertySTLOBJ
Property

Vector x-y-z

STL

✔️

OBJ

✔️

Property

Color attributes

STL

❌ in common ASCII format, can be present in digital files

OBJ

✔️

Property

Texture attributes

STL

OBJ

✔️

Property

Parameter space vertices

STL

OBJ

✔️

Property

Line elements

STL

OBJ

✔️

Property

NURBS support

STL

OBJ

✔️

Property

Relative AND absolute indices supported

STL

OBJ

✔️

At its core, STL was created as a way of communicating shape information for 3D objects. It contains no information about color, texture, material properties, or other attributes. This makes it a very simple and robust format. OBJ, on the other hand, is a more complete and detailed definition of a 3D object. It allows detailed virtual rendering to make it colored, textured, and “real” looking. This requires a greater depth of properties to be integrated into the file structure, making the OBJ format considerably more capable than STL.


Disclaimer

The content appearing on this webpage is for informational purposes only. Xometry makes no representation or warranty of any kind, be it expressed or implied, as to the accuracy, completeness, or validity of the information. Any performance parameters, geometric tolerances, specific design features, quality and types of materials, or processes should not be inferred to represent what will be delivered by third-party suppliers or manufacturers through Xometry’s network. Buyers seeking quotes for parts are responsible for defining the specific requirements for those parts. Please refer to our terms and conditions for more information.

Picture of Dean McClements
Dean McClements
Dean McClements is a B.Eng Honors graduate in Mechanical Engineering with over two decades of experience in the manufacturing industry. His professional journey includes significant roles at leading companies such as Caterpillar, Autodesk, Collins Aerospace, and Hyster-Yale, where he developed a deep understanding of engineering processes and innovations.

Read more articles by Dean McClements

Quick Links

  • Home

  • Contact Us

  • Help Center

  • About Us

  • Careers

  • Press

  • Investors

  • Xometry Go Green

Support

  • Privacy Policy | Terms of Use | Legal

  • ITAR | ISO 9001:2015 | AS9100D | ISO 13485:2016 | IATF 16949:2016


© 2024 Xometry, All Rights Reserved