Image to SVG Converter

Convert an image to SVG — turn any raster picture into clean, scalable vector paths, free and 100% in your browser. Your image is never uploaded. Best for logos, icons, and flat artwork.

Try:

Higher keeps more detail but makes a bigger, slower file. Logos are crispest at 2–16.

Input · raster
Output · SVG (scalable)
Drop an image to vectorize it — instantly, on your device.

Convert any image to SVG, right in your browser

Most pictures on your computer are raster images: a fixed grid of colored pixels. A PNG, a JPG, a WebP, a GIF, a BMP — they differ in how they compress and store those pixels, but they are all, fundamentally, a rectangle of dots. That works fine at the size the image was saved, but enlarge it for a banner, a t-shirt, or a high-resolution screen and the edges break into stair-steps and blur. An SVG stores artwork as mathematical paths instead of pixels, so it stays perfectly sharp at any size — from a 16-pixel favicon to a billboard — and usually weighs far less. Converting an image to SVG is how you take a logo or icon that only exists as a raster and make it resolution-independent again.

Vectorizely does this by tracing: it reads the shapes and color regions in your image and rebuilds them as editable SVG <path> elements. This is a true raster to vector conversion — an image to vector pass, a picture to SVG, not a picture wrapped in an SVG. The whole process runs in your browser, so your file never touches a server. That is faster (no upload), private (safe for unreleased logos and client work), and the reason the tool is free: there are no compute bills to pass on.

To convert an image to SVG, drop a file into the tool above and it traces immediately — this is the general hub for every raster input. If you already know your input format, the dedicated pages go deeper on each one's quirks — PNG to SVG (transparency, screenshots, UI exports) and JPG to SVG (compression artifacts, why photos resist tracing). The tool itself is identical; only the advice differs.

Which image formats convert to SVG?

Any raster format the browser can decode can be traced — the tracer reads the decoded pixels, so it does not care how they were stored on disk. In practice that covers everything you are likely to have:

Input formatWhat it isTraces well?Notes
PNGLossless raster, supports transparency✅ YesThe cleanest source for logos and icons — no compression noise. See PNG to SVG.
JPG / JPEGLossy raster, photographic⚠️ DependsFlat graphics trace fine; compression artifacts add noise near edges. See JPG to SVG.
WebPModern lossy/lossless raster✅ YesTreated like a PNG or JPG depending on how it was saved; transparency preserved.
GIFIndexed-color raster (≤256 colors)✅ OftenAlready a limited palette, which suits tracing; only the first frame of an animation is read.
BMPUncompressed raster✅ YesNo compression artifacts at all; just large files going in.

What the source format cannot change is the nature of the image. A photograph saved as a lossless PNG still traces into posterized blobs, because the problem is the smooth tonal content, not the file type. So the format determines how much edge noise you start with; the subject determines whether tracing is the right tool at all.

How to convert an image to SVG

  1. Add your image. Drag any raster file onto the tool above or click to browse. It is read locally — nothing is uploaded.
  2. Set the colors. Use the Colors slider to control how many distinct colors the vector keeps. A two-color logo traces cleanest at a low number; a detailed illustration needs more.
  3. Check the live preview. The SVG appears next to your image instantly. Zoom in to confirm the edges are clean and the shapes are right.
  4. Download the SVG. Save a real, scalable vector you can open in Illustrator, Inkscape, Figma, or drop straight into a website.

Raster vs vector: the fundamental difference

Everything about converting an image to SVG follows from one distinction, so it is worth being precise. A raster image is a value-per-pixel map. A 1920×1080 photo is literally just over two million color samples laid out in a grid; the file stores (or compresses) that grid. To make it bigger, software has to invent pixels that were never measured — interpolation — which is why enlargement blurs and reveals stair-stepped edges. Raster is the right model for content that genuinely varies pixel by pixel: photographs, painted textures, anything with continuous tone.

