100% FREE · CLIENT-SIDE

Turn any image
into a clean SVG

Bitmap to vector conversion that runs entirely in your browser. No API keys, no uploads, no accounts — just instant, free vectorization.

Zero tokens. Zero server calls. Zero cost.
Source Image

Drop an image here

or click to browse your files

PNG JPG WebP GIF BMP AVIF
Preview
Threshold i Sets the brightness cutoff between "dark" and "light" pixels before tracing. Lower values keep only the darkest areas as shapes; higher values include more midtones. If your output looks too fuzzy or grainy, try raising this to merge noisy detail into solid regions. Light/dark cutoff
128
Smoothing i Controls how aggressively small, noisy paths are filtered out and how tightly curves follow pixel edges. Higher values produce smoother, simpler outlines with fewer stray shapes — useful if the result looks jagged or speckled — but can lose fine detail. Curve tolerance
2
Gaussian blur i Softens the source image before tracing. A small amount (1-2) smooths out hard JPEG-compression edges and noisy pixels, reducing jagged speckles in the traced result. Set to 0 for no effect. Pre-trace softening
0
Sharpen i Enhances edges before tracing, useful for soft or low-resolution sources. Higher values make edges crisper but can amplify noise — try combining a little blur with a little sharpen for the cleanest result. Set to 0 for no effect. Edge enhancement
0
Color mode Output fill
SVG Output

Upload an image and click
Vectorize to see the result here

Loading vectorizer…

        
AI REFINEMENT
STEP 01

Drop your image

PNG, JPG, WebP, GIF, BMP — any raster format works. Stays in your browser.

STEP 02

Tune the settings

Adjust threshold for light/dark balance, and smoothing to control path detail.

STEP 03

Vectorize

Potrace traces pixel edges into clean Bezier curves — all inside your browser via WASM.

STEP 04

Download or copy

Grab your SVG file or copy the code directly to paste into Figma, Illustrator, or code.