Tools Guides
Media Free No signup

Bulk Image Format Converter

Convert multiple images between PNG, JPEG, and WebP formats in bulk with quality control, optional resizing, and ZIP download — all in your browser.

Loading tool…

About this tool

Convert batches of images between formats without installing any software or uploading files to a server. All processing happens locally in the browser using the Canvas API. Drop multiple images onto the upload area — PNG, JPG, WebP, GIF, or BMP — and they appear in the conversion queue showing the original filename, dimensions, and file size. Select the target format from PNG, JPEG, or WebP. For JPEG and WebP, a quality slider (1–100) lets you balance file size against visual fidelity; a value of 85 is typically indistinguishable from 100 at a significantly smaller size. The optional resize step constrains the output to a maximum width or height while preserving the original aspect ratio — handy for preparing web-ready thumbnails. Each result row shows the original format, the new format, the before and after file sizes, and a percentage reduction. Download individual converted files with a single click. The Download All as ZIP button uses JSZip to bundle all outputs into one archive without any server round-trip. Process hundreds of images in one go — the tool queues them sequentially using promises to avoid blocking the browser UI.

How to use

  1. 1 Drag and drop image files onto the upload area, or click 'Choose Files' to select multiple images.
  2. 2 Select the target format: PNG, JPEG, or WebP.
  3. 3 For JPEG or WebP, adjust the quality slider (1–100); 85 is a good default.
  4. 4 Optionally enable resizing and enter a maximum width or height in pixels.
  5. 5 Click 'Convert All' to process the queue — a progress bar shows completion status.
  6. 6 Click the download icon next to an individual image, or click 'Download All as ZIP' to save everything at once.

Frequently Asked Questions

{# Alpine.js — self-hosted. (The previous jsdelivr CDN tag had a stale SRI integrity hash, so the browser refused to run it and window.Alpine was never defined — silently breaking every FAQ accordion and Alpine tool.) #}