Lossless Image Optimizer

Optimizes static PNG and JPEG files without changing decoded pixels. PNG data may be recompressed; safe comments and text metadata are removed. If no smaller safe copy is possible, the original bytes are returned unchanged.
Restoring selected files...

files selected

Reduce safe overhead in static PNG and JPEG files without re-rendering the image. PNG pixel data can be recompressed with DEFLATE, while JPEG scan data is kept byte for byte. If the tool cannot make a smaller safe copy, it returns the original bytes unchanged.

How to optimize an image without quality loss

  1. 1

    Choose files

    Add up to 10 static PNG or JPEG files, each no larger than 20 MiB or 24 megapixels.

  2. 2

    Check the format

    The browser validates the file signature and structure instead of trusting the extension. Animated PNG is rejected.

  3. 3

    Optimize safely

    PNG data is recompressed only after a verified round trip. JPEG image scans are never decoded or re-encoded.

  4. 4

    Download copies

    Compare the exact sizes and download each optimized copy or request all downloads. Your source files remain untouched.

What this optimizer changes

For PNG, the tool may recompress the existing filtered scanlines with the browser’s DEFLATE implementation. It verifies that the decompressed data is identical before using the smaller stream. It can also combine consecutive IDAT chunks and remove text, compressed-text, international-text and modification-time chunks. Image dimensions, palette, transparency and colour-management chunks are preserved.

For JPEG, the compressed image scan is copied exactly. The tool removes optional COM comment segments and bytes after the end-of-image marker. It preserves EXIF, orientation, ICC colour data and the encoded DCT coefficients. This avoids the generation loss caused by opening a JPEG in a canvas and saving it again.

Exact limits

  • Static PNG and JPEG only; WebP, GIF, AVIF and animated PNG are not accepted.
  • Up to 10 files per batch.
  • Up to 20 MiB and 24 megapixels per file.
  • A file that cannot be reduced safely is returned unchanged, so a 0% result is normal.
  • Downloads keep the original format and add -optimized to the filename.

Privacy and funnel storage

All parsing, compression and downloads happen in your browser. The files are not sent to our servers, placed in the URL or uploaded to a server. In the optional multi-step funnel, source files are kept in this browser’s IndexedDB for up to 30 minutes so they can survive page navigation. Starting over or expiry removes that temporary draft.

When to use lossy compression instead

Lossless optimization usually saves less than resizing or lossy compression because it must preserve every decoded pixel. Use it for interface assets, archival handoffs and images that must not gain new JPEG artifacts. If a much smaller web image matters more than exact pixels, use an image compressor or resize the image first.

Frequently Asked Questions

No. PNG recompression is accepted only after the filtered pixel stream round-trips identically, and JPEG scan data is copied without re-encoding.

The original may already be compact or contain no safely removable comments or text metadata. In that case the tool returns the original bytes rather than making a larger file.

No. JPEG EXIF, orientation and colour profiles are preserved because removing them can change how an image displays or discard useful information. Use a dedicated metadata remover when that is your goal.

No. Processing stays in the browser. Funnel drafts use local IndexedDB for up to 30 minutes and never put file contents or names in the URL.

Related Tools