Free online SVG to DXF converter
SVG to DXF at the size it was actually drawn
Drop an .svg and download a .dxf a laser or router will accept. The part most converters get wrong is the scale: an SVG carries a physical size and a set of internal numbers, and reading the internal numbers alone sends a 100 mm drawing to the cutter as a 283 mm one. Here the two are resolved together and the result is stated in millimetres before you download anything. Circles stay circles, groups become layers, and nothing is uploaded.
- 100% free
- No signup
- Scale resolved
- Circles stay circles
- Nothing uploaded
How to convert SVG to DXF
Three steps, and the middle one decides whether you waste a sheet.
Drop the .svg
Paths, rectangles, circles, ellipses, polygons and lines are all read, with group transforms applied and clip paths and definitions left out. Béziers are flattened adaptively — a gentle curve costs three points, a tight one costs forty, rather than every curve costing the same.
Check the size in millimetres
This is the step that saves material. The panel states how the scale was decided — usually a physical width read against the viewBox — and gives the drawing's real size. If that number is not what you drew, nothing after it will be either.
Download the DXF
R12 ASCII, the version every cutter and CAD package reads, with millimetres declared in the header, layers preserved from group names, and any contour that is genuinely a circle written as a CIRCLE entity rather than as ninety-six line segments.
Technical specifications
| Reads | .svg — path, rect, circle, ellipse, line, polyline, polygon |
|---|---|
| Transforms | translate, scale, rotate, skew, matrix, nested groups |
| Scale | width/height resolved against viewBox; 96 dpi fallback per specification |
| Writes | .dxf — R12 ASCII, millimetres declared in $INSUNITS |
| Circles | Closed contours that fit a circle are written as CIRCLE entities |
| Layers | One per group id, so an organised drawing stays organised |
| Not converted | Text without outlines, embedded images, gradients, filters |
| Axis | Y is flipped — SVG counts down, every CAD format counts up |
| File size | No fixed limit — past 100 MB you are told what it will cost this tab, then it opens |
Frequently asked questions
Why do converted SVGs come out the wrong size?
Because an SVG has two coordinate systems and most files only reconcile them by accident. `width="100mm"` says how big the drawing is in the world; `viewBox="0 0 283.46 283.46"` says what the numbers inside it mean. Take the viewBox numbers as millimetres — which is what a naive converter does — and you get a part 2.83 times too large, because that file was authored at 72 dpi. This resolves the pair, states the result on screen, and falls back to the specification's own rule when there is no physical width: user units are CSS pixels at 96 to the inch.
Does my text come across?
No, and no converter can honestly promise otherwise without shipping the font. Text in an SVG is a string plus a font reference; the outline that would be cut lives in the font file, not in the drawing. Convert the text to paths in your drawing program first — Inkscape calls it Object to Path, Illustrator calls it Create Outlines — and it arrives as the contours you actually want. Text elements found in the file are counted in the panel so you can tell they were skipped rather than lost.
Are circles kept as circles?
Yes, and it matters more than it sounds. A cutter driving a polygonised circle chatters at every vertex and leaves facets on the edge; the whole point of sending a DXF rather than an image is that curves stay curves. Any closed contour that fits a circle within tolerance is written as a CIRCLE entity. Arcs inside a path are still flattened to polylines — recovering an arc from an arbitrary Bézier is guesswork, and a wrong guess is worse than a dense polyline.
Which DXF version does it write?
R12 ASCII, deliberately. It is the oldest version still universally understood, with no object dictionary, no class table and no handles — everything added since is a feature nothing in a cut file needs, and every added feature is one more thing a cheap laser's software can refuse. Closed contours carry the flag that marks them closed, which is what cutting software uses to tell inside from outside; a file that omits it produces parts with no holes.
Will it handle a logo I downloaded?
Usually, with two caveats worth checking in the preview. Embedded raster images are not outlines and are skipped — an SVG that is a wrapper around a PNG has nothing to cut. And a stroked path is an outline of a line, not a closed shape: a cutter will follow the centre of it, which for a two-pixel-wide letter stroke means cutting through the middle of the letter rather than around it. If you need the stroke cut as a shape, apply Stroke to Path before exporting.
Is the file uploaded?
No. The XML is scanned, the paths are flattened and the DXF is assembled in this tab. Nothing crosses the network, which is worth knowing if the artwork is a client's logo — the usual free converters keep what you send them for as long as their terms allow.
The two coordinate systems, and why they disagree
An SVG was designed for screens, and it shows in one specific way. The file has an outer size — width and height, which may carry a real unit — and an inner one, the viewBox, which says what the coordinates inside mean. A browser maps one onto the other and the picture looks right at any size, which is the whole point. A cutter cannot do that: it needs one number per millimetre, and the file gives it two candidates.
The historical mess makes it worse. Inkscape shipped for years at 90 dpi, then moved to 96; Illustrator exports at 72 unless told otherwise; a great many files carry a viewBox and no physical size at all. So the same rectangle can appear as 100, 283.46 or 377.95 units depending on nothing but which program saved it. A converter that picks one and hopes will be right about a third of the time, and the failure is silent — the drawing opens, looks correct, and is wrong by a factor nobody notices until the material is cut.
The rule applied here is the specification's own. If there is a physical width and a viewBox, the ratio between them is the scale, and it is stated on the panel in the same words: this width in millimetres across that many units. If there is no physical size, user units are CSS pixels at 96 to the inch, which is a defined fallback rather than a guess. Everything downstream — the size, the cut length, the DXF header — follows from that one decision, which is why it is shown rather than assumed.
The reverse trip is on DXF to SVG, and if you want to inspect a drawing before converting it — layer by layer, with the cut length a quote is built from — the DXF viewer reads both formats.
Where the conversion happens
Every number on this page is worked out by JavaScript running in the tab you are reading it in. The model you open is read straight off your own disk — it is never uploaded, logged or kept, which is also why these tools carry on working after you disconnect from the network.
Specific to this page: the artwork people convert here is very often a client's logo or an unreleased product mark, and the free converters that dominate this search keep uploads under terms that let them. The XML parsing, the curve flattening and the DXF writing all happen in this tab.