Optimize a static PNG without changing pixels

Re-encode a verified static PNG with lossless settings and keep the result only when decoded RGBA pixels are exactly equivalent and the file is smaller.

When this tool is useful

Reducing ordinary static screenshots, diagrams, logos, or interface assets without accepting a visible pixel change.

How local processing works

The browser confirms a valid non-animated PNG, decodes the source, applies bounded lossless filtering and compression, decodes the candidate again, compares dimensions and every RGBA byte, and downloads the candidate only if it passes equality and saves bytes.

How to use it

  1. Prepare the source and limits: Keep an unchanged source and review the accepted format, dimensions, frame or page budget, and output choices. Reducing ordinary static screenshots, diagrams, logos, or interface assets without accepting a visible pixel change.
  2. Process locally: Run the documented bounded operation in this browser and stop when the decoder reports an unsupported structure. The browser confirms a valid non-animated PNG, decodes the source, applies bounded lossless filtering and compression, decodes the candidate again, compares dimensions and every RGBA byte, and downloads the candidate only if it passes equality and saves bytes.
  3. Download and verify: Confirm the equality report and byte comparison, inspect transparency and hard edges at 100%, run a second PNG inspector if metadata matters, and keep the original whenever ancillary chunks are required by the downstream workflow.

Important limitations

Only static PNG is supported; APNG is rejected so animation is never silently discarded. Pixel equivalence concerns decoded RGBA, not identical chunks or bytes: ancillary metadata, ICC intent, textual data, timestamps and uncommon chunks may be removed or normalized, and already optimized files may not shrink.

Verify the downloaded result

Confirm the equality report and byte comparison, inspect transparency and hard edges at 100%, run a second PNG inspector if metadata matters, and keep the original whenever ancillary chunks are required by the downstream workflow.

Private by design

Your files stay in this browser. The tool does not upload the source or output to our servers.

Questions and answers

When is this workflow useful?

Reducing ordinary static screenshots, diagrams, logos, or interface assets without accepting a visible pixel change.

What does local processing do?

The browser confirms a valid non-animated PNG, decodes the source, applies bounded lossless filtering and compression, decodes the candidate again, compares dimensions and every RGBA byte, and downloads the candidate only if it passes equality and saves bytes.

Which format limits matter?

Only static PNG is supported; APNG is rejected so animation is never silently discarded. Pixel equivalence concerns decoded RGBA, not identical chunks or bytes: ancillary metadata, ICC intent, textual data, timestamps and uncommon chunks may be removed or normalized, and already optimized files may not shrink.

How should I verify the download?

Confirm the equality report and byte comparison, inspect transparency and hard edges at 100%, run a second PNG inspector if metadata matters, and keep the original whenever ancillary chunks are required by the downstream workflow.

Related tools