The Xometry app works best with JavaScript enabled!
Resources3D Printing DesignOBJ to STL: How to Convert OBJ to STL Files

OBJ to STL: How to Convert OBJ to STL Files

Megan Conniff - Xometry Contributor
Written by
 18 min read
Published August 23, 2022
Updated May 7, 2026

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. High-resolution meshes increase the OBJ file size significantly, unlike other formats.

STL (commonly interpreted as Stereolithography, 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. Conversion from OBJ to STL removes color, texture, and material data, preserving only geometry.

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: The v entry defines vertex position (x, y, z) with an optional w (weight for rational curves).
  2. vt: Texture datum for the point (u-[v-w]), which acts like the definition of the paint applied to texture a triangle. Texture coordinates do not affect geometry in 3D printing unless explicitly converted into geometry (e.g., embossing).
  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.

How is an OBJ File Used in 3D Modeling?

OBJ files are used in 3D modeling through a universal exchange format that moves geometry across software, game engines, and digital asset libraries. Blender, MeshLab, and similar software rely on the format to import and export geometry without losing mesh structure. The format stores polygon mesh data alongside texture coordinate references, making it flexible for complex visual projects. MTL files accompany the format to define material properties like color, reflectivity, and texture mapping. Game developers commonly pull OBJ assets into engines to build environment geometry and character models. Digital asset libraries distribute 3D content in the format precisely because of its wide compatibility across different applications. The combination of mesh geometry support and material referencing through MTL files makes the OBJ file a preferred choice for artists moving assets across production pipelines.

What Data Does an OBJ File Contain?

The data that the OBJ file contains is listed below.

  • Vertices: Vertices define the exact position of each point in 3D space using X, Y, and Z coordinates. Each surface of a 3D object depends on vertex data to establish its spatial structure.
  • Faces: Faces connect vertices to form the flat surfaces of a 3D mesh. Triangular or polygonal face definitions describe how the surface of an object takes shape.
  • Normals: Normals indicate the direction each surface faces relative to the light source. Accurate normal data ensures correct shading and surface rendering in 3D applications.
  • Texture Coordinates: Texture coordinates, known as UV coordinates, map a 2D image onto the surface of a 3D object. The UV data tells the software how to wrap textures across specific areas of the mesh.
  • Material References: Material references point to an associated MTL file that holds the material definitions for the object. The MTL file stores color values, shininess, transparency, and texture file paths used during rendering.

Can OBJ Files Be Used for 3D Printing Directly?

Yes, OBJ files can be used directly in many modern slicers, though STL and 3MF are more commonly used. OBJ files are not reliably used for 3D printing directly without conversion in workflows. Slicing software, which prepares models for 3D printers, accepts STL as the standard input format. STL files represent geometry using triangular meshes without texture or color data, which matches exactly what slicers need to generate printable layers. OBJ files carry additional data like UV maps and material references that slicers do not process. Extra data is typically ignored rather than causing compatibility issues when feeding the file directly into slicing software. Users convert OBJ files to STL before printing to ensure the geometry transfers cleanly and the slicer reads the mesh without errors.

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.

Why is STL File Used for 3D Printing?

STL files are used for 3D printing because the format stores surface geometry as triangular mesh data without color, texture, or material information that fabrication machines do not require. Each triangle in the mesh carries three vertex coordinates and a surface normal, giving slicing software the exact geometric data needed to generate printable layers. Slicing software reads the triangulated surface, cuts the geometry into horizontal cross-sections, and translates each layer into machine instructions that the printer executes. ASCII STL stores triangle data as readable text, allowing direct inspection of the geometry at the cost of larger file sizes. Binary STL encodes identical geometric data in a compact numerical format, reducing file size significantly while preserving full surface accuracy. The stripped-down structure removes all rendering information, leaving solely the outer shell that fabrication machines need to build a physical object. The precision, simplicity, and universal slicer compatibility of the triangulated surface structure established the STL file as the standard format across professional and consumer 3D printing workflows.

What Kind of Information does an STL File Store?

The information that the STL file stores is listed below.

  • Triangular Facets: Triangular facets form the building blocks of STL geometry, covering the entire outer surface of a 3D model. Each facet connects three vertices to represent one flat section of the object's surface.
  • Vertex Coordinates: Vertex coordinates record the exact X, Y, and Z position of each corner point on each triangle. Slicing software reads coordinate data to reconstruct the full 3D shape before generating print layers.
  • Surface Normals: Surface normals define the outward-facing direction of each triangular facet relative to the object's exterior. Correct normal orientation allows slicing software to distinguish the inside of a model from the outside.
  • No Color or Texture Data: STL files do not store color values, UV maps, or material references of any kind. Slicing software focuses strictly on geometry, making the absence of texture data a deliberate and functional characteristic of the format.

Can You Convert STL to 3D Printing?

Yes, you can convert STL to 3D printing. STL files convert directly into printable instructions through slicing software before reaching a 3D printer. Applications like Cura, PrusaSlicer, and Simplify3D accept STL geometry and process it into G-code, which is the machine language 3D printers execute. The slicer analyzes the triangulated surface, generates layer-by-layer paths, and sets parameters like infill density, support structures, and print speed. Binary STL files transfer efficiently into slicers due to their compact size, while ASCII STL files work equally well despite being larger. The process of converting STL to a 3D printing format through a slicer takes seconds for simple models and longer for complex geometry.

Why 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. Many professional workflows also convert to STL for simplicity or compatibility. Support for OBJ depends on the slicer software and workflow. Most modern slicers for both hobbyist and professional use support OBJ, STL, and increasingly 3MF.

What is the Best STL File Converter?

The best STL file converter is Blender, a free and open-source application that accepts dozens of input formats and exports precise STL geometry through a straightforward export menu. Blender processes OBJ, FBX, PLY, and COLLADA files, converting each into clean triangulated meshes ready for slicing software without additional preparation. The application includes built-in mesh analysis tools that identify non-manifold edges, flipped normals, and open boundaries before the STL export begins. Users adjust tessellation density directly inside Blender, controlling how closely the triangulated output approximates curved surfaces from the original model. The modifier system inside Blender allows geometry cleanup, decimation, and scaling adjustments prior to export, reducing errors in the final STL output. Engineers and artists working across fabrication and rendering pipelines trust Blender for its precision, format coverage, and repair capabilities in a single workspace. The combination of format flexibility, mesh repair features, and export accuracy positions Blender as one of the best STL file converter for production-level 3D printing workflows. 

How Long Does It Take To Convert an OBJ File to STL?

The time to convert an OBJ file and an STL depends on the complexity of the file. Generally, it will only take a few seconds to complete a conversion. For most files, the setup of directories and uploading the files into software such as Spin 3D takes longer than the actual conversion.

Which File Types Can Be Converted to STL?

A definitive list of 3D object file types that can be converted to STL format for 3D printing is quite extensive. The explosion of 3D rendering, gaming, character creation, product design, and product realization tools has been accelerating for two decades, and the list of file types that are open to conversion is many pages deep. If the file type is not supported by a certain converter, look for an update or another tool. STL is an old, simple, and tested format that is universal to 3D printing. Most file types contain much more information than STL, so this type of “downgrade” conversion is not challenging.

Are STL Files Print-Ready?

Sometimes no, STL files are not print-ready. There is a range of faults that can occur in the creation of the STL file, including gaps in a mesh of triangles, bad edges, flipped normals, noise shells, overlapping triangles, and intersecting vectors.

Can You Convert a STEP File to STL?

Yes, you can convert a STEP file to STL.  A STEP file converts to STL through CAD software or dedicated conversion tools with high geometric accuracy. STEP files store precise parametric geometry used in mechanical engineering, while STL stands for the same shape as a triangulated mesh. FreeCAD, Fusion 360, and similar CAD applications open STEP geometry and export it directly as STL by tessellating the smooth surfaces into triangles. The tessellation density setting controls how closely the triangle mesh approximates the original curved surfaces. Higher tessellation produces a smoother STL but increases file size and processing time in the slicer. Engineers converting STEP files to STL routinely adjust tessellation settings to balance print quality against file manageability.

What Are the Differences Between OBJ and STL Formats?

The differences between OBJ and STL formats stem from the distinct purposes, with OBJ built for visual richness and STL optimized for physical fabrication. OBJ supports texture maps, UV coordinates, and material references through linked MTL files, making the format appropriate for rendering and game development. STL strips geometry down to triangular facets and surface normals, eliminating all visual data to focus entirely on printable surface structure. The structural difference between the two formats determines which applications accept each one, specifically in manufacturing and print preparation. Slicing software reads STL natively, while some OBJ is not always require conversion before printers process the geometry. Understanding the distinction between OBJ and STL formats clarifies which format to use at each stage of a 3D production or fabrication workflow.

The table below shows the differences between OBJ and STL formats.

FeatureOBJ FormatSTL Format
Feature
Geometry Type
OBJ Format
Polygonal mesh (triangles and quads).
STL Format
Triangular mesh.
Feature
Texture Support
OBJ Format
Yes, via UV coordinates and MTL files.
STL Format
No texture support.
Feature
Material Data
OBJ Format
Yes, stored in linked MTL files
STL Format
Not stored
Feature
Color Support
OBJ Format
Yes
STL Format
No
Feature
File Structure
OBJ Format
ASCII text
STL Format
ASCII or Binary
Feature
3D Printing Compatibility
OBJ Format
OBJ has moderate compatibility and is often supported directly by slicers, though STL/3MF
STL Format
Natively supported by slicers.
Feature
Primary Use Case
OBJ Format
3D modeling, rendering, game assets
STL Format
3D printing, rapid prototyping
Feature
Associated Files
OBJ Format
Requires MTL file for materials
STL Format
Self-contained single file
Feature
Software Support
OBJ Format
Blender, MeshLab, Maya, game engines
STL Format
Cura, PrusaSlicer, Simplify3D

OBJ and STL Formats

OBJ to STL file conversion
OBJ to STL file conversion

Which File Format is Better for 3D Printing: OBJ or STL?

The file format that is better for 3D printing is STL, as each major slicing application accepts it without conversion or compatibility issues. Cura, PrusaSlicer, and Simplify3D process STL geometry natively, translating the triangulated mesh into G-code without additional steps. The absence of texture and material data in STL is not a drawback in printing workflows because printers build physical geometry, not visual surfaces. OBJ remains relevant in full-color printing scenarios where machines like the Stratasys J750 accept color-embedded geometry for multi-material fabrication. Advanced workflows that require texture data preservation through the print process favor OBJ input over STL in specialized production environments. Desktop and industrial printing facilities standardize around STL to ensure consistent results across different machines without format-related complications. STL stays the dominant choice across desktop, industrial, and professional printing environments due to its clean geometry structure and near-universal slicer support.

Why Do Users Convert OBJ Files to STL?

Users convert OBJ files to STL because slicing software requires triangulated mesh geometry without material dependencies. OBJ files reference external MTL files, which creates additional complexity that slicers do not process during print preparation. STL consolidates the entire surface geometry into a single self-contained file that slicers read without referencing external data. Simplifying the geometry to triangular facets removes unnecessary information and reduces the chance of compatibility errors during slicing. Workflows in rapid prototyping and manufacturing standardize around STL to ensure consistent results across different machines and facilities. Converting from OBJ produces a clean, transferable file that fits directly into industrial and consumer manufacturing workflows.

What Problems Can Occur When Converting OBJ to STL?

The problems that can occur when converting OBJ to STL are listed below.

  • Mesh Errors: Mesh errors include non-manifold edges, intersecting geometry, and flipped normals that break the surface continuity of the STL output. Slicing software fails to process geometry with mesh errors, resulting in incomplete or unprintable models.
  • Missing Textures: The conversion process strips texture and color data from OBJ files, discarding visual information that STL geometry cannot store. Users who require color in the final print must use a color-capable format or workflow instead.
  • Scale Problems: OBJ files store geometry without a defined unit system, causing scale mismatches when imported into different software. Incorrect dimensions appear in the exported STL when the user skips manual unit configuration before conversion.
  • Holes in Geometry: Open edges or missing faces in the original OBJ mesh create holes in the STL output. Slicers interpret holes as non-watertight geometry, which prevents accurate layer generation.
  • Inverted Normals: Normals pointing inward instead of outward confuse slicing software about which side of the surface faces outward. Inverted normals cause sections of the model to appear hollow or missing in the sliced preview.
  • Polygon Complexity: High polygon counts from dense OBJ meshes produce oversized STL files that slow down slicing and increase processing time. Decimating the mesh before conversion reduces file size without significantly affecting print quality.

What Mesh Errors Can Occur When Converting OBJ Files?

The Mesh Errors that can occur when converting OBJ Files are listed below.

  • Non-Manifold Edges: Non-manifold edges occur when multiple faces share a single edge, creating geometry that has no physical equivalent. Slicing software rejects non-manifold geometry because it cannot determine a valid surface boundary for layer generation.
  • Holes in the Mesh: Holes appear as open gaps in the surface where faces are missing from the original OBJ geometry. A watertight mesh is required for 3D printing, meaning each edge must connect exactly two faces with no openings.
  • Flipped Normals: Flipped normals point in the wrong direction, signaling to the slicer that the inside of the model faces outward. Correcting normal orientation in MeshLab or Blender resolves the shading and slicing errors caused by inward-facing surfaces.
  • Intersecting Geometry: Intersecting geometry occurs when separate mesh sections overlap and share interior volume. Slicers produce incorrect toolpaths when geometry passes through itself, resulting in failed or distorted prints.
  • Duplicate Vertices: Disconnected mesh sections form when duplicate vertices occupy separate positions that appear joined visually but lack a topological connection. Merging duplicate vertices in a mesh repair tool closes the gaps and produces a continuous, printable surface.
  • Degenerate Faces: Degenerate faces are triangles with zero area, formed when multiple vertices occupy the same position. Removing degenerate faces cleans the mesh and prevents slicing errors caused by invalid triangle definitions.

How Can You Repair an STL File After Conversion?

You can repair an STL File after Conversion by following the steps listed below.

  1. Import the STL into a Mesh Repair Tool. MeshLab, Meshmixer, and similar utilities accept STL files and display mesh errors visually across the surface. Opening the file in a repair tool provides immediate feedback on non-manifold edges, holes, and geometry problems before proceeding.
  2. Run an Automatic Mesh Analysis. Mesh analysis scans the entire STL surface for structural errors, including open boundaries, flipped normals, and intersecting faces. The analysis generates a report or highlights problem areas directly on the model geometry.
  3. Close Holes in the Surface. Hole-filling tools identify open edges and generate new faces to seal the gaps in the mesh. MeshLab's hole-filling function closes boundaries automatically, producing a watertight surface required for accurate slicing.
  4. Merge Duplicate Vertices. Duplicate vertex merging connects mesh sections that share the same spatial position but remain topologically separate. Welding vertices removes redundant geometry and ensures the surface behaves as a single continuous mesh.
  5. Correct Flipped Normals. Normal recalculation tools reorient all surface normals to point consistently outward from the mesh. Consistent outward-facing normals allow slicing software to identify the exterior surface and generate accurate print layers.
  6. Remove Degenerate Faces. Degenerate face removal eliminates zero-area triangles that contribute no geometry to the surface. Cleaning degenerate triangles reduces file complexity and prevents processing errors during slicing.
  7. Export the Repaired File as STL. After completing all repairs, exporting the corrected geometry as a binary STL produces a clean file ready for the slicer. Verifying the exported STL in a slicer preview confirms the mesh is watertight and free of structural errors before sending the file to the printer.

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.

Megan Conniff - Xometry Contributor
Megan Conniff
Megan is the Content Director at Xometry

Read more articles by Megan Conniff