STEP→STL Runs offline · nothing leaves this device

Convert STEP to STL in your browser

Drop a .step / .stp / .iges / .igs file. You get back an .stl you can slice — a plain 10 mm cube comes out as 12 triangles and exactly 684 bytes — with the bounding-box size and triangle count measured on your own machine.

Engine not loaded yet — it loads the first time you drop a file.
Quality
STL flavour
Output unit

Changing any control re-runs the conversion on the file that is already loaded.

How to convert a STEP file to STL

  1. Drop the file. STEP and IGES exports from SolidWorks, Fusion, FreeCAD, Solid Edge, OnShape or a CAD viewer all work, as long as the extension is .step, .stp, .iges or .igs.
  2. Pick a quality. Normal is the right starting point for 3D printing. Choose Draft for a quick fit check or a large assembly you only need to eyeball, Fine when curved surfaces have to print smooth.
  3. Download and check the number. Compare the bounding box this page prints against your slicer. If they disagree by exactly 25.4×, a millimetre/inch unit mismatch is the cause, not a broken conversion.

What this converter supports

Supported inputs, outputs and settings
InputSTEP (.step, .stp) and IGES (.iges, .igs), ISO 10303 application protocols 203 / 214 / 242 as implemented by the OpenCASCADE kernel. One file per conversion.
OutputSTL, binary (default) or ASCII. Written by this page from the triangles the engine returns; the engine itself has no STL writer.
QualityThree presets that set the engine’s tessellation parameters. Draft = 0.02 bounding-box ratio, 0.5 angular. Normal = 0.005 / 0.3. Fine = 0.001 / 0.1. These are this page’s own choices, not a CAD standard.
UnitEverything is measured in millimetres (linearUnit: millimeter, the engine default). OpenCASCADE applies the unit declared inside your STEP file before the numbers reach this page. The optional inch output re-expresses the coordinate values as millimetres ÷ 25.4; it rewrites numbers only, it does not scale the geometry.
Engineocct-import-js 0.0.23, a WebAssembly build of OpenCASCADE Technology, 7,604,031 bytes of wasm (7.25 MiB) measured on this machine, LGPL-2.1.
NetworkEvery request goes to this page’s own folder: the script and stylesheet on load, then the conversion worker, its engine glue and the wasm engine when you drop the first file. Your model file is never sent anywhere.

Limits you need to know

Questions people actually ask

Is this an online STEP to STL converter, or does it really convert step files locally?

It is a static web page. The conversion is done by a WebAssembly build of OpenCASCADE that runs inside a worker thread of the tab. Read the source of app.js and engine/worker.js: the worker uses one XMLHttpRequest for the engine’s own wasm file from the same folder, and then Blob URLs. There is no API endpoint, no form POST, no analytics script, no cookie.

How do I convert stp to stl for 3D printing without a CAD program?

Drop the file here, leave quality on Normal, download the binary STL, open it in your slicer. If the part prints at the wrong scale, check the bounding box this page measured against the size in the slicer before you blame the conversion.

Should I pick binary or ASCII STL?

Binary. It stores each triangle in a fixed 50 bytes plus an 84-byte header, so a 12-triangle cube is exactly 684 bytes; ASCII writes the same triangles as text and ends up several times larger for the same geometry. Every slicer reads binary. Choose ASCII only when a tool explicitly asks for a text STL you can open in an editor.

Which quality should I use?

Normal for printing. Draft when you only need to check fit or orientation on a heavy assembly, Fine when a fillet or a cylindrical face looks faceted in the preview. The triangle counts from our test run show what that costs: a rounded 10 mm cube goes 40 → 56 → 140 triangles across the three presets, a conical part goes 286 → 516 → 2,142.

Can I convert iges to stl as well, or only step?

Both. The engine exposes a STEP reader and an IGES reader, and this page picks between them by extension. IGES is surface data rather than a solid, so a box drawn in IGES may come back as loose faces instead of a watertight shell.

Does it work on a phone?

Yes, down to 390 px wide, with the file picker and the download working through the browser. The engine download is the expensive part, and a heavy assembly can outgrow a phone browser’s memory sooner than a desktop one.

Why does my converted file have no flat bottom or the wrong orientation?

Nothing is rotated, aligned, centred or re-scaled here. The triangles land in the STL in the same coordinate system the model had in the STEP file. Orientation is your slicer’s job.

The numbers on this page, and where they come from

Every figure is measured, not assumed.

Measured with this engine on this machine (Node.js run, small files 10–33 ms; the two 18-part assemblies 175–309 ms and 427–756 ms)
Test fileBytesDraft triNormal triFine triNormal binary STL
simple-cube.stp8,247121212684 B
cube-10x10.stp9,404121212684 B
conical-surface.step9,6402865162,14225,884 B
rounded-cube.step21,07040561402,884 B
cube-10x10.igs (IGES)11,562121212684 B
as1_pe_203.stp (18 parts)139,7523,8486,08817,848304,484 B
as1-oc-214.stp (18 parts)441,9684,9007,37221,116368,684 B