Raster to vector · runs locally

Image to SVG converter.

Drop in a photo, logo, scan or screenshot. any2svg traces it into real SVG paths locally — no upload, no account, no credits. Tracing and previewing are free; taking the vector away as SVG, PDF, EPS, AI or DXF is Pro.

.png.jpg.webp.gif
Drag images here to trace
Paste:⌘V
Trace preset

Applies to images you add next — each one traces as it lands.

Why any2svg
01

Any format in.

JPG, PNG, WEBP, TIFF, BMP, GIF, ICO. Transparency flattens to white; CMYK and palette modes normalize to RGB before tracing.

02

Real vector paths.

Not a bitmap wrapped in an <svg>. Genuine filled paths you can open and edit in any vector editor — Illustrator, Figma, Inkscape, CAD.

03

Export everywhere.

One trace, five outputs: SVG for the web, PDF for print, EPS and AI for Illustrator, DXF for AutoCAD. Delivered from your machine.

What happens to your image

The same five steps run for every file you drop, whether it is one logo or twelve photos.

  1. Step 1

    Normalised

    The raster is opened with Pillow and converted to RGB. Transparency is composited onto white, and palette or CMYK images are converted to three clean channels.

  2. Step 2

    Resampled and denoised

    The image is resampled with LANCZOS to the preset width — 1300px for Sharp, 1100px for Balanced, 900px for Compact — and passed through a 3×3 median filter that removes compression speckle without softening edges.

  3. Step 3

    Mode detected

    The engine counts distinct quantised colours on a 256px thumbnail. Forty-eight or fewer means flat artwork, which traces as straight-edged polygons; more than that means photographic, which traces as smooth splines.

  4. Step 4

    Traced

    vtracer builds stacked colour layers into filled paths. Per-path translate transforms are folded into absolute coordinates, a viewBox is added, and the path data is pretty-printed so the file is readable in an editor.

  5. Step 5

    Exported on request

    The trace is always SVG. PDF, EPS, AI and DXF are produced from that SVG only when you pick them, so a batch is never slowed down building files nobody asked for.

Questions people actually ask

Is this really a vector, or an image inside an SVG file?
A real vector. The output is filled <path> elements with no <image> element anywhere — the engine even warns on stderr if one ever appears. You can open the file in Illustrator, Figma, Inkscape or a CAD tool and edit individual paths.
Where does my image go?
To the local tracing engine running on the machine that serves the app, which for a self-hosted install is your own. Nothing is handed to a third-party conversion service, and there is no account to tie a file to.
How large an image can I trace?
Up to about 45 MB. Larger uploads are rejected before the trace starts so you get an error immediately instead of a timeout several minutes later.
What is the AI file, exactly?
It is written as EPS-compatible PostScript, the same bytes as the EPS export, because that is what opens directly in Illustrator without a conversion step. If your pipeline needs a native Illustrator document, use the SVG and place it in Illustrator yourself.
Why does one photo take a minute while another takes two seconds?
Cost tracks how many distinct colour regions the image has, not its pixel count. A mostly flat 2.3 MP photo traced in about 1.75 s here; the same dimensions with real photographic detail took roughly 50 s. There is no way to know the number before the trace finishes, which is why the progress bar counts finished images rather than pretending to show a percentage.