Why Large STEP Files Fail in the Browser
STEP files are compact. A 50-part mechanical assembly might be only 8MB as a STEP file. But when the converter tessellates those 50 parts into triangles, the memory expands dramatically — often by a factor of 8 or more.
That 8MB STEP file becomes 60-80MB of triangle data in memory. Add the WASM runtime itself (~40MB), JavaScript overhead, and the browser's own memory usage, and you can easily hit the ceiling of what a single browser tab can handle.
| STEP File Size | RAM Needed | Result |
|---|---|---|
| Under 10MB | ~80MB | ✓ Always works |
| 10–30MB | 80–240MB | ✓ Works reliably |
| 30–60MB | 240–480MB | ⚠ Works on desktop, may fail on mobile |
| 60–88MB | 480–700MB | ⚠ Borderline — may return empty geometry |
| Over 88MB | 700MB+ | ✗ Empty geometry returned |
The failure mode is subtle: the browser doesn't crash outright. Instead, the WASM heap runs out mid-tessellation and returns empty arrays. The converter downloads a 1.2KB file with no geometry. You have no idea what went wrong.
The Assembly Splitter: A Different Approach
Instead of converting the entire assembly at once, the Assembly Splitter processes each component individually. This keeps the peak memory usage at the level of your largest single part — not the sum of all parts.
A 53-part drone assembly where the biggest single component is 5MB needs only ~40MB of RAM per conversion step. The overall file is 88MB, but no single step exceeds the memory ceiling.
✓ The result: 41 individual STL/OBJ/3MF files delivered in a single ZIP download, named using the original component names from your CAD assembly tree. Construction geometry, axes, and empty bodies are automatically filtered out.
How the Assembly Splitter Works
STEP file is parsed normally
The OpenCASCADE WASM engine reads the full STEP file and extracts the component tree. It identifies all mesh objects — typically the same number as your assembly components.
Empty geometry is detected
If the merged output has zero triangles but the file contains individual mesh objects, the Assembly Splitter activates automatically. You don't need to do anything.
Each component is processed individually
The engine iterates through every component, converts it to the target format, and adds it to a ZIP archive. Components with no geometry (construction planes, axes, sketches) are silently filtered.
ZIP is delivered to your browser
One download. Inside: individual STL, OBJ, or 3MF files, one per component, named from your assembly tree. Ready to open in your slicer.
Why Individual Files Are Often Better
A common reaction to getting a ZIP of individual parts is: "I just wanted one file." But think about what you actually do with a 3D-printed assembly:
- Multi-material printing: The Bambu Lab AMS needs individual files assigned to different filaments. A merged STL can't do this.
- Different scales: Some components print at 100%, others might need scaling. Individual files give you control.
- Different printers: Large assemblies are often split across multiple machines anyway. Individual files make this easy.
- Selective printing: You need to reprint just one broken part. With individual files, you open exactly that one component in your slicer.
💡 In the 3D printing workflow, a single merged mesh of a 53-part assembly is actually less useful than 53 individual files. The Assembly Splitter turns a technical limitation into a practical advantage.
What If My Individual Parts Are Still Too Large?
If a single component in your assembly is itself larger than approximately 60MB, the Assembly Splitter won't help — the individual part still hits the memory ceiling. The solution is to export sub-assemblies from your CAD software:
- Fusion 360: Right-click the oversized component → Save as → Export as STEP
- SolidWorks: Open the sub-assembly → File → Save As → STEP
- FreeCAD: Select the body → File → Export → STEP
Components under 60MB will convert reliably on any desktop browser. The standard recommendation is to keep individual STEP exports under 50MB for consistent results.
Batch Converting Multiple Assemblies
If you have several assemblies to convert — a full product with multiple sub-assemblies, for example — Simpel3D's batch mode lets you drop up to 5 files at once (Pro plan) or 3 files (Standard plan). Each file is processed sequentially to keep memory usage predictable, and the results are bundled into a single ZIP.
Convert your large STEP assembly now
Assembly Splitter activates automatically. ZIP of individual parts delivered to your browser.
Open Simpel3D Free →5 free conversions/day · Standard .99 (50MB) · Pro 2.99 (120MB)