Image to SVG Converter

Convert Image files to SVG format online. Free, fast, no watermarks.

Initializing... drag & drop files here

Supports: 3FR, APNG, ARW, AVIF, BMP, CR2 +30 more

OptionsAdvanced Options - Our defaults are optimized for the best results. We recommend you keeping the defaults unless you have a specific need.
VECTOR_IMAGE_COMPRESSION
Number precision
Lower precision will result in smaller file size, but may cause loss of detail. Number between 4 - 6 is recommended for most use cases.

Image to SVG: What This Tutorial Covers

This converter genuinely traces your picture and rebuilds it as SVG paths and Bézier curves — it does not base64 the original pixels into an <image> tag and call it a vector. The engine is the open-source vtracer, and it works on decoded pixels: it clusters neighbouring pixels whose colours are close enough and fits curves around each cluster. That one sentence explains almost everything about the results. The trace can only be as good as the raster it is given, which is why the source image matters far more than any setting on the page. By the end of this page you will know which sources trace cleanly, which are worth cleaning up first, what precision does to colour as well as to coordinates, and the one slider position to stay away from.

How to Convert an Image to SVG

  1. Upload Your Image File: Drag and drop onto the page or click "+ Add Files". You can queue several images and trace them all with the same setting.
  2. Check Your Source Image First: A clean, flat, high-contrast raster is what the tracer is built for. If your source is a camera RAW, a HEIC or HEIF straight off a phone, a layered PSD or a multi-layer ICO, converting it to PNG first is worth the extra click — you get to see and correct the rendered image before it becomes paths, and a PNG has no compression ringing for the edge finder to mistake for detail.
  3. Set Number Precision: Open Advanced Options and move the Number precision slider, which runs 1 to 10 and starts at 6. Positions 9 and 10 abort the conversion and return no file, because the slider sends the same value as the colour precision, which is only defined for 1 to 8. The on-screen note recommends 4 to 6 for most work, and that advice is sound. Do not push it to 9 or 10.
  4. Convert and Download: Click Convert and download your SVG. No sign-up, no watermark.

Walk-through: What Number Precision Really Changes

One slider drives two separate vtracer settings at once, which is why its effect is larger than "how many decimal places". It sets path precision — the number of decimal places kept in each path's coordinate data — and simultaneously colour precision, the number of significant bits retained per RGB channel. At 6 you keep six bits per channel, 64 levels of red, green and blue. At 1 you keep a single bit per channel, and the trace collapses into a handful of blocks.

We traced the same flat two-colour logo at each setting and measured the output:

Number precision Result on our test logo When to use it
1 319 bytes, one path — colour crushed to the point the artwork disappears Never, for colour artwork
3 6.3 KB, 6 paths — shapes recovered, colour noticeably coarse Only when file size is the sole priority
4 7.3 KB, 6 paths Good default for simple flat logos
6 (default) 8.9 KB, 6 paths The recommended setting for most artwork
8 10.3 KB, 6 paths — the highest value that works Fine detail, sub-pixel accuracy
9 or 10 Conversion fails — vtracer accepts colour precision only in the range 1 to 8 and rejects anything above it Do not use

That last row is worth repeating because the slider allows it: values of 9 and 10 are outside what the tracing engine accepts, and the conversion will not complete. Stay at 8 or below.

Precision also cannot add detail the trace never found. If the output looks blobby at 6, raising it will not help — the fix is a cleaner, higher-contrast source.

What Traces Well and What Doesn't

Source image Trace result Better route
Logo, icon, badge, monogram Crisp scalable paths, small file This converter
Line art, stencil, silhouette, signature Clean editable curves This converter
Flat-colour illustration with a small palette Faithful vector shapes This converter
Screenshot containing text Every glyph becomes an outlined blob; large file, uneditable text Keep it as PNG
Photograph, gradient, soft shadow Posterised colour patches, frequently larger than the source Keep it as PNG or JPG
Camera RAW, HEIC/HEIF, AVIF, ICO, PSD Depends entirely on how the file gets rendered first Render to PNG yourself so the choices are yours

