STL Mesh

STL → STEP · FREE · NO UPLOAD

STL to STEP Converter — With the Triangles Merged

Turn a .stl mesh into a .step / .stp solid that CAD will open — coplanar triangles merged into flat faces, nothing uploaded.

What it does: reads the triangles, welds duplicate vertices, groups triangles that share a plane, and writes each group as one flat STEP face. A 12-triangle cube comes out as 6 faces, not 12.

What it does not do: invent curves. Round surfaces stay faceted, because the STL threw that information away before you ever got the file. The section below shows exactly what you get.

How it works: everything needed to convert STL to STEP runs in this browser tab. No server, no queue, no sign-up — disconnect from the network and it still runs. The homepage STL viewer is the same local engine; this page adds the STEP writer.

Demo model — drop a file to replace it
Conversion runs locally in your browser.

What you actually get: a faceted STEP

This is the part every other converter leaves you to discover on your own, so here it is up front. The file you download is a faceted B-rep — a watertight solid whose surfaces are all flat planes. Flat regions of your model come out as clean, single faces. Curved regions come out as what they already were in the STL: a fan of small flat panels.

STL trianglesflat panels only,no surface dataINPUTCoplanar mergetriangles sharinga plane becomeIN THIS TABSTEP solidFACETED_BREPCAD opens asOUTPUT
Merging is the whole trick. Nothing is fitted back into curves, because a mesh has no curves to fit.

That distinction decides whether this page solves your problem. If you need the part positioned, cut, combined with other bodies, sent to a machine shop or handed to someone who just needs “a STEP file”, a faceted solid does the job. If you need to grab a fillet and change its radius, no converter can give you that — the shape has to be rebuilt in CAD, and the routes for doing that are further down.

We tested the top online STL to STEP converters

Before building this, we made a deliberately boring test file: a 20 mm cube, stored the way every STL stores a cube — 12 triangles, two per face. Then we fed it to the online converters that rank highest for this conversion and opened the results in a text editor to count what came back. A converter that understands the geometry should return 6 faces. Here is what actually happened.

ConverterCube: 12 triangles inWhat the STEP contains
Top-ranking converter A12 faces outFaceted solid, triangles passed through one-for-one
Top-ranking converter B12 faces outA surface shell, not a solid — CAD imports loose faces you may have to stitch
This page6 faces outFaceted solid with coplanar triangles merged into square faces

None of the three turned the cube into a parametric box, and none of them could — that is the honest ceiling of mesh-to-STEP conversion. The difference is tidiness: a 6-face cube has faces you can select, dimension and mate to. A 12-face cube has a diagonal seam across every side, and every downstream operation has to work around it. The same gap shows on real parts — a 192-triangle cylinder leaves here as 50 faces (48 side panels plus two disc caps) instead of 192.

Conversion specs

Input formatSTL (binary or ASCII)
Output formatSTEP / STP — ISO 10303-21, AP214 schema
Geometry typeFACETED_BREP: closed shell of planar faces
Coplanar mergingYes — triangles within 0.5° and one tolerance of a shared plane
Curve fittingNo — a mesh carries no surface data to fit
UnitsWritten as millimetres (STL itself is unitless)
Triangle limit150,000 — reduce larger meshes first
Processing100% in your browser, no upload, works offline
CostFree, unlimited conversions, no account

Batch conversion and the triangle ceiling

Everything on this page stays free and unlimited for one file at a time. The paid tier is for the other situation — a folder of them, or a mesh past the triangle ceiling.

  • Drop a folder of STL files and get every STEP back in one download
  • No 150,000-triangle ceiling — dense scans and assemblies convert too
  • A merge report per file: which faces were merged, which regions fell back to raw triangles and why
  • Adjustable coplanar tolerance, for meshes that came out of CAD with slightly imprecise facets

Unlimited batch for a single afternoon of work. For people who hit this every few weeks.

When you need real CAD geometry instead

Plenty of people arrive at this conversion wanting something a converter cannot give them: a downloaded model turned back into an editable part. If that is you, the honest route is to rebuild the shape in CAD. Three ways, easiest first.

