# SVG to STL Converter > To convert SVG to STL, extrude the SVG's filled shapes to a chosen height and save them as a 3D mesh. Kenerate's free converter does it in your browser: it scales the design to a width in millimetres, can raise each colour for multi-colour printing and adds a plate or keychain tab. Stroke-only paths must become fills first. URL: https://kenerateai.com/svg-to-stl Publisher: Kenerate AI (https://kenerateai.com) Last updated: 2026-10-01 ## Key facts - Price: Free, no account - Reads: Filled paths, shapes and compound paths (even-odd and nonzero fill rules) - Skips: Stroke-only paths, embedded raster images, white background fills (optional) - Size: 10–250 mm wide · 0.4–30 mm high, plus 0–5 mm extra per colour layer - Base: None, plate, or keychain with ring hole - Output: STL, 3MF, OBJ, GLB - Smooth at any size: Curves are sampled from the vector itself, so a 20 mm badge and a 200 mm sign are equally clean. - Colour layers: Each fill colour becomes a separate layer that can sit a little higher — so a filament change at each height prints a multi-colour logo on a single-nozzle printer. - Holes stay holes: The inside of an O, A or a ring follows the SVG's fill rule, so it isn't filled in. - Plate and keychain: Add a rounded backing plate or a keychain tab with a ring hole in one click. - Parse: Paths, shapes and transforms are read; fills are grouped by colour. - Resolve holes: Compound paths become outlines with holes according to the fill rule. - Scale: The design is centred, flipped to Y-up and scaled to your width in mm. - Extrude: Each colour is extruded to its height, optionally on a plate, and exported. - STL (Stereolithography): Triangle mesh (binary or ASCII); by 3D Systems, 1987. Holds: Triangle surfaces, Facet normals. Lacks: Colour and textures, Units, Materials. Best for: 3D printing — every slicer opens it. Opens in: Cura, PrusaSlicer, Bambu Studio, OrcaSlicer, Blender. - 3MF (3D Manufacturing Format): ZIP package with XML; by 3MF Consortium, 2015. Holds: Meshes with units (millimetres), Colours and materials, Several objects and build plates. Lacks: Animation. Best for: Modern 3D printing and multi-colour prints. Opens in: Bambu Studio, PrusaSlicer, OrcaSlicer, Cura, Windows 3D Builder. ## Steps 1. Add the SVG — Drop your .svg onto the box above, or try the two-colour sample. 2. Set width and height — Choose the finished width in mm and the extrusion height. 3. Layers and base — Add extra height per colour for multi-colour prints, and a plate or keychain tab if needed. 4. Download — Download STL or 3MF and slice. ## In depth ### Fills extrude, strokes don't An SVG stroke is a line with a width that's only drawn on screen; it has no outline to extrude. Converting strokes to paths turns them into real filled shapes. Open paths that aren't closed can't be extruded either. ### Units: why sizes go wrong elsewhere In CSS and SVG, 1 inch = 96 px = 2.54 cm [15], so 1 px ≈ 0.265 mm. Converters that treat one SVG unit as one millimetre make parts 3.78× too big. This tool sidesteps it: you set the finished width directly. ### Holes and fill rules Whether the middle of an O is open depends on the path's fill rule (nonzero or even-odd) and the direction of its inner contour. The extrusion follows the same rule your browser uses to draw the SVG, so if it looks hollow on screen, it prints hollow. ### Make it printable Thin parts below about 0.9 mm (two perimeters on a 0.4 mm nozzle) are risky [11]. Thicken fine lines or scale the design up before printing. References: [1] Wikipedia — STL (file format): https://en.wikipedia.org/wiki/STL_(file_format) [2] Wikipedia — Wavefront .obj file: https://en.wikipedia.org/wiki/Wavefront_.obj_file [3] Wikipedia — FBX: https://en.wikipedia.org/wiki/FBX [4] Khronos Group — glTF: https://www.khronos.org/gltf/ [5] 3MF Consortium — 3MF specification: https://3mf.io/specification/ [6] Wikipedia — Universal Scene Description (USD / USDZ): https://en.wikipedia.org/wiki/Universal_Scene_Description [7] Wikipedia — PLY (file format): https://en.wikipedia.org/wiki/PLY_(file_format) [8] Khronos Group — glTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html [9] Apple — AR Quick Look: https://developer.apple.com/augmented-reality/quick-look/ [10] three.js — documentation: https://threejs.org/docs/ [11] Prusa Knowledge Base — Modeling with 3D printing in mind: https://help.prusa3d.com/article/modeling-with-3d-printing-in-mind_164135 [12] Prusa Blog — lithophanes and filament transparency: https://blog.prusa3d.com/lets-play-with-filament-transparency-how-to-make-amazing-lifelike-color-photos-with-just-a-simple-color-change_104338/ [13] Polymers (2024) 16(20):2862 — FFF parameters and translucency of PLA: https://doi.org/10.3390/polym16202862 [14] Wikipedia — Lithophane: https://en.wikipedia.org/wiki/Lithophane [15] W3C — CSS Values and Units Level 3 (absolute lengths): https://www.w3.org/TR/css-values-3/ [16] Adobe Substance 3D — OpenGL vs DirectX normal maps: https://experienceleague.adobe.com/en/docs/substance-3d/bakers/common-questions/what-is-the-difference-between-the-opengl-and-directx-normal-format [17] Blender Manual — Normal Map node: https://docs.blender.org/manual/en/latest/render/shader_nodes/displacement/normal_map.html [18] Wikipedia — Normal mapping: https://en.wikipedia.org/wiki/Normal_mapping [19] SIL Open Font License: https://openfontlicense.org/ ## FAQ Q: Is SVG to STL conversion free? A: Yes — free, no account, and the SVG never leaves your browser. Q: Why is part of my SVG missing? A: Only filled shapes can be extruded. Lines drawn as strokes have no area — convert them with “Stroke to Path” (Inkscape) or “Outline Stroke” (Illustrator) and try again. Q: What about text in my SVG? A: Convert text to paths (“Object to Path” or “Create Outlines”) before exporting, otherwise the font isn't part of the file. Q: How big will it be? A: You choose the width in millimetres, so the SVG's own units don't matter. (In CSS and SVG, 96 px equals one inch, which is why some converters make files 3.78× too big when they treat a pixel as a millimetre.) Q: Why is the inside of my letter filled? A: The path's fill rule decides holes. If a hole is filled, set the path to even-odd fill or combine the shapes with “Difference” in your editor. Q: Can I print it in several colours? A: Yes. Set an extra height per colour, then add a filament change at each layer height in your slicer, or export 3MF and assign colours there. Q: How do I convert SVG to STL in Blender? A: Import it with File → Import → Scalable Vector Graphics, select the curves and raise Extrude in the Object Data properties, then convert to a mesh (Object → Convert → Mesh). Imported SVGs are tiny, so scale the model up before exporting STL. Or drop the SVG here and set the finished width in millimetres directly. Q: Will a white background be printed? A: Not by default — “Ignore white fills” leaves white shapes out. Untick it to keep them. ## Related pages - AI 3D Model Generator: https://kenerateai.com/ai-3d-model-generator - Image to 3D: https://kenerateai.com/image-to-3d-converter - AI STL Generator: https://kenerateai.com/ai-3d-printing-model-generator - Text to 3D: https://kenerateai.com/text-to-3d-generator ## Sources - Wikipedia — STL (file format): https://en.wikipedia.org/wiki/STL_(file_format) - Wikipedia — Wavefront .obj file: https://en.wikipedia.org/wiki/Wavefront_.obj_file - Wikipedia — FBX: https://en.wikipedia.org/wiki/FBX - Khronos Group — glTF: https://www.khronos.org/gltf/ - 3MF Consortium — 3MF specification: https://3mf.io/specification/ - Wikipedia — Universal Scene Description (USD / USDZ): https://en.wikipedia.org/wiki/Universal_Scene_Description - Wikipedia — PLY (file format): https://en.wikipedia.org/wiki/PLY_(file_format) - Khronos Group — glTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html - Apple — AR Quick Look: https://developer.apple.com/augmented-reality/quick-look/ - three.js — documentation: https://threejs.org/docs/ - Prusa Knowledge Base — Modeling with 3D printing in mind: https://help.prusa3d.com/article/modeling-with-3d-printing-in-mind_164135 - Prusa Blog — lithophanes and filament transparency: https://blog.prusa3d.com/lets-play-with-filament-transparency-how-to-make-amazing-lifelike-color-photos-with-just-a-simple-color-change_104338/ - Polymers (2024) 16(20):2862 — FFF parameters and translucency of PLA: https://doi.org/10.3390/polym16202862 - Wikipedia — Lithophane: https://en.wikipedia.org/wiki/Lithophane - W3C — CSS Values and Units Level 3 (absolute lengths): https://www.w3.org/TR/css-values-3/ - Adobe Substance 3D — OpenGL vs DirectX normal maps: https://experienceleague.adobe.com/en/docs/substance-3d/bakers/common-questions/what-is-the-difference-between-the-opengl-and-directx-normal-format - Blender Manual — Normal Map node: https://docs.blender.org/manual/en/latest/render/shader_nodes/displacement/normal_map.html - Wikipedia — Normal mapping: https://en.wikipedia.org/wiki/Normal_mapping - SIL Open Font License: https://openfontlicense.org/