Skip to content
3DToolBench

Convert STEP to GLB

GLB is how a 3D model gets shown to somebody who has no CAD program. It is one file, it carries its colours inside itself, and every browser, phone, chat app and web viewer opens it. This turns a STEP assembly into one, on your own computer.

Drag a 3D file here, or.

This page is set up for STEP files. Other formats we can read work here too.

The file is read on your own computer. It is never uploaded.

Add a file to switch this on.

Your file is read by your own browser and never sent to a server. There is no upload, no account and no copy of your model anywhere but on your computer.

One file that anyone can open

The reason to make a GLB is that the person receiving it does not have to install anything. Drop a GLB into a message and it previews. Put it on a web page with a model viewer and it spins. Open it on a phone and it works. A STEP file does none of that: it needs CAD software, and the person who needs to look at your part usually has none.

Unlike OBJ, a GLB is genuinely one file. Colours, materials, part names and geometry are all packed inside it, so there is nothing to unzip and nothing to keep together in a folder.

The metre problem, which is the opposite of the usual one

The glTF specification says one unit is one metre. It is one of the very few 3D formats that fixes this, and it is genuinely helpful — but it points the wrong way for CAD.

A CAD part is measured in millimetres. Written into a GLB as bare numbers, a 40 mm bracket becomes a 40 metre bracket, and a web viewer frames it as though you were standing at the end of a football pitch. So the output unit box on this page defaults to metres and the conversion divides the numbers for you. The result is a bracket that is 0.04 units across, which is what glTF means by 40 mm.

Leave the output unit alone unless you know why you are changing it. If the model appears enormous or invisibly small in a viewer, this box is the first thing to check.

Colours survive; surface finishes never existed

STEP stores a colour for each part, and those colours come through into the GLB as real materials, so the assembly arrives looking like it did in your CAD program rather than uniformly grey.

What does not come through is anything about how the surface looks, because a STEP file has never held that. There is no brushed aluminium, no anodised finish, no texture and no roughness in a STEP file — those live in your CAD program’s render settings, which are not part of the exchange format. If you need the part to look like metal, that is a material you assign in whatever is displaying the GLB.

Keep the triangle count honest

A GLB is usually going over a network to a phone. Every triangle is bytes downloaded and frames dropped, and nobody looking at a model in a browser can see a tenth of a millimetre.

Draft is often right here, and Normal is nearly always enough. Convert at both and compare the file sizes shown after the download button — the difference on a curved part is frequently three or four times, for a change nobody viewing it will notice.

What survives, and what does not

Kept in the GLB file

  • The colour of every part, packed inside the one file
  • Each part as its own named node in the scene
  • The real size, converted into the metres that glTF is defined in

Lost on the way

  • The exact curved surfaces — they become flat triangles and cannot be turned back
  • Any surface finish, because a STEP file never held one — only flat colours
  • Threads, tolerances and manufacturing information

How to convert STEP to GLB

  1. Drop the .step or .stp file in

    The CAD engine downloads on the first CAD file, about 3 MB, and is then cached for the rest of your visit.

  2. Turn the detail down

    A GLB is usually viewed on a screen, often over a phone connection. Draft or Normal keeps the file small, and the difference is rarely visible in a viewer.

  3. Leave the output unit on metres

    glTF defines one unit as one metre, so a millimetre model has to be divided by a thousand. This is done for you; changing the box is how a model ends up a thousand times too big.

  4. Set the up axis to Y

    Web viewers and AR are Y-up, CAD is Z-up. Change the output up-axis box and the model stands the right way round in every viewer.

  5. Convert and download the single .glb

    Everything is inside it — geometry, part names and colours. There is nothing else to send with it.

STEP and GLB compared

STEP and GLB compared, row by row
PropertySTEP.step .stpGLB.glb
File contentsPlain text in the ISO 10303-21 exchange form. Readable, and enormous.One binary file: a small header, the same JSON as glTF, then all the buffers and images.
GeometryExact surfaces: planes, cylinders, cones, spheres, NURBS. Not triangles.Triangles, with skinning weights and animation channels alongside them.
UnitsRecorded in the file, as a full unit and tolerance context.Metres, fixed by the specification.
Colour and textureColour per face or per solid, through the AP214 and AP242 styling entities.Full physically based materials, with the texture images packed inside the file.
Separate objectsAn assembly tree of named parts, each with its own placement.A scene graph of named nodes, each with its own position and rotation.
Published byISO 10303, from 1994. AP242 is the current application protocol.The Khronos Group, 2015, as the single-file packaging of glTF.
Written bySolidWorks, Fusion 360, Inventor, CATIA, FreeCAD, Onshape — every serious CAD program.Blender, Sketchfab, Substance Painter, and every tool that ships models to the web.

Questions

GLB or glTF?
GLB, unless something has specifically asked for glTF. GLB is the same data packed into one binary file, so there are no separate texture or buffer files to keep together. glTF is the JSON version and always arrives as several files.
The model is enormous in my viewer. What happened?
The output unit. glTF is defined in metres, so a 40 mm part written as the number 40 is forty metres. Set the output unit to metres and the conversion divides for you.
Can I use this for AR on an iPhone?
GLB works in Android’s Scene Viewer and in most web AR. Apple’s Quick Look wants USDZ instead — convert the STEP to STL or OBJ first, then use the USDZ converter.
Why is the model grey?
Because the STEP file had no colours assigned. Colour in STEP is optional and many exports leave it out. There is nothing in the file to recover — assign materials in whatever is displaying the GLB.
Is the file uploaded anywhere?
No. Reading the STEP and writing the GLB both happen in your browser. Nothing is sent to a server at any point.

Where to go next