Image Compressor
Convert and compress an image without uploading it anywhere. The encoding runs on your machine, the before and after sit side by side, and formats your browser cannot actually encode are disabled rather than silently handing back a PNG.
Drop an image
Encoded by your own browser. The file never leaves this machine.
Frequently asked
Is my image uploaded?
No, and this is the whole reason the tool exists in this form. The file is decoded, drawn to a canvas and re-encoded by your browser. Nothing is sent to a server, so you can run a client's photo or an unreleased screenshot through it without thinking about it.
Why are some formats greyed out?
Because canvas.toBlob does not fail when it cannot encode a format — it quietly returns a PNG instead. That would mean telling you the file is AVIF while handing you something else. The tool encodes a one-pixel test image at startup, checks the type that comes back, and disables anything that lied.
WebP or AVIF?
AVIF is usually 20–30% smaller than WebP at the same visual quality, especially on photographs. WebP encodes faster and is supported everywhere, including older Safari. If you serve both with a picture element, put AVIF first and let WebP catch the rest.
The compressed file is bigger. How?
Usually because the original was already compressed harder than the settings you picked, or because the image is flat graphics rather than a photograph — PNG beats lossy formats on large areas of identical colour. The size difference is shown either way, including when it goes up, because a tool that only reports wins is not measuring.
Why limit the longest edge?
Because most of the weight in a photograph is pixels that never reach a screen. A 4000-pixel image displayed in a 600-pixel column costs you the whole difference for nothing. Resizing before encoding is almost always a bigger win than dropping quality.