Common Errors and How to Fix Them

  • "The conversion stopped and I got nothing back" — Check Number precision first: positions 9 and 10 stop the run outright, because one value feeds both the path precision and the colour precision and colour precision only accepts 1 to 8. Drop it to 8 or below. If the slider was already low, re-save the source as a plain PNG with Image to PNG and trace that — a straightforward PNG is the input the tracer is happiest with, and awkward containers such as RAW, HEIC, AVIF, ICO, PSD and lossless WebP all become one.
  • "My logo came out as coloured blobs" — Precision is too low, or the source is too soft. Start at 6 and make sure the input has hard edges and flat colour rather than anti-aliased gradients or JPEG artefacts.
  • "The SVG is bigger than the PNG I uploaded" — That is the signature of tracing something photographic. A photo becomes thousands of path elements, and path data is verbose text. Keep photographs as raster.
  • "The text in my SVG isn't editable" — Tracing produces shapes, not fonts. Letters come back as outlines because that is all the tracer can see. If you need live text, set it in a vector editor instead.
  • "My WebP gave me trouble" — WebP is two quite different formats behind one extension, and the lossless variant is the awkward one. Re-save it as PNG and trace that; PNG is lossless too, so the round trip costs nothing.

Frequently Asked Questions

Does this embed the image inside an SVG or actually vectorize it?

It vectorizes. The output contains real <path> elements with Bézier curve data describing shapes the tracer detected — there is no base64-encoded bitmap hidden inside. You can open the file in a text editor and read the geometry. That is what makes the result genuinely resolution-independent for suitable artwork, rather than the same pixels in a new wrapper.

Which image formats trace best here?

PNG is the reference case, and JPG/JPEG, BMP, GIF, TIFF, PPM and lossy WebP all trace well when the artwork itself is flat and high-contrast. The awkward sources are the ones that are not really "an image" until something renders them: camera RAW files, which are undeveloped sensor mosaics; HEIC/HEIF and AVIF, which are photographic codecs carrying continuous tone and sometimes HDR; multi-entry ICO files; layered PSDs; and lossless WebP. With any of those, rendering to PNG yourself first is the better move — PNG is lossless so the intermediate costs nothing, you get to see and fix the render before it becomes paths, and a clean PNG traces better than a JPEG of the same artwork anyway.

Will a photograph convert into a clean, scalable vector?

No, and it is worth being blunt about it. Photographs have continuous tone and millions of colours, so the tracer approximates them with large numbers of flat colour patches. The result looks posterised, is nothing like the original, and is often a larger file than the photo was. Vector tracing exists for logos, icons and line art. For a photograph, Image to PNG or Image to JPG is the right conversion.

Does the SVG keep transparency from my PNG?

Yes. The tracer only emits paths for regions it actually traces, so areas that were transparent in the source simply have no shape covering them — we rendered a traced logo back to a bitmap and the previously transparent corner came out fully transparent, with no opaque background rectangle added. Note that this means the SVG has no background at all; if you place it on a dark page, whatever is behind it shows through.

What precision should I use, and why does 10 fail?

Use 6 unless you have a reason not to; 4 to 6 covers essentially all artwork. Values above 8 fail because the slider drives vtracer's colour-precision setting, which is defined only for 1 to 8 significant bits per RGB channel — the engine rejects 9 and 10 rather than clamping them. Going below 4 starts to visibly quantise your colours, not just round your coordinates.

Can I open and edit the result in Illustrator, Inkscape or Figma?

Yes. SVG is a W3C XML-based vector format, and MDN lists browser support as all versions of Chrome, Edge, Firefox, Opera and Safari; every mainstream vector editor imports it. What you will find inside is a stack of filled paths rather than named layers or grouped objects, so expect to do some tidying — merging paths, naming groups, replacing traced letterforms with live text — before it behaves like artwork drawn from scratch.

How do I get a smaller SVG?

Lower Number precision one step at a time (6 to 5 to 4) and simplify the source before tracing: fewer colours, harder edges, no drop shadows or gradients. A two-colour logo traces to a few kilobytes; the same logo with a soft shadow can be an order of magnitude larger because the shadow becomes dozens of near-identical translucent shapes. Cropping away empty margins before uploading helps too.

Can I go back the other way, from SVG to a normal image?

Yes — SVG to PNG rasterises a vector cleanly at whatever size you need, and SVG to JPG does the same for a flattened photo-style output. That round trip is a useful check on a trace: rasterise the SVG and compare it with the original to see exactly what the tracer kept and what it discarded.

How is my file handled?

Your image is uploaded over an encrypted connection, traced on our servers, and deleted automatically a few hours later — no sign-up, no watermark, never shared or made public. There is no limit on how many files you queue; the practical constraint on a large batch is upload size and connection speed.

Rate Image to SVG Converter Tool

★★★★✭
Rating: 4.8 / 5 - 44 reviews