<p>3D files differ greatly in size and what they contain:</p>
<h1>STL</h1>
<p>STL Stereolithography files were invented by 3D Systems to store surfaces. Originally it used ASCII text to store information by naming triplets of vertex positions for each triangle (facet). Since that got too large, newer STL are Binary, which is quite smaller.</p>
<p>Many programs can export them, their size is dependant on the number of surfaces. You can reduce the size of an STL by lowering the number of surfaces at the cost of detail.</p>
<h1>OBJ</h1>
<p>OBJ was invented by Wavefront as a means of storing 3D information. It stores the data as plain text by storing vertices, to which they connect and what texture is on surfaces spun up by the vertices.</p>
<p>In comparison to STL, they can be bigger if they include surface information. Programs that can't do STL usually support OBJ. Slicers take either. You can reduce the size of the file by reducing complexity.</p>
<h1>STEP</h1>
<p>STEP files don't save 3D items per se, they store instructions for CAD programs to generate a 3D item. This makes them extremely information-dense and can create highly complex items with a somewhat minimum of file size. They also allow us to easily modify the file.</p>
<p>However, STEP files can't be sliced directly and need to be opened by a CAD program.</p>
<h1>Comparison</h1>
<p><a href="https://i.sstatic.net/iGcpT.png" rel="nofollow noreferrer" title="Simple hollow cube from two C-clamps"><img src="https://i.sstatic.net/iGcpT.png" alt="&quot;simple&quot; hollow cube from 2 C-clamps" title="Simple hollow cube from two C-clamps" /></a></p>
<p>This is a simple object generated by a mere extrusion, rounding corners, extruding again and a sweep, then copying the item and moving it into position.</p>
<p><a href="https://i.sstatic.net/EDOM6.png" rel="nofollow noreferrer" title="Tools sequence"><img src="https://i.sstatic.net/EDOM6.png" alt="Tools sequence" title="Tools sequence" /></a></p>
<p>But how does that compare as STL and OBJ? Well, the results of this item are rather small in either case, but you get a rough gist of their general comparability.</p>
<p>The STL is 74.3 kB, STEP is 90 kB, OBJ is 95.4 kB.</p>
<p><a href="https://i.sstatic.net/tJLsx.png" rel="nofollow noreferrer" title="STL"><img src="https://i.sstatic.net/tJLsx.png" alt="STL" title="STL" /></a></p>
<p><a href="https://i.sstatic.net/LvJyp.png" rel="nofollow noreferrer" title="STEP"><img src="https://i.sstatic.net/LvJyp.png" alt="STEP" title="STEP" /></a></p>
<p><a href="https://i.sstatic.net/DncAn.png" rel="nofollow noreferrer" title="OBJ"><img src="https://i.sstatic.net/DncAn.png" alt="OBJ" title="OBJ" /></a></p>
<p>However, in a maximum compressed <code>.zip</code> archive, things change a lot:</p>
<ul>
<li>STEP shrinks by 86 % to 13 kB</li>
<li>OBJ by 84 % to 16 kB</li>
<li>STL by a mere 73 % to 21 kB.</li>
</ul>
<p><a href="https://i.sstatic.net/BWSUk.png" rel="nofollow noreferrer" title="Compressed"><img src="https://i.sstatic.net/BWSUk.png" alt="Compressed" title="Compressed" /></a></p>
<h2>Conclusion</h2>
<p>STEP is the best to give out in a zip archive if you want others to edit it. OBJ is a tad smaller in a zip archive than STL, but also can contain additional data.</p>

CC BY-SA 4.0
2020-05-17T10:44:42.010Z
2021-09-25T04:22:01.857Z
2021-09-25T04:22:01.857Z
Trish
<p>If a general-purpose compression tool using a good compression algorithm, such as 7zip or gzip (for linux and command line enthusiasts) is not providing good compression it is not likely that your files <em>can</em> be compressed very much. </p>

<p>This applies to a wide variety of binary files beyond just 3D print files. There is always  a fundamental limit on compression (since it works by finding patterns and removing redundancy in files), and well-designed binary file formats generally can't be compressed very far. </p>

<p>You may however have some luck with changing the settings on your CAD tool to output less detailed files (though you this is obviously a tradeoff.)</p>

CC BY-SA 4.0
2020-05-17T09:30:32.793Z
2020-05-17T09:30:32.793Z
ikrase
<p>I'm trying to compress different 3D files, but find it difficult to find the right software to compress the file.</p>

