PNG to SVG Converter

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

Initializing... drag & drop files here

Supports: PNG, APNG

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
1
6
10
Lower precision will result in smaller file size, but may cause loss of detail. Number between 4 - 6 is recommended for most use cases.

Convert PNG to SVG: What This Tutorial Covers

PNG is the best raster source a tracer can be given. It is lossless, so edges arrive exactly as they were drawn with no JPEG blocking to confuse the outline finder, and it is the format every awkward source is worth routing through before you trace it. This tutorial covers the single slider this page exposes, the ceiling that slider silently exceeds, what happens to PNG transparency once it becomes vector paths, and the images that should never be traced at all.

How to Convert PNG to SVG

  1. Upload Your PNG File: Drag and drop your .png onto the page or click "+ Add Files" to browse. Several images can be queued and they all trace with the same setting.
  2. Set Number Precision: This page exposes exactly one control, the Number precision slider. It opens at 6 on a 1-10 scale, and 4-6 is the range the on-page note recommends. Do not push it past 8 — the table below explains why.
  3. Check the Artwork Is Flat: Tracing groups neighbouring pixels into solid colour regions and draws an outline around each one. A logo, icon, stencil or line drawing has a handful of regions; a photograph has millions. The source decides the result far more than the slider does.
  4. Convert and Download: Click Convert and save the .svg. Files upload over an encrypted connection, are processed on our servers, and are deleted automatically after a few hours. No sign-up, no watermark.

Walk-through: One Slider, Two Settings, and a Hard Ceiling

The label says "Number precision", which sounds like it only governs decimal places in the path data. It does more than that. The value you pick is handed to the tracing engine twice — once as path precision (decimal places kept in each d attribute) and once as colour precision (significant bits retained per RGB channel). At 6 you keep six bits per channel, or 64 levels each of red, green and blue. At 1 you keep one bit per channel and the picture collapses into a handful of blocks.

That double duty is also where the ceiling comes from. An 8-bit RGB channel cannot hold nine significant bits, so the engine rejects any colour precision above 8. Because one slider drives both parameters, asking for nine decimal places in the path data also asks for nine bits of colour, and the whole job aborts with nothing to download. The slider still travels to 10.

Slider position Colour bits kept Path decimals Result on our 512 x 512 three-colour test PNG (4,091 bytes)
1 1 per channel 1 327 bytes — collapses to a couple of blocks
2 2 per channel 2 2,215 bytes
4 4 per channel 4 2,720 bytes
6 (opens here) 6 per channel 6 3,215 bytes, 3 paths — clean
8 (ceiling) 8 per channel 8 3,695 bytes, visually identical to 6
9 or 10 out of range out of range Aborts: Color precision is invalid at 9. It must be within [1,8]

Practical reading: 4-6 is the useful band, 8 is the safe maximum, and everything above 8 is a footgun rather than a quality setting. Raising the slider never adds detail the trace did not find — it only decides how exactly the shapes it did find get written down.

What Traces Well, and What Does Not

Source PNG What the tracer finds Measured outcome
Flat three-colour logo, 512 x 512 3 colour regions 3,215-byte SVG — smaller than the PNG and scales without blurring
Icons, stencils, silhouettes, line art tens of regions Compact, genuinely editable in a vector app
Screenshots containing text hundreds of regions Every glyph becomes outlines, not live text; usually larger than the PNG
Photographic image, 640 x 480 (622,092 bytes) 72 regions with enormous path data 619,696-byte SVG — no size win at all, and visibly posterised

The photographic row is the one worth internalising. Vectorizing a photo does not fail loudly; it succeeds and gives you a file that is the same size, looks worse, and is slower to render. If the goal is a smaller picture rather than scalable paths, compress the PNG or export PNG to JPG instead.

What Happens to PNG Transparency

PNG is the only common trace source that carries an alpha channel, so this deserves a straight answer: alpha is treated as a binary mask, not as a value.

  • Fully transparent pixels (alpha 0) produce no geometry at all. Nothing is drawn there, so the SVG canvas is genuinely see-through in that area — the transparent background of a logo survives the trip correctly.
  • Any pixel with alpha of 1 or above is traced as a fully opaque fill. We ran a seven-step alpha ladder (1, 16, 64, 127, 128, 192, 255) through the tracer and every step came back as the same solid #FF0000 fill with no fill-opacity attribute anywhere in the output.

The consequence is that soft things harden. A 50%-opacity overlay becomes solid. A drop shadow that fades to nothing becomes a flat slab wherever its alpha was non-zero. Anti-aliased edges, which are a ring of partially transparent pixels, become an opaque colour fringe hugging the shape. If a logo has a soft glow you do not want baked in, delete the glow before tracing rather than after.

