What the STEP file actually contains
The output is ISO 10303-21 STEP, AP214, written directly from the mesh’s own index buffer. Every triangle becomes an ADVANCED_FACE on a PLANE surface; vertices that the mesh shares are written once as shared VERTEX_POINTs and edges once as shared EDGE_CURVEs, so the topology is real, not a bag of loose facets. When the mesh is watertight the faces are closed into a CLOSED_SHELL inside a MANIFOLD_SOLID_BREP, which is what SolidWorks, Fusion 360, Inventor, FreeCAD and Onshape read as a solid body you can measure, section and boolean against.
When the mesh is not watertight, CADverter does not pretend. The shell is written as an OPEN_SHELL in a SHELL_BASED_SURFACE_MODEL, the panel says so before you download, and the writer’s own validation notes name the problem. The shell verdict is taken per edge, twice, once in each direction: a single unpaired edge is enough to keep an honest “surface model” label rather than a solid that a CAD tool will then refuse to fill.
Why most free converters will not do this direction
STEP to STL is cheap: tessellate exact surfaces into triangles. The reverse asks a converter to build CAD topology out of triangles, and the usual shortcut is a sewing pass in a geometry kernel, one face per triangle, that rediscovers which edges touch by distance. On a real print-sized mesh that runs for minutes to half an hour, so most online tools either cap the triangle count, upload the file to a server farm, or hand back a surface model and call it STEP.
CADverter’s writer skips the rediscovery. In a mesh the shared vertices already are the topology, so a 225,760-triangle model that took about thirty minutes through the kernel’s sewing route writes in a couple of seconds, on your own machine, with no triangle cap other than your browser’s memory.
Coplanar triangles become one face
A cube exported as STL is twelve triangles. Written naively it arrives in CAD as twelve half-squares you cannot dimension. CADverter merges adjacent triangles that lie in one plane into a single polygonal face, holes included, so that cube is six faces you can select, and a tessellated CAD part typically collapses by one to two orders of magnitude in face count: the 3DBenchy sample goes from 225,154 triangles to roughly 197,000 faces, while a machined bracket with large flats shrinks far more.
The membership test is a distance from each vertex to the seed face’s plane, not an angle between normals, which is what lets the thin sliver triangles that slicers and CAD exporters leave along edges join their neighbours instead of breaking the shell. One tolerance drives the weld grid, the printed decimal places and the planarity test together, so two vertices that are welded apart are guaranteed to print apart in the file.
Parts and colour survive the trip
An STL carries neither, but many meshes that reach this page do: an OBJ with groups, a 3MF with several objects, a GLB with materials, all of which convert through the same writer. A model with more than one part becomes one PRODUCT per part under a root assembly, related by NEXT_ASSEMBLY_USAGE_OCCURRENCE, and a part with a colour gets STYLED_ITEM and COLOUR_RGB presentation entities. Both are proved by reading the written bytes back through OpenCASCADE’s own XCAF reader in the test suite rather than by searching the file for entity names.
You can also select which parts to write. Ctrl+click parts in the viewer or the parts panel to include or exclude them, and the STEP contains only those, named after them.
Faceted, not smooth — and what Reconstruct surfaces adds
A triangle mesh carries no curved surfaces, so a converted cylinder is a prism of narrow planar faces, exactly as fine as the STL was. That is a property of the input, not a defect of the writer, and CADverter says so in the panel rather than implying otherwise. If you need editable smooth geometry, the STEP is still the right starting point: CAD tools can fit features to it, and it measures correctly.
For meshes that were tessellated from CAD in the first place, the optional Reconstruct surfaces pass in the convert panel tries to recover the analytic surfaces the triangles came from: planes, cylinders, cones, spheres and tori. Where it succeeds you get a STEP with real curved faces instead of facets; where it does not, the faceted face is kept rather than guessed. Fillets and blends are the hardest case and the current weak spot, so treat the pass as an upgrade to try, not a promise.
Units: STL does not have any
An STL file is bare numbers with no unit declaration, so CADverter reads it as millimetres, which is what every slicer and almost every CAD exporter assumes. The STEP it writes declares millimetres explicitly. If your STL was authored in inches the solid will open 25.4 times too small; scale it in the CAD tool after import, or export a unit-aware format such as 3MF from the source instead.
Check for yourself that nothing is uploaded
Open the browser’s developer tools on the Network panel before dropping the file, then convert and download. You will see this page’s own scripts, stylesheets and the WebAssembly engine load, and then nothing further: no request carries your file anywhere, however large it is. The test suite makes the same check against the production build, asserting that the whole open–convert–download flow produces zero external requests.
There is no account, no queue and no watermark for the same reason: there is no server in the loop to enforce any of them.
When a desktop tool is the better choice
If you need a smooth, feature-based solid from a scanned or sculpted mesh, no converter gives you that; you need reverse-engineering software or a remodel. If you want the same faceted solid without a browser, FreeCAD does it offline: Part workbench, Part → Create shape from mesh…, then Part → Convert to solid, then File → Export as STEP. Expect it to be slow on large meshes for the sewing reason described above, and expect twelve faces on the cube. CADverter is the quicker path when the mesh is big, the machine is not yours, or the file must not leave it.
STL to STEP questions
Will SolidWorks or Fusion 360 open the STEP as a solid body?
Yes, when the STL was watertight: the file carries a MANIFOLD_SOLID_BREP and both import it as a solid. A mesh with holes produces a surface model, and the convert panel tells you which you are getting before the download.
Is there a file size or triangle limit?
Only your device’s memory. Everything runs inside the browser tab, so a 200,000-triangle mesh converts in seconds and multi-million-triangle files work on a machine with enough RAM. CADverter warns before opening a file that is likely to exhaust memory.
Can I convert several STL files to STEP at once?
Yes. Drop as many as you like, choose STEP, and download one ZIP with a STEP per file. Files that cannot be read are listed by name rather than silently missing.
Does it also write IGES or BREP?
Yes, from the same panel. IGES and BREP go through the OpenCASCADE kernel’s sewing route, which is exact but far slower on large meshes; the panel shows a measured time estimate and asks before starting a long one.