A vector image stores instructions instead of samples: "fill this region bounded by these curves with this color." Because the shapes are described mathematically, the renderer can draw them crisply at any resolution — there is no native pixel size to outgrow. Vector is the right model for content that is fundamentally made of distinct shapes and flat colors: logos, icons, type, line art, diagrams. The table makes the trade-off concrete:

Raster (PNG, JPG, WebP, GIF, BMP)Vector (SVG)
StoresA grid of pixel colorsShapes, paths and fills as math
Scales without quality lossNo — blurs and pixelatesYes — sharp at any size
Best forPhotos, complex imagery, fixed-size graphicsLogos, icons, line art, anything resized often
Editable shapes & colorsNo (pixels only)Yes (paths, recolorable in CSS)
Typical file size for a logoTens–hundreds of KBOften a few KB
Animatable / styleable in codeLimitedYes (CSS & JS)

Converting an image to vector form is therefore not a format toggle like PNG-to-JPG. It is a reconstruction: the tool has to look at the pixels and work out what shapes they were meant to represent. That reconstruction is the whole game, and it is why the kind of image you feed in matters far more than the format it arrived in.

What “image to SVG” actually does

It helps to be precise, because the phrase hides two very different operations. There is no lossless way to “convert” pixels into vectors — the information simply is not there in the same form — so a converter has to trace: detect edges, group similar colors into regions, and approximate each region's boundary with smooth curves. The result is a genuine vector, but it is an interpretation of your image, not a pixel-perfect copy. For clean, flat artwork that interpretation is essentially indistinguishable from the original and scales forever. For a photograph it is a rough approximation, which is why the input matters so much.

This is the opposite of going the other way. Rasterizing a vector to a PNG is deterministic and lossless-ish — you are just sampling a known shape onto a grid. Tracing a raster to a vector is a guess, an inference about intent. A good tracer makes that guess well for the images it is suited to and is honest about the ones it is not.

When image → SVG works brilliantly — and when it doesn't

Tracing quality is almost entirely a function of the kind of image you feed it, not its format:

Image typeResultRecommended?
Logo / wordmarkCrisp, a handful of clean paths, tiny file✅ Ideal
Icon / pictogramSharp, editable, scales to any size✅ Ideal
Line art / sketchClean outlines; raise smoothing for flowing lines✅ Great
Flat illustrationGood with enough colors; slightly stylized✅ Good
Screenshot / UIText edges can get rough; usable for shapes⚠️ Mixed
PhotographPosterized blobs, large file❌ Keep as raster
Gradient / soft shadingBanding into flat steps❌ Keep as raster

The rule of thumb: if you could redraw the image with a limited set of solid colors and clean edges, it will vectorize well. If it depends on smooth tonal transitions — skin, sky, photographic texture — it will not, and the honest move is to keep the original raster. We would rather tell you that than hand you a five-megabyte SVG that looks worse than what you started with.

A real vector vs. an image hidden inside an SVG

This is the single most common trap with free converters, and it is worth understanding. An SVG file is allowed to embed a bitmap — you can wrap your PNG or JPG in an <image> tag, often as a base64 string, save it with an .svg extension, and technically you have “an SVG.” But it is a lie of a vector: it does not scale, it cannot be edited path-by-path, and the file is often larger than the image it contains (base64 adds about a third). Plenty of converters do exactly this because it is instant and always “works.”

Vectorizely traces real <path> geometry. You can tell the difference in seconds: zoom the output preview far in — a real vector stays razor-sharp, an embedded bitmap pixelates just like the original. The path count shown under the tool is another tell: a genuine trace reports tens or hundreds of paths; an embedded picture reports zero. And if you open the file in a text editor, a real vector is a readable list of path commands, while a fake one is one giant data:image/png;base64,… blob.

Choosing the right number of colors

