CAD Guides
STEP, STL and 3D PDF Compared with the Same Model (and Where IGES Fits)
We exported the same assembly to STL, OBJ, GLB and 3D PDF and compared them with the original STEP file: sizes, triangles, what is kept and how far the mesh deviates from the real geometry. At the end, the general characteristics of IGES.
On this page
In short
- With the same 18-part assembly, the STEP file was 433,606 bytes, the 3D PDF between 92,157 and 180,841 bytes depending on quality, and the STL between 144,684 and 433,884 bytes.
- Only STEP keeps exact geometry. The meshes lost up to 1.9% of volume on round parts at Low quality and less than 0.2% at High.
- STL loses everything else: structure, names, colours and units (the US Library of Congress STL description confirms there is no standard colour support). 3D PDF and GLB keep structure and colours, even though the geometry is a mesh.
CAD format comparisons usually stop at lists of pros and cons. Here we do the opposite: we take a single model, export it to each format and open the files to see what is inside. The numbers come from one assembly and cannot simply be extrapolated to every model, but they show clearly what each format gains and loses.
How we ran the comparison
- Model:
as1-oc-214.stp, a public STEP AP214 test assembly. It has 5 distinct solids (plate, L-bracket, rod, bolt and nut) forming 18 parts in 4 subassemblies; it measures 200 × 150 × 84 mm and has 2 colours. Its anatomy is explained in what a STEP file is. - Export: with the StepPDF 3D converter, which reads STEP with OpenCascade and generates the mesh at three tessellation qualities: Low, Medium and High. The 3D PDF, STL, OBJ and GLB are downloaded from the same screen.
- Analysis: we counted triangles, objects, nodes and materials in each file with our own scripts, and calculated the volume of each part in the mesh to compare it with the volume declared by the STEP file itself.
- Environment: an automated Chromium browser on a server (2.8 GHz Xeon, about 8 GB of RAM, software rendering). Measured times only apply to that machine.
IGES is not part of the experimental test: the tool does not export IGES and we do not have an export of this model made with a CAD program. Its general characteristics are summarised in the IGES section, kept separate from the measured results.
What each file kept in the test
The meshes in this table are the medium-quality ones; the STEP file is the original. The last column describes what we found when opening each generated file, not the general capabilities of the format.
| Format | Geometry | Assembly | Names | Colours | Units | Found in the file |
|---|---|---|---|---|---|---|
| STEP AP214 | Exact (B-Rep) | Yes | Yes | Yes | Yes | 9 products, 13 assembly relationships, 5 solids, 2 colours, millimetres |
| 3D PDF (PRC) | Mesh | Yes | Yes | Yes | On the cover page | 18-part tree, 7 named views |
| GLB (glTF) | Mesh | Yes | Yes | Yes | Metres by glTF convention (set by the glTF 2.0 specification) | 26 nodes, 18 meshes, 18 materials; the root node applies a 0.001 scale to go from mm to metres |
| OBJ | Mesh | No | Yes | No | Not declared | 18 named objects, no material file |
| Binary STL | Mesh | No | No | No | Not declared | A single mesh; empty 80-byte header |
Two observations from the analysis. First, STL has no way to say which unit the coordinates are in: here they are millimetres because the STEP file was, but the recipient has to assume it. Second, the OBJ keeps the part names (nut, bolt, rod…) but not how they are grouped, so the 18 parts arrive as a flat list.
File size at each quality
The STEP file is always the same size, because it holds the exact geometry. The meshes depend on the tessellation quality chosen:
| Quality | Triangles | 3D PDF | STL | OBJ | GLB |
|---|---|---|---|---|---|
| Low | 2,892 | 92,157 bytes | 144,684 bytes | 329,403 bytes | 124,120 bytes |
| Medium | 5,040 | 122,551 bytes | 252,084 bytes | 579,011 bytes | 201,488 bytes |
| High | 8,676 | 180,841 bytes | 433,884 bytes | 1,009,154 bytes | 332,428 bytes |
Original STEP: 433,606 bytes in every case. On the same computer, sizes repeat exactly when exporting again; the PDF can vary by about 1 KB depending on the cover page language and the preview image each browser generates.
- Binary STL is predictable: an 84-byte header plus 50 bytes per triangle. With 8,676 triangles, the High-quality STL (433,884 bytes) is already practically the same size as the exact STEP file.
- OBJ is the heaviest because it is text and stores one normal per vertex: at High quality it exceeds a megabyte, more than twice the STEP file.
- The 3D PDF was the lightest at all three qualities, despite including the cover, a structure page and a preview image (about 51 KB of fixed content). In this model, the PRC format stores the mesh more compactly than STL, OBJ or GLB.
Accuracy: how far the mesh is from the real part
The sample STEP file stores the exact volume of each part as a validation property. We calculated the volume of the same part in the exported mesh and compared them:
| Part | Volume in the STEP file | Low mesh | Medium mesh | High mesh |
|---|---|---|---|---|
| Rod Ø10 × 200 mm | 15,708.37 mm³ | −1.56% | −0.52% | −0.16% |
| Bolt | 3,200.72 mm³ | −1.88% | −0.52% | −0.17% |
| Nut | 664.37 mm³ | +0.68% | +0.19% | +0.06% |
| L-bracket | 96,858.57 mm³ | +0.050% | +0.016% | +0.005% |
| Plate | 530,574.97 mm³ | +0.034% | +0.009% | +0.003% |
The pattern has a simple geometric explanation. The mesh places its vertices on the real surface and joins them with flat faces, so a round outline becomes an inscribed polygon. On a solid round part, such as the rod or the bolt, the polygon sits inside and the mesh loses volume. On a part with holes, such as the nut, the L-bracket or the plate, the mesh hole is slightly smaller than the real one and the part gains volume. Large flat parts barely change, because flat faces are represented without error.
True Ø10 mm circle (dashed) and outline of the exported mesh (solid)
On the Ø10 mm rod, the outline goes from 20 points at Low quality to 60 at High, and the maximum gap between the mesh and the true circle drops from about 0.097 mm to about 0.009 mm. For viewing or reviewing a design, any of the three qualities is enough; for manufacturing, inspection or accurate volume calculations, the right number is the one in the STEP file.
IGES: general characteristics (not included in the test)
IGES (Initial Graphics Exchange Specification) is a neutral format older than STEP, widely used for decades to exchange curves and surfaces between CAD systems (see the UK National Archives IGES entry). These are its general characteristics; they do not come from a measurement with the sample model:
- Geometry: it can store exact geometry (mathematical curves and surfaces, including NURBS), not a mesh.
- Solids: the standard includes B-Rep solids, but many exports write the model as loose trimmed surfaces. Importing it sometimes means “stitching” those surfaces to recover a closed solid.
- Assemblies: its handling of product structure is more limited than STEP's; assemblies often arrive flattened.
- Current use: it is still useful with older systems or software that does not read STEP, and in some surface-modelling workflows.
The StepPDF 3D viewer can open IGES files, but this article does not measure IGES sizes or results. If the recipient reads STEP, the general advice is to send STEP.
Which format to use when
| Need | Recommended format | Why |
|---|---|---|
| Manufacturing, machining, accurate quoting | STEP (+ 2D drawing) | The only option with exact geometry, structure and units |
| A system that does not read STEP | IGES | An older, very widespread neutral format (not measured in this test) |
| Review by people without CAD | 3D PDF | Light, with tree, names, colours and views; needs a 3D-capable reader |
| 3D printing | STL (or 3MF) | What slicers expect; check the units when importing |
| Web, presentations, augmented reality | GLB | Keeps structure and materials and loads directly in browsers and game engines |
| Rendering or mesh editing | OBJ | Opens in almost any 3D program, though it loses structure and colours in this export |
In practice you often do not have to choose just one: the STEP file goes to the shop, the 3D PDF to the client and the STL to the printer. What matters is knowing what each conversion loses and always keeping the original STEP file as the reference. If you are sending the model to someone without CAD, how to share a 3D CAD model without CAD software compares the ways to do it.
Frequently asked questions
Which format is more accurate, STEP or STL?
STEP, when it contains B-Rep geometry: it stores the mathematical surfaces. STL only stores triangles that approximate the shape; its accuracy depends on how many triangles were used when exporting.
Can I convert an STL to STEP for manufacturing?
You can create a STEP file that contains the triangles, but it does not recover the original surfaces: a cylinder is still a many-sided prism. For manufacturing, ask for the original STEP file.
Why doesn't STL store units?
The STL format only stores triangle coordinates, without saying whether they are millimetres or inches. Whoever opens it has to know or assume the unit, which is why a printed part sometimes comes out 25.4 times too large or too small.
Is IGES still useful?
It is still used to exchange surfaces with older systems or with software that does not read STEP. For new work, STEP is usually preferred because it also carries solids, assembly structure and, in AP242, manufacturing annotations.