How to use it
- Add images by dropping them on the panel or clicking it to browse. You can add several at once and add more afterwards. Remove any you do not want from the list.
- Choose an output format and, for JPG or WebP, a quality value.
- Optionally choose a new width or height. The other dimension is calculated from the original proportions, so nothing is stretched. Choose Set width and height only if you deliberately want exact dimensions and accept distortion.
- Click Convert. Images are processed one after another. Each finished file gets its own download link, with its original and new dimensions and file sizes.
- If two or more images converted successfully, Download all as ZIP packages them into one archive. Files that failed are listed with the reason, and do not affect the others.
The same settings apply to every image in the batch. To use different settings for different images, convert them in separate runs.
Choosing settings
A short version of the decisions; each links to a longer guide.
- Photographs: JPG or WebP at around 0.8, then check the result at full size. WebP output is often smaller than JPG at a similar visual quality, but not always — compare the two sizes the tool reports for your own image. See measured examples.
- Screenshots, diagrams, text: PNG keeps edges exact. JPG produces visible halos around lettering at moderate quality settings. Why content decides the format.
- Transparency: PNG and WebP keep it. JPG cannot store it, so transparent areas are filled with white.
- For a website: set the width to the largest size the image is actually displayed at. Reducing dimensions usually saves more than any format or quality change. Working out screen size.
- For print: do not reduce dimensions below what the print size needs. Pixels needed for common print sizes.
About the quality slider. It is passed to your browser's JPG or WebP encoder and has no effect on PNG. PNG output is always lossless; this tool does not reduce colours or otherwise optimise PNG files, so there is no PNG "quality" to trade. Browsers use different encoders, so the same number can give different file sizes in different browsers.
Reading the results
Each result shows original dimensions · original size → new dimensions · new size and the percentage change. The numbers are measured from the actual files, not estimated.
A smaller file is not guaranteed. Output can be larger than the input — typically when converting a JPG to PNG (the lossless format stores the JPG's compression artefacts exactly), when re-encoding an already heavily compressed JPG at a higher quality, or when converting a small, well-optimised PNG. The tool reports the result honestly rather than hiding it; if the new file is larger, keep the original.
If you asked for a size larger than the original and upscaling is off, the image keeps its original dimensions and the result says so.
Privacy and local processing
The images you add are read from your device into this browser tab, decoded, drawn to an off-screen canvas, and re-encoded there. The tool has no upload code: there is no server step, and the download links point to temporary objects in the tab's memory that disappear when you clear the results, close, or reload the page.
The page loads its own fonts from Google Fonts and its stylesheet from this site when it opens. Those requests do not include your images. You can check this yourself in your browser's developer tools, as described in how to verify a client-side claim.
Because the output is rebuilt from decoded pixels, EXIF metadata such as camera model and GPS location is not written to the converted files. Treat that as a side effect of re-encoding rather than a dedicated metadata-removal feature, and check the result with a dedicated tool if it matters.
Supported formats
Input: anything your browser can decode as an image. PNG, JPG, WebP, GIF, and BMP work in current mainstream browsers. AVIF and HEIC depend on your browser and operating system. If a file cannot be decoded, that file is marked as failed with a message, and the rest of the batch continues.
Output: PNG, JPG, or WebP. PNG and JPG encoding is available in all current browsers. WebP encoding is not available everywhere — some browsers display WebP images but cannot create them.
The HTML standard says that when a browser cannot encode the requested type, it produces PNG data instead. This tool checks the type of every encoded file. If it does not match what you asked for, that file is reported as failed with an explanation, rather than being saved as PNG data with a misleading .webp or .jpg extension. File extensions are always taken from the type the browser actually produced.
Batches and device limits
There is no limit set by us on the number or size of images, but your device sets real limits, and they are lower than most people expect.
- Memory per image. A decoded image needs about four bytes per pixel, whatever its file size on disk. A 6,000 × 4,000 photo is 24 million pixels, or roughly 96 MB decoded, before the canvas and the encoded output are counted.
- One image at a time. To keep peak memory down, the batch is processed sequentially. Each image's decoded bitmap and canvas are released before the next image starts.
- Finished files stay in memory. The converted files are kept in the tab so you can download them. For a very large batch, download the results and click Clear all before starting another batch.
- Canvas size limits. Browsers cap how large a canvas can be, and mobile browsers use much lower caps than desktops. An image beyond the cap fails with a message. Reducing the dimensions usually fixes it.
- ZIP creation reads every finished file once more to build the archive, so it needs additional memory about equal to the total size of the results. The archive is stored without further compression, because JPG, PNG, and WebP data is already compressed.
On a phone, batches of camera-resolution photos are the most likely to fail, because the browser may close the tab when it uses too much memory. Smaller batches, fewer open tabs, or a desktop computer help.
Other limitations
- No cropping, rotation, or editing. Resizing is the only change to the picture itself. Phone photos are drawn the right way up when the browser applies their orientation tag, which current browsers do.
- Metadata is not preserved — including copyright and caption fields you may want to keep.
- Colour profiles may not survive. Wide-gamut images can shift slightly. Everyday sRGB images are unaffected in practice; check colour-critical work.
- Animated GIF and WebP files become a single still frame.
- Resampling is done by the browser. Downscaling uses the browser's high-quality smoothing setting, and results can differ slightly between browsers.
- Lossy re-encoding compounds. Convert from the best original you have, not from a file that has already been compressed several times. Generation loss explained.
Troubleshooting
- "Could not read this image"
- Your browser could not decode the file: a format it does not support (HEIC is the common one), a damaged or partly downloaded file, or a file renamed without being converted. Open it in a photo application and export it as JPG or PNG first.
- "Your browser cannot create WebP files"
- The browser returned a different format than requested. Choose JPG or PNG, or use a browser that can encode WebP. No file with a misleading extension is produced.
- "Too large for this browser to encode"
- The browser could not create or encode a canvas at that size. Set a smaller width or height and convert again.
- The tab freezes or reloads during a batch
- Almost always memory. Convert fewer images at a time, set a smaller output size, close other tabs, or use a device with more memory.
- The converted file is bigger than the original
- See reading the results. Keep whichever file is smaller if it is good enough for your purpose.
- The transparent background turned white
- You converted to JPG, which cannot store transparency. Choose PNG or WebP.
- A size input is outlined in red
- Enter a whole number of pixels between 1 and 20,000. The error message under the resize settings says which value needs fixing.
Frequently asked questions
- Can I convert several images at once?
- Yes. Add as many as you like; they are converted one after another with the same settings, and you can download them individually or as a single ZIP file.
- Can I resize without distorting the image?
- Yes. Set width and Set height keep the original aspect ratio. Only the width and height option can change proportions, and it is labelled as such.
- Will it make small images bigger?
- Not unless you tick Allow upscaling. Enlarging cannot add detail that was not captured, so it is off by default.
- Is WebP always the smallest?
- No. It is often smaller than JPG for photographs at similar quality, but results depend on the image and the browser's encoder. The measured examples include cases where the difference is small, and the tool shows you the actual size of every file.
- Does it work offline?
- Once the page has loaded, conversion keeps working without a connection, which shows the processing can happen locally. Offline operation on its own does not prove what a page does while it is online; the network check in this guide is the direct way to confirm that no file data is sent.
- Is it free, and do I need an account?
- It is free, and there is no account or sign-up.
Sources
- WHATWG HTML Standard, canvas
toBlob()and the PNG fallback for unsupported types. - MDN Web Docs, HTMLCanvasElement.toBlob() and maximum canvas size.
- Google for Developers, An image format for the Web (WebP).
- MDN Web Docs, Image file type and format guide.