Images
Image Format Converter — PNG, JPEG & WebP
Convert one or many images between PNG, JPEG, WebP, BMP and ICO — including SVG rasterization — right in your browser.
Runs entirely in your browser — nothing you paste is uploaded or stored.
What is image format converter?
This tool converts one or many images at once from whatever format they're already in into PNG, JPEG, WebP, BMP, or ICO, using the browser's own Canvas API to decode and re-encode each one — the same code path a browser already uses to display an image on screen. PNG, JPEG, and WebP are produced by the canvas's own encoder; BMP and ICO have no browser-native encoder at all, so this tool writes their file formats by hand from the canvas's raw pixel data — an uncompressed 32-bit BMP with a standard bitmap header, and an ICO container wrapping a losslessly-encoded PNG, the same approach every modern favicon generator uses. Input isn't limited to the five output formats: anything the browser can decode works, including rasterizing an SVG into a real pixel-based image and grabbing a still frame from an animated GIF. Drop in up to 30 images at once and every one converts to the same target format; a quality slider appears for the two lossy targets (JPEG, WebP), while PNG output gets its own optional Lossless/Lossy compression mode instead — every PNG is always run through a real optimizer (Oxipng, via WebAssembly) for a smaller file with no pixel changes, and switching to Lossy mode adds color-palette quantization on top for much bigger savings at a real quality trade-off. ICO output is automatically capped and downscaled to fit its 256×256px practical limit, and a clear warning appears whenever converting to JPEG would flatten real transparency onto a solid background, since JPEG has no alpha channel at all. Finished images download individually or all at once as a zip.
When to use it
- Turning a batch of PNG screenshots or logos into JPEGs when a form, upload target, or CMS only accepts that one format.
- Rasterizing an SVG icon into a PNG at its natural size for a context that can't render vector graphics.
- Converting a set of photos to WebP for smaller files that still keep full transparency support, unlike JPEG.
- Building a favicon.ico from a square PNG or logo without installing a dedicated icon-generation tool.
- Producing an uncompressed BMP when a legacy tool, embedded device, or old Windows utility specifically requires one.
- Grabbing a single still frame out of an animated GIF as a real PNG or JPEG file.
How to use this tool
- Drop in one or many images (up to 30 at once), or choose them from your device — almost any format the browser can display works as input.
- Pick a target format from PNG, JPEG, WebP, BMP, or ICO — every image in the batch converts to it.
- For JPEG or WebP, drag the quality slider and watch each image's converted size update live.
- For PNG, every image is optimized automatically; optionally switch to Lossy mode and drag the same slider to trade fidelity for a much smaller file.
- Select any image's row to see its full size comparison and, for JPEG, its transparency warning if it had any.
- Download one image at a time, or grab the whole finished batch as a single zip.
Example
A generated sample image with transparency, converted to JPEG.
Input
A 480×480 PNG circle with a transparent background.Output
The same image re-encoded as JPEG, with a visible warning that the transparent background was flattened onto a solid fill.Press "Load example" to generate a real sample image and see the actual conversion and transparency warning for yourself.
Choosing a target format
PNG stays fully lossless by default and keeps transparency, making it the safe default for screenshots, logos, and anything with sharp edges or text — and its output is still optimized for size, just without ever changing a pixel; an optional Lossy mode trades some fidelity for a much smaller file when that matters more. JPEG produces the smallest files for photos but has no transparency support at all. WebP is usually the best of both worlds on a modern site — smaller than JPEG at equivalent quality, and it still supports transparency — but it isn’t universally supported by every legacy tool. BMP is intentionally uncompressed, useful mainly when a specific legacy application or embedded tool demands one. ICO exists purely for favicons and application icons, and is capped accordingly.
What powers this conversion
PNG, JPEG, and WebP output all go through the browser’s own Canvas API, the same decoder
and encoder a browser already uses to display an image. BMP and ICO have no such
browser-native encoder, so this tool writes both file formats itself: an uncompressed
32-bit bitmap for BMP, and a minimal ICO container wrapping a PNG-compressed image for ICO
— both plain JavaScript, running entirely in your browser with no external library. Every
PNG conversion additionally runs through @jsquash/oxipng
(Apache-2.0 licensed), a WebAssembly build of the Oxipng optimizer, for real savings on top
of the canvas encoder’s own baseline output. PNG’s optional Lossy mode instead uses
image-q (MIT licensed), a pure
JavaScript color-quantization library implementing the same family of technique as the
classic pngquant tool, before encoding — for much larger savings at a real quality cost.
Frequently asked questions
Does this upload my image anywhere?
No. Decoding and re-encoding both happen in your browser using the Canvas API, and the BMP/ICO encoders are plain JavaScript that also run locally — nothing you choose is ever sent to a server, which is true of every tool on this site.
Why can this tool produce BMP and ICO when Image Compressor can't?
No browser's canvas encoder supports BMP or ICO output at all — it only ever produces PNG, JPEG, or WebP. This tool gets around that by writing those two file formats by hand from the canvas's raw pixel data instead of relying on the browser to do it, which Image Compressor (focused purely on shrinking file size, not format breadth) doesn't need to do.
Why does ICO output cap the image at 256×256px?
That's the practical ceiling of the ICO format itself — its directory entry can only address a width or height up to 256 pixels. A larger source image is automatically downscaled to fit within that, preserving its proportions, rather than producing a technically invalid file.
Can I convert an SVG with this tool?
Yes — drop in an SVG and it rasterizes into a real pixel image at whichever target format you pick, the same way a browser renders it for display. If you need to *edit or shrink* SVG markup rather than rasterize it, use the SVG Optimizer instead; this tool is one-way, vector to raster only.
What happens if I convert an animated GIF?
Only its first frame converts — canvas-based re-encoding has no concept of animation, so every frame after the first is discarded. A warning appears the moment you choose a GIF so this is never a silent surprise.
Why did my image lose its transparent background?
JPEG has no alpha channel at all, so converting any image with real transparency (a PNG, WebP, or BMP with a genuinely transparent area) to JPEG fills that area with a solid background. This tool checks for that and shows a clear warning whenever it happens — PNG, WebP, and BMP output all keep transparency intact.
Can I make the PNG output smaller?
Yes. Every PNG conversion is automatically run through Oxipng (a dedicated PNG optimizer compiled to WebAssembly, running entirely in your browser) for a genuinely better compression pass than the canvas encoder's own baseline output — no pixel is ever changed. For much bigger savings, switch PNG's compression mode to Lossy, which reduces the image to a smaller color palette before encoding — often 50-70% smaller, at the cost of a real, visible quality trade-off. If a smaller file matters more than staying lossless, JPEG or WebP at a lower quality will usually shrink further still, and WebP keeps transparency support PNG has.
What's the largest image this will handle?
Files up to 25 MB each. Decoding and re-encoding both happen synchronously in your browser tab, so a much larger file risks becoming unresponsive rather than failing gracefully — resize a very large image with a desktop tool first if you hit this limit.
Can I convert a batch of images at once?
Yes — drop or choose as many images as you like (up to 30 in one batch) and every image converts to the same target format and quality setting. Each finishes independently with its own size comparison, and you can download one at a time or grab the whole finished batch as a single .zip file.
Find these tools useful? A coffee helps keep them free and ad-light.
Buy me a coffee