Fusion 360 — Mesh to BRep

Insert the mesh, then use Mesh → Convert Mesh with the faceted option. You get the same kind of faceted solid this page produces, just inside Fusion. The Prismatic option attempts real planar and cylindrical faces, but it is limited to meshes under roughly 10,000 facets and expects a mesh that came from CAD in the first place — an organic scan will refuse. Once converted, the usual move is to sketch on a face and rebuild the features you care about rather than editing the facets.

FreeCAD — free, and more patient

In the Part workbench: Part → Shape from mesh, then Convert to solid, then Refine shape. Refine is the step people skip and it is the one that merges coplanar facets — the same operation this page does on the way out. FreeCAD costs nothing and has no facet ceiling, so it is the practical choice when Fusion refuses a dense mesh. It will be slow on hundreds of thousands of triangles.

SolidWorks and the dedicated tools

SolidWorks can import a mesh as a graphics body and, with ScanTo3D, fit surfaces to it. Dedicated reverse-engineering packages do this properly and charge accordingly. This is the only category that genuinely turns a scan into parametric CAD, and it is a supervised process, not a button.

If none of that applies and you simply need the file in the other direction, that is STEP to STL — a different problem with a different answer, explained on its own page. Before converting a big mesh, thinning it with the STL simplifier usually gives a cleaner STEP, and if your slicer has been complaining about the mesh, run the repair check first — a mesh with holes converts into a solid with the same holes.

FAQ

Is this a real STEP file or just a renamed STL?+

A real STEP file. The output is ISO 10303-21 text against the AP214 schema, built as a FACETED_BREP: a closed shell of planar faces, each with its own plane and boundary loop. Fusion 360, FreeCAD, SolidWorks and OnShape all import it as a solid body. What it is not is a surface model with curves — see the next question.

Why are curved surfaces still faceted?+

Because the STL you started with has no curves in it. A cylinder in an STL is 48 flat strips, not a cylinder — the original surface definition was thrown away when the file was tessellated. Turning those strips back into a true cylindrical surface is surface fitting, which is reverse engineering, not file conversion. Tools that do it well cost money and need your supervision. This converter does not pretend to do it.

What is coplanar merging and why does it matter?+

A cube in an STL is 12 triangles — two per face. Most online converters write out 12 STEP faces, so you open the result and find a triangulated cube. This converter detects that those triangle pairs lie in the same plane, merges each pair, and writes 6 square faces instead. Fewer faces means a smaller file, a shorter feature tree, and faces you can actually click on in CAD. On a flat-heavy part the reduction is large; on an organic scan there is nothing coplanar to merge and you get one face per triangle.

Can I edit the result in Fusion 360 or SolidWorks?+

You can move it, cut it, boolean it and print it. You cannot push-pull a fillet or change a dimension, because there are no parametric features to change — a faceted body has no design history. If you need editable features, the CAD routes further down this page rebuild the shape properly instead of converting it.

Is my file uploaded?+

No. The STL is parsed and the STEP is written in this browser tab. There is no upload endpoint — once the page has loaded you can disconnect from the network and the converter still works.

My STL is huge — will it work?+

Up to 150,000 triangles. STEP is a text format, so each triangle costs roughly 300-400 bytes even after merging; past that limit the file gets unwieldy for CAD to open. Run the mesh through the STL simplifier first, then convert — a decimated mesh usually converts better anyway, because fewer, larger triangles merge into cleaner faces.

STL to STEP or STL to STP — which do I want?+

The same file. STEP files carry either extension and every CAD package treats them interchangeably; .stp survives from the days of 8.3 filenames. Both buttons above produce identical content, so pick whichever extension the tool downstream expects.

Related: STEP to STL (the reverse direction), Reduce STL file size before converting a dense mesh, STL to 3MF if the destination is a slicer rather than CAD.

🧊
Written by Casey Marlin · Last updated
This update: conversion covered by scripts/test-stl.mjs