A measured experiment

Same pixels.
Different files.

PNG, JPG and WebP produced different byte counts from the same source images. This is an encoding-size experiment, not an equal-quality codec ranking.

Measured October 29, 2026 · Chromium 143.0.7499.4

PNG539,559 BJPEG52,512 BWEBP37,583 B
Arithmetic mean of the sample bytes. JPG and WebP request quality 0.8. PNG is lossless. Matching slider numbers are not a visual-quality match.

Method you can reproduce

The test used the five credited product, person, pet, hair and glass photographs in the example library. Each committed source is an 800 × 760 pixel WebP image made from a licensed photograph. The browser decoded that same source into a canvas, then encoded it without resizing. Because the input has already been encoded as WebP, these are not measurements from untouched camera originals.

PNG used the default lossless encoder. JPG, WebP and AVIF were requested at quality settings 0.6, 0.8 and 0.95. The script checked the actual MIME type of every returned blob. A browser returning PNG after an AVIF request was recorded as unsupported, with no byte result attributed to AVIF.

The complete experiment is implemented in the repository’s benchmark script. All values below are raw bytes, not rounded kilobytes. The chart averages the selected rows by summing their byte counts and dividing by the number of source images. It does not weight an image by visual complexity or assign a quality score.

What the result does not establish

A lower byte count is not automatically a better image. Quality controls are encoder-specific, and the same slider value can produce different artifacts. The sample set is small and contains already resized site images. Results can differ with a browser version, source content, dimensions, transparency and encoder implementation.

AVIF output was unavailable in this Chromium test. That does not mean the browser cannot display AVIF. Input decoding and canvas encoding are separate capabilities. The production converter checks its current environment and labels unsupported outputs instead of silently using a different format.

To make a practical choice, export your own source at the dimensions it needs, compare the result at its final display size and check the receiving platform’s accepted formats. Keep a lossless or original master when further edits are likely. Repeated lossy saves can accumulate visible damage without providing a useful reduction in file size.

Download the complete measurement data →

All encoder attempts
SampleFormatQuality requestActual bytes
productPNGDefault314,434
productJPEG0.619,563
productJPEG0.828,421
productJPEG0.9561,054
productWEBP0.68,836
productWEBP0.812,830
productWEBP0.9525,848
productAVIF0.6Unsupported encoder
productAVIF0.8Unsupported encoder
productAVIF0.95Unsupported encoder
personPNGDefault699,618
personJPEG0.637,460
personJPEG0.858,452
personJPEG0.95126,122
personWEBP0.622,864
personWEBP0.838,546
personWEBP0.9576,104
personAVIF0.6Unsupported encoder
personAVIF0.8Unsupported encoder
personAVIF0.95Unsupported encoder
petPNGDefault1,115,901
petJPEG0.678,907
petJPEG0.8120,472
petJPEG0.95232,321
petWEBP0.664,460
petWEBP0.8106,340
petWEBP0.95152,726
petAVIF0.6Unsupported encoder
petAVIF0.8Unsupported encoder
petAVIF0.95Unsupported encoder
hairPNGDefault415,746
hairJPEG0.623,704
hairJPEG0.835,957
hairJPEG0.9578,792
hairWEBP0.612,614
hairWEBP0.820,620
hairWEBP0.9540,132
hairAVIF0.6Unsupported encoder
hairAVIF0.8Unsupported encoder
hairAVIF0.95Unsupported encoder
glassPNGDefault152,098
glassJPEG0.614,529
glassJPEG0.819,257
glassJPEG0.9534,629
glassWEBP0.66,878
glassWEBP0.89,578
glassWEBP0.9515,278
glassAVIF0.6Unsupported encoder
glassAVIF0.8Unsupported encoder
glassAVIF0.95Unsupported encoder

Sources & method

Last checked: . Official rules can change. Calculated presets are identified separately.

  1. Local Chromium image encoding experiment. Backdropless. Checked 2026-10-29.
  2. HTMLCanvasElement.toBlob. MDN Web Docs. Checked 2026-10-29.
  3. Image file type and format guide. MDN Web Docs. Checked 2026-10-29.