Remove image backgrounds in your browser with an on-device AI model — your photo never uploads.
Updated
Upload
Best results: a single subject with reasonable foreground/background contrast.
First run downloads the model (80 MB) from staticimgly.com. Subsequent runs are instant.
Quick start
How to remove an image background in your browser
Drop a photo, pick a model, click remove. The image stays on your device.
Step 1
Drop image
Drag a JPG, PNG or WebP. Works best with a single, prominent subject.
Step 2
Pick a model
Fast (40 MB) for previews, Balanced (80 MB) as the default, Best (160 MB) for hero shots. The model downloads once and is then cached.
Step 3
Remove + download
Click Remove background. Get a PNG or WebP cutout with transparent background. The cutout is ready to composite or share.
In-depth guide
Background remover — local AI, no upload
An in-browser background remover powered by an open-source U²-Net / IS-Net segmentation model. Inference runs on your device via WebAssembly — your photo never leaves your browser. Only the model weights are downloaded once from the IMG.LY static CDN, then cached for offline use.
How local background removal works
The tool uses @imgly/background-removal, an open-source library that bundles an ONNX-format salient-object segmentation model and runs it through ONNX Runtime Web in your browser. The pipeline is:
You drop an image — it's decoded into a pixel buffer.
The model receives the pixels and predicts a soft alpha mask (0 = background, 1 = foreground) for every pixel.
The mask is multiplied against the original RGBA to produce a cutout with transparent background.
The result is encoded as PNG or WebP and returned as a Blob.
The model weights are downloaded once from staticimgly.com on first use and cached by the browser. After that, the tool works offline.
Fast, Balanced or Best — which model to pick
Three variants of the same architecture are available, representing different size / accuracy trade-offs:
Fast (isnet_quint8) — 8-bit quantized, ~40 MB download. Inference under 3 s on modern hardware. Slight precision loss visible on fine edges (hair, fur). Best choice for previews or low-bandwidth users.
Balanced (isnet_fp16) — half-precision floats, ~80 MB. The recommended default. 5–10 s inference, good edge quality.
Best (isnet) — full-precision floats, ~160 MB. 10–30 s inference. Use when the cutout will be composited into a high-stakes context (hero image, product shot, retoucher's reference).
Practical tips
Single, prominent subject. The model picks the most visually salient subject. Multi-subject photos give unpredictable results.
Decent foreground/background contrast. A black cat on a black sofa is going to test the model. A black cat on a tan rug works great.
Expect to clean up hair and fur. No salient-object model gets fly-away hair perfect. Plan to do final cleanup in an image editor for hero work.
PNG vs WebP for the output. Both preserve transparency. PNG is universally compatible but ~2× the size. WebP is supported in all current browsers and most modern design software (Figma, Photoshop 2023+, Affinity).
Privacy and trust
Two distinct network calls happen, and only one of them carries any data about you:
Model fetch — your browser downloads the ONNX file from staticimgly.com. The CDN sees your IP and the requested file name. It does not see your image.
Image processing — happens entirely on your device. No fetch, no upload, no telemetry.
The privacy page lists this disclosure in the External Services section.
When to use it vs alternatives
Use this tool for quick image cleanup, conversion, resizing, OCR, or export work where a browser-local workflow is enough. Use a dedicated editor when you need layered retouching, colour-managed print proofing, or scripted batch production.
Common pitfalls
Start from the highest-quality original you have; repeated lossy exports can soften edges and text.
Some output formats do not preserve transparency, animation, colour profiles, or metadata.
Very large photos can hit browser memory limits; reduce dimensions first if processing stalls.
Frequently asked questions
Is my image uploaded to a server?
No. Background removal runs entirely in your browser using ONNX Runtime Web (WebAssembly). Your photo is decoded in-memory and inference runs on your device's CPU. The only network call is a one-time download of the segmentation model weights from the IMG.LY static CDN — after that visit the model is cached and works offline.
Then what does the IMG.LY CDN see?
Only your IP address and the HTTP request for the model file (the URL is something like https://staticimgly.com/@imgly/background-removal-data/.../isnet_quint8.onnx). The CDN does not see your image. The transfer is one-way: file download, no telemetry payload.
How big is the model and why does the first run feel slow?
The Fast model is ~40 MB, Balanced ~80 MB, Best ~160 MB. The first run after page load has to download (and warm up) the model. Subsequent runs reuse the in-memory copy and complete in 3–10 seconds for typical phone photos.
Which model should I pick?
Start with Balanced — it's the right trade-off for portrait, product and pet photos. Pick Fast if you want a quick preview or you're on a slow connection. Pick Best for hair, fur, glass or transparent edges where the cutout will be inspected closely.
What images does this work well on?
Single-subject photos with reasonable foreground/background contrast: portraits, product shots, pets, food, plants. The model is U²-Net-style salient-object segmentation, so it picks the most visually prominent subject and removes everything else.
What does it struggle with?
Complex multi-subject scenes (the model picks one foreground), thin hair detail, motion blur, transparent / glassy surfaces, and busy backgrounds where foreground and background share colors. For those, expect to clean up edges in an image editor afterward.
Why is the output PNG so much bigger than the input JPEG?
PNG is lossless and must encode the alpha channel (transparency). A 200 KB JPG portrait often becomes a 2-3 MB PNG. WebP output is supported as an alternative — it keeps alpha but is roughly half the size of PNG at visually similar quality.
Does this support batch processing?
Not yet. Each call holds the model in memory; running multiple in parallel would spike RAM use on low-end devices. Drop one image at a time; the in-memory model warm-up only happens once per page load so subsequent images are fast.
Will it work on mobile?
Modern iOS / Android browsers support WebAssembly + SIMD, so yes — but performance depends on the device. Iphone 12 / Pixel 6 and newer handle Balanced model in under 10 s. Older mid-range phones may run out of memory on the Best model; pick Fast there.
Keep exploring
More tools you'll like
Hand-picked utilities that pair well with the one you're on — all
free, client-side, and zero-signup.