<p>What are the most suitable 3D file compressors to compress 3D files like STL, OBJ and STEP?</p>

<p>I have tried Draco, and mac zip compressor.</p>

CC BY-SA 4.0
2020-05-14T19:50:52.573Z
These are all binary formats, I believe, which generally don't compress well.
SiHa
CC BY-SA 4.0
2020-05-15T02:12:32.967Z
Technically STL can be either ASCII or binary. Although the latter is a LOT more common. But even the binary STLs compress pretty well actually.
anttix
<3d-models><software><file-formats><open-source><obj>
How do I compress 3D files
Hither Joe
# How do I compress 3D files

(Asked by: username_0 on 2020-05-12)

I'm trying to compress different 3D files, but find it difficult to find the right software to compress the file.

What are the most suitable 3D file compressors to compress 3D files like STL, OBJ and STEP?

I have tried Draco, and mac zip compressor.

**Tags:** 3d-models, software, file-formats, open-source, obj
> **Comments:**
> **username_1**: These are all binary formats, I believe, which generally don't compress well.  
> **username_2**: Technically STL can be either ASCII or binary. Although the latter is a LOT more common. But even the binary STLs compress pretty well actually.  

---

## 2 answers

### Answer by username_3 on 2020-05-17. Score: 2 | Accepted answer

3D files differ greatly in size and what they contain:

# STL

STL Stereolithography files were invented by 3D Systems to store surfaces. Originally it used ASCII text to store information by naming triplets of vertex positions for each triangle (facet). Since that got too large, newer STL are Binary, which is quite smaller.

Many programs can export them, their size is dependant on the number of surfaces. You can reduce the size of an STL by lowering the number of surfaces at the cost of detail.

# OBJ

OBJ was invented by Wavefront as a means of storing 3D information. It stores the data as plain text by storing vertices, to which they connect and what texture is on surfaces spun up by the vertices.

In comparison to STL, they can be bigger if they include surface information. Programs that can't do STL usually support OBJ. Slicers take either. You can reduce the size of the file by reducing complexity.

# STEP

STEP files don't save 3D items per se, they store instructions for CAD programs to generate a 3D item. This makes them extremely information-dense and can create highly complex items with a somewhat minimum of file size. They also allow us to easily modify the file.

However, STEP files can't be sliced directly and need to be opened by a CAD program.

# Comparison

[![](https://i.sstatic.net/iGcpT.png "Simple hollow cube from two C-clamps")](https://i.sstatic.net/iGcpT.png "Simple hollow cube from two C-clamps")

This is a simple object generated by a mere extrusion, rounding corners, extruding again and a sweep, then copying the item and moving it into position.

[![Tools sequence](https://i.sstatic.net/EDOM6.png "Tools sequence")](https://i.sstatic.net/EDOM6.png "Tools sequence")

But how does that compare as STL and OBJ? Well, the results of this item are rather small in either case, but you get a rough gist of their general comparability.

The STL is 74.3 kB, STEP is 90 kB, OBJ is 95.4 kB.

[![STL](https://i.sstatic.net/tJLsx.png "STL")](https://i.sstatic.net/tJLsx.png "STL")

[![STEP](https://i.sstatic.net/LvJyp.png "STEP")](https://i.sstatic.net/LvJyp.png "STEP")

[![OBJ](https://i.sstatic.net/DncAn.png "OBJ")](https://i.sstatic.net/DncAn.png "OBJ")

However, in a maximum compressed `.zip` archive, things change a lot:

* STEP shrinks by 86 % to 13 kB
* OBJ by 84 % to 16 kB
* STL by a mere 73 % to 21 kB.

[![Compressed](https://i.sstatic.net/BWSUk.png "Compressed")](https://i.sstatic.net/BWSUk.png "Compressed")

## Conclusion

STEP is the best to give out in a zip archive if you want others to edit it. OBJ is a tad smaller in a zip archive than STL, but also can contain additional data.


---

### Answer by username_4 on 2020-05-17. Score: 1

If a general-purpose compression tool using a good compression algorithm, such as 7zip or gzip (for linux and command line enthusiasts) is not providing good compression it is not likely that your files *can* be compressed very much.

This applies to a wide variety of binary files beyond just 3D print files. There is always a fundamental limit on compression (since it works by finding patterns and removing redundancy in files), and well-designed binary file formats generally can't be compressed very far.

You may however have some luck with changing the settings on your CAD tool to output less detailed files (though you this is obviously a tradeoff.)


---

