Transparency first
JNRT Pixel is this website's tool — so this comparison isn't a neutral third-party test, and we don't pretend otherwise. Instead we disclose the criteria, name the points where the competition is ahead, and you can verify every result yourself in five minutes: all three tools are free and usable without sign-up.
The three candidates in one sentence
- TinyPNG (Tinify B.V.): the classic since 2012 — upload images, compress server-side, download. Famous for its PNG color quantization.
- Squoosh (originally Google Chrome Labs): the codec lab — runs entirely in the browser, offers MozJPEG, WebP, AVIF, and OxiPNG with a before/after slider and all the detail controls.
- JNRT Pixel (this project): browser-local single-purpose tools for JPG, PNG, and WebP — with batch processing and no upload.
Test setup
Three typical everyday images, each compressed with the respective tool's default settings (deliberately: that's how the majority uses it): a smartphone photo (JPG, 4.2 MB, 4032 × 3024), a UI screenshot with text (PNG, 1.8 MB), and a logo graphic with transparency (PNG, 240 KB). We rated file size, visible quality at 100% view, and how the data is handled.
Results: file sizes
| Test image | TinyPNG | Squoosh (defaults) | JNRT Pixel |
|---|---|---|---|
| Photo (JPG, 4.2 MB) | 1.1 MB | 0.9 MB (MozJPEG q75) | 1.0 MB (q80) |
| Screenshot (PNG, 1.8 MB) | 0.5 MB | 0.6 MB (OxiPNG) | 0.6 MB |
| Logo (PNG, 240 KB) | 68 KB | 95 KB | 82 KB |
The honest reading: for PNGs with few colors, TinyPNG is still the benchmark — color quantization has been the core of the service for over a decade and squeezes out the last percentages on logos and graphics. On photos all three are close together; Squoosh wins narrowly if you know and use the controls. The 10–20% differences are rarely decisive in everyday use — the choice comes down to the other criteria.
The more important criterion: where do your images end up?
| Criterion | TinyPNG | Squoosh | JNRT Pixel |
|---|---|---|---|
| Processing | on Tinify servers | in the browser | in the browser |
| Image upload | yes | no | no |
| Limit (free) | 20 images / 5 MB per image | none | none |
| Batch processing | yes | no (image by image) | yes |
| Interface | English | English | German/English |
| Settings depth | none (automatic) | very high | medium (quality slider) |
For holiday photos, TinyPNG's server upload is uncritical. For application documents, ID copies, customer data, or unpublished product images it's a real difference: what never leaves the computer can't be read, stored, or leaked along the way. That's the reason JNRT Pixel works exclusively browser-local — and the same point also speaks for Squoosh there.
Which tool for what? The short recommendation
- TinyPNG, when you want to squeeze uncritical logos/graphics to the last kilobyte and the upload doesn't matter — or use the API for build pipelines.
- Squoosh, when you want to compare codecs, test AVIF, or find the optimum for a single important image with the controls — the tool for the curious and perfectionists.
- JNRT Pixel, when you want to shrink many images in one go without upload and without a learning curve — and then immediately convert, resize, or crop without switching pages.
And the most honest recommendation of all: test it yourself. Take your typical image, run it through all three, and compare size and quality at 100% view. The whole test takes less time than reading this article. Fundamentals on how much compression an image tolerates are in the big compression guide.
Sources
TinyPNG — official website · Squoosh — official website · Squoosh — source code on GitHub.