The Colors slider is the single most important control, because it sets the size of the palette the tracer quantizes your image down to before it draws anything. Get it right and the rest usually takes care of itself:

  • 2–4 colors — flat logos, wordmarks, monochrome icons. You want a few crisp shapes and nothing else; a low count forces the tracer to ignore anti-aliasing fuzz and stray tones.
  • 5–12 colors — multi-color logos, simple flat illustrations, badges. Enough range to keep the distinct brand colors without inventing noise between them.
  • 16–32 colors — detailed illustrations, stylized art, anything with several deliberate shades. The default of 16 is a sensible middle ground for an unknown image.
  • 32–64 colors — only for genuinely rich artwork where you accept a bigger file. Pushing this high on a simple logo backfires: every anti-aliased edge becomes its own near-duplicate color and litters the output with specks.

A useful instinct: pick the smallest palette that still reads as the original. Tracing rewards restraint. If two shades are nearly identical and you do not need both, merging them into one color removes a whole layer of paths and shrinks the file with no real loss.

Tuning the trace: colors, despeckle, smoothing

Three controls do most of the work. Start with the defaults; reach for the advanced ones only if the preview needs it.

  • Colors — the number of distinct colors the SVG keeps, as above. The first thing to adjust on any image.
  • Despeckle — removes tiny stray paths left by anti-aliasing or JPEG-style compression noise around edges. Nudge it up if your output has confetti; keep it low if you are losing real small details like thin lines or fine text.
  • Smoothing — how aggressively edges are fitted to curves. Higher smoothing gives flowing, organic outlines (good for hand-drawn art); lower smoothing keeps hard corners (good for geometric logos and UI shapes).

A practical tip: if your image is small or fuzzy, the cleanest result often comes from starting with the highest-resolution version you have. Tracing a 1000-pixel logo gives the curve-fitter far more to work with than tracing a 200-pixel thumbnail, regardless of which control you touch.

What people convert images to SVG for

People convert image to SVG for remarkably consistent reasons — and almost all of them come down to either scaling something up cleanly or making it editable again:

  • Web & product UI — crisp logos and icons that look sharp on every screen and pixel density, recolorable with CSS for dark mode and hover states, at a fraction of a PNG's weight.
  • Print & signage — artwork that scales to posters, banners, vehicle wraps, and business cards without pixelation. A printer can rasterize a vector at whatever DPI the press needs.
  • Cutting & engraving — Cricut, Silhouette, and laser cutters need clean paths to follow; a traced SVG gives them crisp outlines instead of guessing at pixel edges.
  • Recovering a lost source — turning a flattened export back into editable shapes when the original Illustrator or Figma file is gone. The trace is not the original, but it is a workable starting point.
  • Embroidery & vinyl — flat, well-separated color regions map directly onto stitch and weeding paths.
  • Icon systems & design hand-off — normalizing a pile of mismatched raster icons into a consistent, scalable vector set.

The file-size economics of switching to SVG

For the artwork SVG is built for, the size win is not marginal — it is often an order of magnitude, and it compounds. A raster logo has to ship one file per resolution to stay sharp (a 1×, 2×, and 3× PNG, say, or several favicon sizes), and each is tens of kilobytes. A single traced SVG replaces all of them and renders sharp at every one of those sizes from a few kilobytes of text. On a page that loads a dozen icons, that is the difference between a few hundred kilobytes of images and a few kilobytes inlined into the HTML — fewer requests, faster first paint, and no blurry icons on a high-density display.

The caveat is the same one that runs through this whole page: the economics only work in SVG's domain. Trace a photograph and the vector can easily come out larger than the JPG you started with, because representing photographic detail as thousands of tiny paths is wildly inefficient. So the size argument is really another way of stating the suitability rule — flat, shape-based artwork is both where tracing looks best and where it pays off in bytes.

How image tracing works under the hood

