# OBJ to STL Converter > To convert OBJ to STL, load the .obj, triangulate its faces and write them to an STL file. Kenerate's free converter does it in your browser: drop the OBJ, preview it, fit the longest side to a size in millimetres and turn it Z-up, then download a binary STL. Materials and UVs are dropped. Nothing is uploaded. URL: https://kenerateai.com/obj-to-stl Publisher: Kenerate AI (https://kenerateai.com) Last updated: 2026-10-01 ## Key facts - Price: Free, no account - Converts: Wavefront OBJ → binary STL - Faces: Quads and n-gons triangulated - Dropped: Materials (.mtl), UVs, smoothing groups - Scale: Keep units or fit longest side to 25–200 mm - Privacy: Converted locally — no upload - Smaller files: OBJ is text; binary STL stores each triangle in 50 bytes. The same mesh is often several times smaller as STL. - One clean mesh: Every object and group in the OBJ is merged into one STL in its original position. - Size it for print: OBJ has no units. Fit the longest side to the size you want and print without rescaling in the slicer. - Check before printing: The Clay and Wire views show holes, thin walls and messy scan areas before you waste filament. - Parse: Vertices and faces are read from the OBJ text; quads and n-gons are split into triangles. - Merge: Objects and groups are combined in their original positions. - Scale and orient: Optionally fit to a size in millimetres and turn Z-up. - Write: A binary STL is generated and downloaded. - OBJ (Wavefront OBJ): Plain-text mesh; by Wavefront Technologies, 1980s. Holds: Vertices, faces, UVs and normals, Materials via a separate .mtl file. Lacks: Animation and rigs, Embedded textures. Best for: Moving static meshes between 3D apps. Opens in: Blender, Maya, 3ds Max, ZBrush, most slicers. - STL (Stereolithography): Triangle mesh (binary or ASCII); by 3D Systems, 1987. Holds: Triangle surfaces, Facet normals. Lacks: Colour and textures, Units, Materials. Best for: 3D printing — every slicer opens it. Opens in: Cura, PrusaSlicer, Bambu Studio, OrcaSlicer, Blender. - Encoding — OBJ vs STL: Text | Binary (or text) - Faces — OBJ vs STL: Triangles, quads, n-gons | Triangles only - UVs and materials — OBJ vs STL: Yes (UVs in file, materials in .mtl) | No - Units — OBJ vs STL: None | None - Typical use — OBJ vs STL: Moving meshes between 3D apps | 3D printing ## Steps 1. Open the OBJ — Drop your .obj onto the box above, or try the sample mug. 2. Preview — Orbit it and check the triangle count. 3. Set options — STL is selected. Choose a size in mm if you need one; keep Z-up for slicers. 4. Download — Click Download STL. ## In depth ### Do slicers need STL? Not always — PrusaSlicer, Cura and others read OBJ directly. STL is still the safest choice for print services, older tools and printer-specific software, and its binary form is compact [1]. ### Quads, n-gons and triangulation OBJ can store faces with any number of corners [2]; STL only stores triangles [1]. Triangulating doesn't change the shape — it only splits flat faces — so a print looks the same. References: [1] Wikipedia — STL (file format): https://en.wikipedia.org/wiki/STL_(file_format) [2] Wikipedia — Wavefront .obj file: https://en.wikipedia.org/wiki/Wavefront_.obj_file [3] Wikipedia — FBX: https://en.wikipedia.org/wiki/FBX [4] Khronos Group — glTF: https://www.khronos.org/gltf/ [5] 3MF Consortium — 3MF specification: https://3mf.io/specification/ [6] Wikipedia — Universal Scene Description (USD / USDZ): https://en.wikipedia.org/wiki/Universal_Scene_Description [7] Wikipedia — PLY (file format): https://en.wikipedia.org/wiki/PLY_(file_format) [8] Khronos Group — glTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html [9] Apple — AR Quick Look: https://developer.apple.com/augmented-reality/quick-look/ [10] three.js — documentation: https://threejs.org/docs/ [11] Prusa Knowledge Base — Modeling with 3D printing in mind: https://help.prusa3d.com/article/modeling-with-3d-printing-in-mind_164135 [12] Prusa Blog — lithophanes and filament transparency: https://blog.prusa3d.com/lets-play-with-filament-transparency-how-to-make-amazing-lifelike-color-photos-with-just-a-simple-color-change_104338/ [13] Polymers (2024) 16(20):2862 — FFF parameters and translucency of PLA: https://doi.org/10.3390/polym16202862 [14] Wikipedia — Lithophane: https://en.wikipedia.org/wiki/Lithophane [15] W3C — CSS Values and Units Level 3 (absolute lengths): https://www.w3.org/TR/css-values-3/ [16] Adobe Substance 3D — OpenGL vs DirectX normal maps: https://experienceleague.adobe.com/en/docs/substance-3d/bakers/common-questions/what-is-the-difference-between-the-opengl-and-directx-normal-format [17] Blender Manual — Normal Map node: https://docs.blender.org/manual/en/latest/render/shader_nodes/displacement/normal_map.html [18] Wikipedia — Normal mapping: https://en.wikipedia.org/wiki/Normal_mapping [19] SIL Open Font License: https://openfontlicense.org/ ## FAQ Q: Is OBJ to STL conversion free? A: Yes. It runs in your browser with no account or watermark. Q: Is my OBJ uploaded? A: No — it's converted on your device. Q: Do I need the .mtl file? A: No. STL can't store materials, so only the .obj is needed. Q: What happens to quads? A: They're split into two triangles each. The shape doesn't change. Q: My STL is the wrong size — why? A: OBJ has no units. Choose “Fit longest side to” a size in millimetres before downloading. Q: Can I keep colours? A: Not in STL. Convert to 3MF or GLB if colour matters. Q: How do I convert OBJ to STL in Blender? A: Import the OBJ with File → Import → Wavefront (.obj), select the model, then use File → Export → STL (.stl) and tick Selection Only if the scene has other objects. Check the scale first, because OBJ has no units. Or skip Blender: drop the OBJ here and set the size in millimetres. ## Related pages - AI 3D Model Generator: https://kenerateai.com/ai-3d-model-generator - Image to 3D: https://kenerateai.com/image-to-3d-converter - AI STL Generator: https://kenerateai.com/ai-3d-printing-model-generator - Text to 3D: https://kenerateai.com/text-to-3d-generator ## Sources - Wikipedia — STL (file format): https://en.wikipedia.org/wiki/STL_(file_format) - Wikipedia — Wavefront .obj file: https://en.wikipedia.org/wiki/Wavefront_.obj_file - Wikipedia — FBX: https://en.wikipedia.org/wiki/FBX - Khronos Group — glTF: https://www.khronos.org/gltf/ - 3MF Consortium — 3MF specification: https://3mf.io/specification/ - Wikipedia — Universal Scene Description (USD / USDZ): https://en.wikipedia.org/wiki/Universal_Scene_Description - Wikipedia — PLY (file format): https://en.wikipedia.org/wiki/PLY_(file_format) - Khronos Group — glTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html - Apple — AR Quick Look: https://developer.apple.com/augmented-reality/quick-look/ - three.js — documentation: https://threejs.org/docs/ - Prusa Knowledge Base — Modeling with 3D printing in mind: https://help.prusa3d.com/article/modeling-with-3d-printing-in-mind_164135 - Prusa Blog — lithophanes and filament transparency: https://blog.prusa3d.com/lets-play-with-filament-transparency-how-to-make-amazing-lifelike-color-photos-with-just-a-simple-color-change_104338/ - Polymers (2024) 16(20):2862 — FFF parameters and translucency of PLA: https://doi.org/10.3390/polym16202862 - Wikipedia — Lithophane: https://en.wikipedia.org/wiki/Lithophane - W3C — CSS Values and Units Level 3 (absolute lengths): https://www.w3.org/TR/css-values-3/ - Adobe Substance 3D — OpenGL vs DirectX normal maps: https://experienceleague.adobe.com/en/docs/substance-3d/bakers/common-questions/what-is-the-difference-between-the-opengl-and-directx-normal-format - Blender Manual — Normal Map node: https://docs.blender.org/manual/en/latest/render/shader_nodes/displacement/normal_map.html - Wikipedia — Normal mapping: https://en.wikipedia.org/wiki/Normal_mapping - SIL Open Font License: https://openfontlicense.org/