Common Errors and How to Fix Them

  • "The job finished with nothing to download" — the Number precision slider was at 9 or 10. Move it to 8 or below and re-run; nothing else about your file is wrong.
  • "The SVG is blobby and posterised" — a photographic or gradient-heavy source was traced. Vectorizing quantizes continuous tone into flat regions. Use flat artwork, or keep the image as a raster.
  • "The SVG is bigger than the PNG" — the same cause. Busy sources create long, dense path data. Simplify the artwork or accept that this image is not a vectorization candidate.
  • "Edges came out fringed" — anti-aliasing. The half-transparent boundary pixels trace as opaque shapes in their own right. Export the source with hard, aliased edges, or export it larger so the fringe is proportionally thinner.
  • "My semi-transparent layer went solid" — expected, per the transparency section above. Flatten or remove the effect in the source before tracing.
  • "I wanted my layers and live text back" — tracing rebuilds a picture from colour regions. It has no knowledge of your original layer names, groups or fonts; text arrives as outlined paths.

When This Doesn't Work

A tracer works on decoded pixels, so everything about the output is decided by the pixels it is handed. That is exactly why PNG is the recommended waypoint for awkward sources — camera RAW, HEIC and AVIF, multi-entry ICO files, layered PSDs, lossless WebP. None of those are "an image" until something renders them, and rendering them to PNG yourself means you choose the exposure, the crop, the contrast and the pixel size rather than inheriting a default. Convert the awkward source to PNG first, look at it, then trace it here.

The other genuine limit is intent. If what you actually need is a scalable illustration rather than an automated outline of an existing bitmap, no tracer will get you there — redraw it in a vector editor. And if you already have an SVG and need pixels instead, the reverse trip is SVG to PNG.

Frequently Asked Questions

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

It vectorizes. The output contains real <path> elements with Bézier curve data and solid fill colours — not a base64-encoded copy of your bitmap inside an <image> tag. You can open the resulting file in a text editor and read the geometry. Our three-colour test logo produced exactly three <path> elements, one per colour region, which is what genuine tracing looks like.

Why does the Number precision slider go to 10 if 9 and 10 fail?

Because the slider was given a 1-10 range while the underlying colour-precision parameter only accepts 1-8, and one slider value feeds both the colour and the path parameter. Positions 9 and 10 push colour precision out of range and the tracer aborts. We reproduced this on vtracer 0.6.4, the engine build this converter runs, and the error is explicit: Color precision is invalid at 9. It must be within [1,8]. Treat 8 as the real maximum until the range is clamped.

Does my PNG's transparency survive the conversion?

Partly, and in a specific way. Fully transparent areas are simply not drawn, so a logo on a transparent background stays transparent. But partial transparency does not survive — we measured alpha values from 1 through 255 and every one of them traced to a fully opaque fill, with no fill-opacity emitted at all. Soft shadows, glows and 50%-opacity overlays come back solid.

Will a photograph convert into a clean, scalable vector?

No. Tracing approximates continuous tone as a set of flat colour regions, so a photo comes back posterised. It also gains nothing in size: our 622,092-byte photographic test PNG produced a 619,696-byte SVG. Tracing is for logos, icons and line art. For photographs, stay in a raster format.

Why does a PNG trace better than a JPG of the same picture?

Because PNG is lossless. JPEG's block-transform compression softens edges and sprinkles ringing artifacts around high-contrast boundaries, and the tracer faithfully outlines those artifacts as though they were part of the artwork — producing stray slivers along every edge. The same image kept as PNG gives the tracer an exact boundary to follow. If you only have a JPG, JPG to SVG works, but expect a noisier trace.

My source is a HEIC, RAW, EPS or ICO file — why convert it to PNG first?

Because none of those are decoded pixels yet, and a tracer only ever sees decoded pixels. A RAW is an undeveloped sensor mosaic; a HEIC is a photographic codec carrying continuous tone and sometimes HDR; an EPS is PostScript drawing instructions; an ICO is a container of several bitmaps at different sizes, and a tracer has no way of knowing which one you meant. Something has to resolve each of those into a single flat raster, and doing it yourself means you decide how — which frame, which exposure, which size — instead of inheriting whatever a default produces. PNG is the natural landing place because it is lossless, so the round trip costs no quality. That is the whole reason this page exists as the recommended waypoint.

Can the SVG be opened in browsers and design apps?

Yes. SVG is a W3C XML-based standard, and caniuse currently reports basic SVG support at about 96.7% of tracked global browser usage, covering Chrome, Firefox, Safari and Edge. Vector editors including Illustrator, Inkscape, Figma and Affinity Designer import it directly. What you will not get back are layer names, groups or live editable text — those concepts do not exist in the traced output.

How are my files handled, and how long are they kept?

Your PNG is uploaded over an encrypted connection and traced on our servers. Files are deleted automatically after a few hours, there is no sign-up and no watermark, and nothing is shared or made public.

Rate PNG to SVG Converter Tool

Rating: 4.8 / 5 - 101 reviews