Convert an image between JPG, PNG, and WebP
Only changes the file format — no cropping, resizing, or any adjustment beyond output quality.
Drag one or more images here, or click to choose
JPG, PNG, WebP, GIF, BMP, or AVIF, up to 25 MB each
Result
The result appears here after converting the image.
Local processing: your file never leaves your computer.
- Does:Only changes the file format — no cropping, resizing, or any adjustment beyond output quality.
- Processes:Your image is processed entirely in your browser — nothing is uploaded to a server.
- Doesn't do:The quality and background color you choose apply to every image in the batch the same way — there's no per-image adjustment.
Why an image file just won't open somewhere
An image can be technically fine and still not work wherever you need it. A website that only accepts JPG rejects a PNG without explaining why. An upload system chokes on a WebP because it was built before that format existed. A phone camera or app saves a photo in a format your desktop editor won't open. None of these are about image quality — it's purely a file-format mismatch, and fixing it by hand, one image at a time, is repetitive work that requires zero creative judgment.
This tool does exactly that swap: you pick an output format — JPG, PNG, or WebP — and it converts the image without opening any editor. That covers cases like standardizing a batch of images that arrived in mixed formats before using them somewhere else, or simply prepping a single image for a form that requires a specific file extension.
How the conversion actually works
The process uses the browser's Canvas API: the source image is drawn onto a canvas at the chosen output size, then encoded in the target format. For JPG and WebP there's a quality control from 1 to 100 (default 85) — higher values keep more detail and produce a larger file, lower values compress more and weigh less. PNG is lossless compression, so that control is disabled in that mode: there's no such thing as "PNG at quality 60," only the option to reduce the image's dimensions, through the optional maximum dimension field.
As with any canvas.toBlob() call, the browser can silently hand back a
different format than requested when it doesn't know how to encode the one
you asked for. The tool checks for that after every attempt and shows a
warning on screen instead of delivering the file as if it were the right
format — reading the original image worked fine, the only issue is
generating that specific format in this particular browser.
Converting several images at once
Uploading one image at a time makes sense sometimes, but the more common case is needing to convert several — a batch of photos that arrived in a format a website won't accept, or a file too heavy to attach in several different places. Drag them all in at once, or use the picker with multiple selection: they queue up together, and the output format, quality, and maximum dimension you choose apply to all of them equally. Processing happens one image at a time, with a progress bar and a cancel button; if one specific image fails, only that one gets flagged as an error, and the rest continue normally. At the end, each converted image can be downloaded individually, or all of them together as a single ZIP file.
Transparency: what happens when converting to JPG
JPG has no transparency channel. If the source image — a PNG or WebP with transparent areas — gets converted to JPG with no handling at all, those areas default to black on the canvas, which is almost never the result you want. That's why, before processing, the tool detects whether any image in the queue has transparency and, if the target is JPG, shows a warning with the option to pick the color that will fill those areas — white by default, but any color can be chosen. The fill happens on the canvas before the image is drawn on top, so the rest of the image stays unchanged.
GIF and other formats accepted only as input
Besides JPG, PNG, and WebP, the tool also accepts GIF, BMP, and AVIF as input — the browser can open those formats even without knowing how to encode them back. For a GIF, that means only the first frame is read: the tool doesn't animate anything, and this notice appears as soon as the file joins the queue, before any processing, not after. AVIF isn't available as an output format: today only Chrome can encode AVIF directly in the browser, and a decoder that only partially works across browsers would cause more confusion than it's worth.
What this tool doesn't do
It doesn't animate GIFs or produce animated files in any format. It doesn't output AVIF, only accepts it as input. And it doesn't recover quality an image already lost before you uploaded it: if the original file already went through earlier lossy compression, the conversion works with whatever pixels exist now — changing format doesn't bring detail back, it only decides how those same pixels get saved going forward.
Frequently asked questions
A website or system won't accept my image's format. Does this fix it?
Yes, for the most common cases. Upload the image, pick JPG, PNG, or WebP as the target, and download the result. That covers most systems that reject a specific format — if the problem is file size rather than format, the reduce-image-size tool handles that directly.
My phone or camera saves photos in a format a program won't open. Can I convert several at once?
Yes. Drag all the photos in at once (or use the picker with multiple selection) to queue them, choose the target format once, and process the whole batch. Each image is converted with the same setting and becomes available to download individually or as a single ZIP.
What happens if I convert a GIF or a PNG with a transparent background to JPG?
JPG has no transparency channel, so before processing the tool detects transparency in the source image and lets you pick the background color that will fill those areas (white by default). For GIF, only the first frame is converted — the tool doesn't produce animated JPG, PNG, or WebP, and this is flagged before processing, not after.
Does the tool also output AVIF or BMP files?
Not as output. The tool accepts AVIF, BMP, and GIF as input — the browser can open those formats even without being able to encode them back — but the conversion target is always JPG, PNG, or WebP. That avoids relying on inconsistent browser support for encoding newer formats.
If I convert to a compressed format, can I recover quality the original image already lost?
No. The conversion works with the pixels the source image already has — if it already went through lossy compression before, converting to another format doesn't bring that detail back. The quality control (for JPG and WebP) only adjusts the compression applied in this conversion, starting from the image as it is now.
Related tools
- Remove image metadataShows you the location, date, and camera model recorded in the photo before deleting them, so you know exactly what was exposed.
- Convert images to PDFControls page order, paper size, and margins — built for pages photographed with a phone, not for PDFs that already exist.
- Convert PDF to imageEach page becomes a separate JPG, PNG, or WebP file, at whatever resolution you choose — from on-screen viewing to print quality.
- Crop imageThe crop area can stay free-form or lock to a ratio like 1:1 or 16:9, adjustable by dragging, the keyboard, or typing numbers directly.