image compressor
One image, smaller.
And what that cost, in bytes and in pixels.
Drop in a PNG, JPG, WebP or SVG and squeeze it — fewer colours, or a lower quality — then look at the result beside your original at its own pixels and decide whether the trade was worth it. Nothing here is smoothed or scaled to flatter the encoder. It runs on this page, using WebAssembly; the image never leaves your device.
Drop an image here
PNG, JPG, WebP or SVG · up to 8192px on the longest side
What the squeeze cost
- PNG
- JPEG
- WebP
Nothing squeezed yet. Drop a file above and the before and after appear here.
What it cost in pixels
Drop a file above and it appears here, at full size.
Questions
Is my image uploaded anywhere?
No. The squeeze runs in your browser on a WebAssembly build of libvips. You can watch your network panel while you use the page — the file never goes out.
Why is “reduce colours” a checkbox rather than a number?
Because that is the shape the engine gives it. libvips binds a PNG palette as on or off, with no colour count to pass, so a slider here would be a control that changes nothing. It is the only PNG setting on the page for the same reason.
Will it always make the file smaller?
Not always, and the page does not promise it. Both byte counts are shown beside the two pictures so the answer is about your file rather than about the format. If the squeeze costs more than it saves, the converter writes all three formats from your source and prices each one, still without the file leaving your device.