Universal

Image compressorEN

Keep the original file untouched, verify the actual output type, and report an increase when re-encoding makes a file larger.

Image file
No image selected
Static JPEG, PNG, or WebP only · max 20 MiB · max 16,384 px/side and 40 MP.
Choose an image to begin.

Re-encoding effects: Animation is rejected. Metadata and color profiles are removed. JPEG/WebP are lossy; JPEG flattens transparency to white.

The selected image never leaves this browser.

How to use it

Use this for a controlled browser re-encode of one static image. JPEG and WebP quality are adjustable; PNG has no fake quality slider.

  1. Choose a JPEG, PNG, or WebP within the displayed file and pixel limits.
  2. For JPEG or WebP, choose a quality from 1 to 100; PNG is re-encoded losslessly at the pixel level.
  3. Run the tool, compare byte sizes, preview the result, then download the new file.

Worked example

Input
2.4 MiB JPEG, quality 78
Output
A separate JPEG plus its exact byte change

The output is not promised to be smaller; already optimized inputs can grow.

Method and definitions

  • The browser decodes the oriented image to pixels and encodes it through Canvas.
  • The returned blob MIME must exactly match JPEG, PNG, or WebP; silent fallback is rejected.
  • The original File object and bytes are never modified.

Limits and edge cases

  • JPEG/WebP are lossy at adjustable quality. PNG re-encoding may still be larger.
  • Metadata and ICC profiles are removed; browser color conversion can change appearance.
  • Animation is rejected; limits are 20 MiB, 16,384 pixels per side, and 40 million pixels.

Privacy

The file stays on this device. No upload, account, remote image request, or analytics payload contains the image.