Convert STL to OBJ

Swap: OBJ to STL

Turn STL files into OBJ for Blender and other modelling programs. Corners shared by triangles are merged, so the mesh arrives connected instead of as loose triangles.

Runs locally — your files never leave your device

Drop STL files hereRelease to convert

or

STL (binary or ASCII), a folder or a ZIP · up to 200 files

No file at hand?

How it works

01

Choose your STL files

Binary or ASCII; drop files, a folder or a ZIP. They are read by your browser and never sent anywhere.

02

Check the preview

The preview reads the finished OBJ back, with its size, triangle count and whether it is watertight.

03

Download the OBJ

One file at a time, or all of them as a single ZIP.

Settings explained

Weld duplicate vertices

OBJ stores each corner once and lets the triangles share it. Corners that are exactly the same are always merged, which keeps the mesh closed and the file small.

With Weld on, corners closer than 1/100 000 of the model’s bounding-box diagonal (about 0.002 mm on a 100 mm cube) are merged too. That closes hairline gaps left by rounding in the STL, and triangles that collapse to a line are removed.

STL vs OBJ

STL lists every triangle with its own three corners. OBJ lists each corner once and builds faces from them, which is how modelling programs hold a mesh: edges are shared, so smoothing, subdivision and selecting connected parts work as expected.

OBJ can also carry materials through an MTL file, but an STL has no materials to carry, so the converted OBJ holds the geometry only. Neither format stores units.

STL vs OBJ
PropertySTLOBJ
Full nameStereo­lithography (also read as Standard Triangle Language)Wavefront Object
Extension.stl.obj (+ .mtl for materials)
MIME typemodel/stlmodel/obj
EncodingBinary or text (ASCII)Text
SurfaceTriangles onlyPolygons with any number of corners
Shared verticesNo, every triangle stores its own cornersYes
Colours and materialsNo, not in the standardYes, in a separate MTL file with texture images
UnitsNot storedNot stored
Several objectsNo, one list of trianglesYes, named objects and groups
Opened byEvery slicer and CAD programModelling programs (Blender, 3ds Max, Maya), game engines and most slicers

FAQ

Why is there no MTL file?

An MTL file holds materials and colours, and an STL has none to carry over, so the OBJ holds the geometry only. Add materials in your modelling program after importing.

What size will the model be in Blender?

Neither format stores units, so the numbers are copied unchanged. STL files from 3D printing are almost always in millimetres, but Blender reads OBJ numbers as metres, so a 20 mm part arrives 20 m wide. Set Scale to 0.001 in Blender’s OBJ import options to get millimetres.

Why does the OBJ have fewer vertices than the STL?

STL writes three corners for every triangle, even where neighbouring triangles meet. OBJ writes each corner once and lets the faces share it. A closed mesh has about half as many corners as triangles, so the OBJ lists about one sixth of the corners the STL does.

Are normals written to the OBJ?

No. The OBJ has only vertex (v) and face (f) lines, and every program computes normals from the faces. Faces keep the STL’s winding, counter-clockwise seen from outside, so they point the same way.

Is the OBJ smaller than the STL?

Smaller than an ASCII STL, and usually somewhat smaller than a binary STL. Our 1-million-triangle test cube is 48 MB as binary STL and 33 MB as OBJ. The OBJ is plain text, so it compresses well in a ZIP.

How can I check that nothing is uploaded?

Open your browser’s developer tools, go to the Network tab and convert a file. You will see no request carrying your file. Once the page has loaded, converting works without an internet connection.

Other conversions from STL