PNG and JPG solve different problems, and that difference becomes very obvious the moment you try to hit a specific file size target. A JPG compressor has a dial to turn — quality — that trades visual fidelity for file size in a smooth, predictable way. A PNG compressor doesn’t have that dial at all, because PNG is a lossless format: it guarantees that every pixel you get back is bit-for-bit identical to the pixel you started with. That guarantee is exactly why PNG is the right format for screenshots, logos, and anything with sharp text or hard edges — but it also means shrinking a PNG to a target size like 100KB requires a genuinely different approach than shrinking a JPG does.
What “lossless” actually limits you to
Since a lossless format can’t approximate or simplify pixel data the way JPG does, the only two levers available for making a PNG smaller are:
- Smarter lossless re-encoding. PNG’s compression (built on the same family of algorithms as zip/deflate) can often be tuned more aggressively than whatever default settings produced the original file — many PNGs, especially ones exported quickly from screenshot tools or design software, are not compressed as tightly as the format actually allows. Re-running a more thorough compression pass over the exact same pixel data can shrink the file meaningfully without changing a single pixel.
- Reducing pixel dimensions. If lossless re-encoding alone can’t reach the target, the only remaining option is to have fewer pixels to encode in the first place — i.e., making the image physically smaller. This genuinely changes the image (it’ll display at a smaller size, or need to be scaled up by whatever displays it), unlike the first option.
This tool tries the first approach exhaustively before ever touching the second, since reducing dimensions is the more disruptive change. For most typical screenshots and graphics, the lossless pass alone gets surprisingly far.
Why a PNG can be much bigger than a “similar” JPG
It’s common to compare a PNG and a JPG of what looks like the same content and be surprised the PNG is many times larger. The difference comes down to what each format is actually compressing well. JPG’s lossy compression is built around smoothly varying photographic detail — it can approximate a sky’s gradient or skin tones with very few bits while still looking convincing. PNG’s lossless compression is built around exact repetition — large flat areas of identical color compress extremely well, but anything with continuous tonal variation (a photo, a gradient, a busy textured background) gives it much less to work with, since it has to represent every subtle variation exactly rather than approximating it away.
This is why a flat-color app icon or a simple diagram can be a tiny PNG, while a screenshot containing an embedded photograph or a smooth gradient background can balloon to several megabytes even at modest pixel dimensions — and why, if your “PNG” is actually a photo someone saved in the wrong format, converting it to JPG first is almost always the better path to a small file size than trying to compress the PNG itself.
When you should actually use the PNG-to-JPG converter instead
If transparency and pixel-perfect sharp edges don’t matter for your specific image — most photographs don’t need either — converting to JPG before compressing will almost always get you a smaller file at a given quality level than staying in PNG ever can, simply because JPG’s lossy compression is so much more efficient at handling photographic detail. Keep this PNG-specific compressor for the cases PNG actually exists for: screenshots with text, logos and icons with transparent backgrounds, and diagrams or UI mockups where sharp, exact edges matter more than absolute minimum file size.