Tracing an image into paths happens in three stages, and each maps directly to a control in the tool:

  1. Color quantization. The image's thousands of slightly different pixel colors are reduced to a small palette of N representative colors — that is the Colors slider. This is why a clean two-color logo wants a low number and a richer illustration needs more.
  2. Region segmentation. Adjacent pixels of the same quantized color are grouped into connected regions. Tiny stray regions — usually the fuzzy halo left by anti-aliasing or compression — are discarded according to the Despeckle threshold.
  3. Curve fitting. The jagged pixel boundary of each region is approximated with smooth Bézier curves. How tightly the curve hugs the original edge versus how much it smooths is the Smoothing control.

Understanding this makes the failure modes obvious. A photograph has effectively unlimited colors and no clean region boundaries, so quantization throws away most of the information and segmentation produces a chaos of little blobs — hence the posterized result. Flat artwork, by contrast, already is a small set of solid-color regions with crisp edges, so every stage has an easy job. Knowing the pipeline also tells you which knob to reach for: too many colors is a quantization problem, confetti is a segmentation problem, and over-rounded corners are a curve-fitting problem.

What's actually inside an SVG file

An SVG is not a mysterious binary like a PNG — it is plain text (XML) you can open in any code editor and read. A traced logo might look like a short list of <path> elements, each with a d attribute describing a series of move, line, and curve commands, plus a fill color. Wrapping them is an <svg> tag with a viewBox — the coordinate system that lets the whole thing scale to any pixel size without redrawing. Because it is text, an SVG diffs cleanly in version control, compresses extremely well with gzip/brotli, and can be recolored or animated with nothing but CSS. That transparency is a big part of why vectors are the right format for anything that needs to live a long time and adapt to many contexts.

Cleaning up and optimizing your SVG

A traced SVG is production-ready, but you can often make it smaller and tidier. The standard tool is SVGO (and its web front-end SVGOMG): it strips editor metadata, collapses redundant groups, and rounds coordinates to a sensible precision, frequently cutting file size by half with no visible change. If you opened the file by hand you could also merge several paths that share a fill color, or delete a stray speck the despeckle pass missed. For most logos none of this is necessary — the trace is already a few kilobytes — but for detailed artwork it is worth a pass before shipping. Serve the result with gzip or brotli compression and an SVG often ends up a fraction of the equivalent PNG over the wire.

How to use your new SVG

Once you have the file, here is where it actually goes:

  • On a website — drop it in with <img src="logo.svg">, or paste the SVG markup inline so you can recolor it in CSS (set fill: currentColor and the icon inherits your text color). Inline SVGs are also animatable and styleable per-state (hover, dark mode).
  • As a component — most frameworks import SVGs directly; tools like SVGR turn one into a React/Preact component so you can pass props like size and color.
  • In design tools — open or place it in Figma, Illustrator, Inkscape, Affinity Designer, or Sketch as fully editable shapes.
  • On Cricut, Silhouette & laser cutters — upload the SVG to Cricut Design Space, Silhouette Studio, or a laser cutter's job software; the machine follows the vector paths as cut or engrave lines. Clean, well-separated color regions are exactly what these workflows want.
  • For embroidery & vinyl — flat, distinct shapes map directly onto stitch and weeding paths.

Vectorizely vs. Illustrator, Inkscape, and paid tracers

There is no single “best” tracer — it depends on the job. Here is the honest landscape:

ToolCostBest forTrade-off
VectorizelyFreeLogos, icons, flat art — fast, private, no uploadNot built for photographic tracing
Illustrator Image TraceSubscriptionDesigners already in Adobe, fine manual controlCosts money; another app to open
Inkscape (Trace Bitmap)FreePower users who want every knob, offlineDesktop install; steeper learning curve
vectorizer.ai / Vector MagicPaidThe hardest images — complex color, near-photographicWatermarked or paywalled; uploads your file

