Image to SVG converter.
Pixels are temporary; vectors are forever. pic2svg traces photos, logos, and illustrations into crisp, resolution-independent vector paths. On this site the image is posted to api.pic2svg.com and traced by the engine serving the app — a self-hosted install keeps every file on your machine — and no third-party vectorizer ever sees it.
Trace preset:Balanced (Auto)▼
Applies to images you add next — each one traces as it lands.
Why pic2svg
Any format in.
JPG, PNG, WEBP, TIFF, BMP, GIF, ICO. Transparency flattens to white; CMYK and palette modes normalize to RGB before tracing.
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.
Export everywhere.
One trace, five outputs: SVG for the web, PDF for print, EPS and AI for Illustrator, DXF for AutoCAD — all five generated on request from that single SVG.
What happens to your image
The same five steps run for every file you drop, whether it is one logo or twelve photos.
- 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.
- Step 2
Downsampled to fit
The image is resampled with LANCZOS only when it is wider than the preset cap — 3840px for Sharp, 3072px for Balanced and Compact — and is never upscaled, so the canvas is never larger than the source.
- 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.
- Step 4
Traced
vtracer builds stacked colour layers into filled paths. The SVG keeps vtracer's per-path translate transforms (viewers apply them); a viewBox is added and the path data is pretty-printed so the file is readable in an editor. The PDF, EPS, AI and DXF exporters fold those transforms into absolute coordinates while parsing that SVG.
- 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 tracing engine running on the machine that serves the app. On this site the file is posted (base64) to api.pic2svg.com and traced there; a self-hosted install keeps it on your own machine. 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.
- What do the offline converters actually do?
- We measured them instead of summarising them: Inkscape 1.4.4 headless, potrace 1.16 and this engine, run locally on three inputs twice each, with the commands, timings and raw JSON published in our Offline converter benchmark. Those runs are genuinely local CLI tools. The hosted converter on this page is a different boundary — it posts your image as base64 to api.pic2svg.com before tracing it.