Fitabyte Lab

Controlled file-size tests, with the numbers shown.

We build repeatable synthetic test images so readers can see how content complexity changes file size. These measurements are reference points—not promises about your own files.

Last updated: 31 August 2026

What this test is designed to show

Two images can have identical pixel dimensions and radically different storage requirements. Flat graphics repeat the same colors and edges; screenshot-style interfaces repeat structured shapes; photo-like scenes contain gradients, noise, and irregular detail. The encoder has a much harder job with the last category.

For this first Fitabyte Lab reference set, we generated three synthetic 1600 × 1200 RGB images with no personal data using Python 3.13.5 and Pillow 12.3.0. We encoded each source as optimized PNG and at JPEG/WebP quality settings 85, 70, and 50, then recorded the resulting byte counts. The generation is deterministic so the same source can be recreated for future tests. These measurements describe that reference encoder—not Fitabyte’s browser encoder byte-for-byte.

Reference scenes

Flat graphic synthetic reference image used in Fitabyte Lab

Flat graphic

Large flat colors, simple cards, thin lines, and sparse text-like shapes.

1600 × 1200 source
Screenshot-style UI synthetic reference image used in Fitabyte Lab

Screenshot-style UI

White panels, interface rows, icons, lines, and repeated high-contrast edges.

1600 × 1200 source
Photo-like scene synthetic reference image used in Fitabyte Lab

Photo-like scene

Gradients, deterministic noise, foliage-like texture, and irregular natural-style detail.

1600 × 1200 source

Measured file sizes

The table reports the actual encoded file size for this controlled test set. Quality numbers are encoder settings, not percentages of the original image quality.

SceneFormatQualityFile size
Flat graphicPNGLossless12.3 KB
Flat graphicJPEG8550.3 KB
Flat graphicJPEG7041.5 KB
Flat graphicJPEG5035.3 KB
Flat graphicWebP8512.7 KB
Flat graphicWebP7010.3 KB
Flat graphicWebP509.8 KB
Screenshot-style UIPNGLossless11.4 KB
Screenshot-style UIJPEG8560.3 KB
Screenshot-style UIJPEG7050.0 KB
Screenshot-style UIJPEG5042.3 KB
Screenshot-style UIWebP8512.0 KB
Screenshot-style UIWebP7010.2 KB
Screenshot-style UIWebP509.5 KB
Photo-like scenePNGLossless2.17 MB
Photo-like sceneJPEG85408.6 KB
Photo-like sceneJPEG70267.4 KB
Photo-like sceneJPEG50169.3 KB
Photo-like sceneWebP85353.4 KB
Photo-like sceneWebP70240.5 KB
Photo-like sceneWebP50196.7 KB

What the numbers mean

PNG can dominate on simple graphics

The flat and screenshot-style references compress extremely well losslessly because large areas and repeated edges are predictable.

Photo-like detail is expensive

The photo-like reference was about 2.17 MB as optimized PNG, but hundreds of kilobytes as lossy JPEG or WebP. Texture changes the problem completely.

One quality number cannot predict KB

JPEG quality 70 produced very different file sizes across the three scenes, despite identical dimensions.

Format choice depends on content

PNG is not automatically larger and WebP is not automatically smaller in every case. Content and encoder settings decide the outcome.

Limitations and reproducibility

These are synthetic reference images, not a representative sample of every photograph or screenshot. The reference data was produced with Pillow rather than the browser encoder used by Fitabyte Compress. Different encoders can map quality values differently. Browser engines, operating systems, color profiles, metadata, transparency, and source content can all change the result. That is why Fitabyte treats the measurements as explanatory evidence rather than a universal benchmark.

Read How Fitabyte Tests Its Tools for our testing principles, or compare the formats in WebP vs JPG vs PNG. If you have a real size limit, use Fitabyte Compress and inspect the resulting file rather than assuming a preset will fit.

Ready to use Fitabyte?

Choose a simple file tool.

Explore all tools