For the everyday case — “I have an image and need a clean SVG” — an in-browser tracer is the fastest path and keeps your artwork on your machine. Illustrator's Image Trace and Inkscape's Trace Bitmap use the same underlying ideas (quantize, segment, fit curves) with more manual control and a longer setup. If you are tracing something genuinely photographic and need the absolute best edge quality, a dedicated paid engine will beat any free tracer; that is a real limit, not a marketing line, and we would rather point you there than pretend otherwise.

Common problems, and how to fix them

  • Output looks blocky. The source is probably a photo or a gradient — those do not trace cleanly. Keep the raster, or simplify the artwork first.
  • Stray specks everywhere. Raise Despeckle and/or lower Colors. Anti-aliased and compressed edges create lots of near-duplicate colors that become noise.
  • Edges too rounded / corners lost. Lower Smoothing to keep hard geometry.
  • Lost a thin line or small text. Lower Despeckle so small paths survive, and start from a higher-resolution image.
  • Colors slightly off. Tracing quantizes to a fixed palette; raise Colors a little, then recolor exact brand values in your vector editor afterward.
  • A JPG traces noisily. JPEG compression scatters faint color around edges; raise Despeckle, or re-export the source as PNG if you can. The JPG to SVG page covers this in detail.

Make your SVG accessible

A vector that conveys meaning should be readable by assistive technology. For an inline SVG, add a <title> (and optionally a <desc>) as the first child and reference it, or put role="img" with an aria-label on the <svg>. Purely decorative marks should be hidden from screen readers with aria-hidden="true". And because some users override colors or are colorblind, never rely on color alone to carry meaning — shape and label should stand on their own.

Why this runs in your browser

Most online converters upload your file, process it on their servers, and send it back — which means your unreleased logo or a client's brand asset briefly lives on someone else's machine, and you are trusting their retention policy. Vectorizely traces locally using in-browser code, so the image never leaves your device. It works offline, there is no upload wait, and confidential artwork stays confidential. It is also why the tool can stay free: there is no per-conversion server cost to recover, so there is no paywall, no watermark, and no “sign up to download.”

Frequently asked questions

Is this image to SVG converter free?

Yes — completely free, with no account, no watermark and no file limit. The conversion runs entirely in your browser, so there are no server costs to recover and nothing to charge for.

Which image formats can I convert to SVG?

Any common raster format your browser can decode: PNG, JPG/JPEG, WebP, GIF and BMP all work. They are all grids of pixels, so the tracing process is identical regardless of the input format. If you specifically have a PNG or a JPG, the dedicated PNG to SVG and JPG to SVG pages cover the format quirks in more depth.

Will my image be uploaded to a server?

No. The image is read and traced entirely on your device using in-browser code — it never leaves your computer. That makes the tool safe for confidential logos, unreleased artwork and client work, and it also works offline once the page has loaded.

Does it produce a real vector or a bitmap hidden inside an SVG?

A real vector. The tool traces the outlines and color regions into SVG <path> elements that scale to any size and stay editable. It does not wrap your original bitmap in an <image> tag, which is the shortcut many "free" converters quietly take — that produces a file that still pixelates and cannot be edited.

Why does my photo look blocky or posterized after converting?

Photographs have thousands of subtly different colors and no hard edges, so tracing has to approximate them with a small set of flat color regions — that is what produces the posterized, blobby look. Tracing is built for logos, icons and flat graphics. For a photo, keep a raster format like PNG or JPG.

What size or resolution image works best?

Any reasonable size works; very large images are scaled down before tracing for speed, and the resulting SVG is resolution-independent so it still scales up cleanly afterward. The one thing that genuinely helps quality is starting from a sharp, high-resolution source — tracing a 1000px logo gives the curve-fitter far more to work with than a blurry 200px thumbnail.

Can I convert an image with a transparent background?

Yes. Transparent areas in a PNG, WebP or GIF are kept transparent in the SVG, so logos and icons keep their cut-out background. JPG and BMP have no transparency to begin with, so those trace onto a solid background.