How to use it
- Drop the images. Mixed formats in one batch are fine.
- Choose the target format. For JPEG or WebP set the quality; for JPEG/BMP pick the background colour; for SVG set the output width.
- Press Convert, then download the file or the ZIP. The table shows the size change per file.
Example
A 1,200 × 800 px screenshot saved as PNG (1.4 MB) converted to WebP at quality 85 comes out around 90–120 KB with no visible loss; as JPEG at the same quality about 150 KB. A 120 × 80 unit logo.svg converted to PNG at 1,024 px becomes a 1,024 × 683 px bitmap with transparency preserved.
How the conversion works
Each file is decoded with createImageBitmap (EXIF orientation applied via imageOrientation: 'from-image'), drawn onto a canvas and re-encoded with canvas.toBlob(type, quality). Browsers that do not support a requested type silently return PNG instead, so the tool checks the returned MIME type and hides AVIF (and WebP on very old browsers) after a feature test on a 2 × 2 canvas. BMP has no browser encoder at all; the tool writes the 24-bit BITMAPINFOHEADER format itself (bottom-up rows, BGR, 4-byte row padding).
SVG is handled through an <img> element: the root element gets explicit width/heightattributes (keeping the viewBox) so the browser rasterises it at the requested resolution rather than its default 300 × 150 px. GIF decoding yields the first frame only. Re-encoding drops EXIF, XMP and colour-profile metadata, and colours are converted to sRGB.
Sources: MDN – HTMLCanvasElement.toBlob() (supported types), Microsoft – BITMAPINFOHEADER structure, SVG 2 – intrinsic sizing of the outermost svg element.
Which format should I choose?
- WebP– smallest files for web use, keeps transparency, supported by every current browser.
- JPEG– photos for email, documents and older software; no transparency.
- PNG– lossless; screenshots, logos and anything with sharp edges or transparency.
- BMP– uncompressed; only when a legacy program demands it (files are width × height × 3 bytes).
Questions
- Why is AVIF missing from the list?
- Canvas encoding to AVIF is not available in most browsers yet, and a browser that lacks it would silently hand back a PNG. The option appears automatically once your browser passes the feature test.
- Can I convert HEIC photos from an iPhone?
- Not with this tool: browsers other than Safari cannot decode HEIC on a canvas. Use the HEIC to JPG converter, which ships its own decoder, and then convert further if needed.
- Does converting keep the photo metadata?
- No. The canvas pipeline writes fresh pixels without EXIF, GPS or colour profiles. If you need to keep metadata, convert with a desktop tool such as ImageMagick or ExifTool.