Free Tool Desk

JPEG Quality Estimator (Quantization Tables)

Read the quantisation tables of a JPEG and estimate the encoder quality, with chroma subsampling, progressive or baseline, markers and a metadata summary. In your browser.

Free to use No sign-up required Nothing is uploaded

A JPEG does not store a "quality" number. It stores the tables of numbers the encoder used to round away detail, and those tables can be read straight out of the file. This tool reads them, compares them with the standard tables scaled the way libjpeg scales them, and tells you which quality factor fits best, and whether the match is exact, close or not a match at all.

It also reports what else sits in the file: chroma subsampling, baseline or progressive coding, dimensions, markers, and a summary of the metadata. The picture is not decoded; only the file's bytes are read, in your browser.

Loading the tool…

Overview

About JPEG Quality Estimator

How the estimate works. The JPEG standard (ITU-T T.81, Annex K) gives example quantisation tables for luminance and chrominance. The widely used libjpeg library turns a quality factor from 1 to 100 into tables by scaling those examples: below 50 the scale is 5000 divided by the quality, above it is 200 minus twice the quality, each entry is rounded and limited to 1-255. This tool recomputes the scaled tables for every quality from 1 to 100 and picks the one that differs least from the tables in your file, using the luminance table and, if present, the chrominance table.

Reading the result. An exact match means the encoder derived its tables the libjpeg way, and that quality number is a good description. A close match means small rounding differences. No match means the encoder used its own tables (common for Photoshop, camera firmware, mozjpeg or Guetzli), and the number is only the nearest standard quality, shown as an approximation. The tables themselves are displayed as 8 × 8 grids so you can compare two files.

Other details. The frame header gives dimensions, bit depth, the number of colour components and their sampling factors, which become the chroma subsampling (4:4:4, 4:2:2, 4:2:0 and so on). The compression type shows baseline, extended sequential or progressive coding. Application segments show JFIF, Exif, XMP, ICC profile and others; the metadata summary lists the camera, software, date and orientation if an Exif block exists, and whether GPS data is present without displaying coordinates.

Compatibility

Supported Formats

JPEG files (.jpg, .jpeg) up to 60 MB, baseline, extended sequential and progressive, 8-bit and 12-bit, greyscale and colour. The format is decided by the file content. Lossless JPEG files have no quantisation tables, so there is nothing to estimate for them.

Guide

How to Use JPEG Quality Estimator

  1. Choose a JPEG file.
  2. Read the estimated quality and the sentence that explains how reliable it is.
  3. Look at subsampling, coding type and the quantisation tables.
  4. Check the metadata summary and the list of segments for anything unexpected, such as data after the image end.

Highlights

Features

  • Exact, close or custom Says how well the tables fit the standard ones instead of always giving a confident number.
  • Table viewer Shows the quantisation tables as 8 × 8 grids for comparison.
  • Subsampling and coding Reports 4:4:4, 4:2:2, 4:2:0, baseline or progressive, bit depth and scans.
  • Metadata summary Camera, software, date, ICC, XMP and a GPS flag without showing coordinates.
  • Bytes only The picture is not decoded and is not uploaded.

Applications

Use Cases

  • Finding out how hard a JPEG was compressed before you re-save it
  • Matching the quality of a new image to an existing one
  • Checking whether an image was probably re-compressed at a lower setting
  • Seeing whether a photo is 4:2:0 or 4:4:4, and baseline or progressive
  • Understanding why two JPEGs of the same size differ in file size

Good to Know

Limitations

The estimate is not the quality slider of the program that saved the file. Programs map their sliders to tables in their own ways, files are often saved more than once, and some encoders optimise tables per image. A number for a file with custom tables is only a nearest standard quality. It describes how coarse the tables are, not how good the picture looks, and it says nothing about earlier compressions that the file went through before the last save.

Quality cannot be proven exactly from a file that was edited and re-saved. For files where the tables match exactly, the number is reliable as "the libjpeg-style quality that produces these tables"; in every other case treat it as an estimate.

This tool runs entirely in your browser — your file is never uploaded to our servers. See our Privacy Policy for full details.

Support

Frequently Asked Questions

Is my photo uploaded?

No. Only the bytes of the file are read, in your browser. The image is not even decoded, and nothing is sent anywhere.

Is the number the quality I chose in Photoshop or my phone?

Not necessarily. Photoshop, phones and other programs use their own scales and tables. The estimate is the libjpeg-style quality whose tables best match the file.

What does "exact match" mean?

Every entry of the file's tables equals the standard tables scaled to that quality. Then that quality value fully explains the tables.

Why is the estimate only "approximate"?

The tables are not a scaled copy of the standard ones, so the encoder used custom or optimised tables. The tool shows the closest standard quality, but nothing was set to that value.

What is chroma subsampling?

JPEG often stores colour at lower resolution than brightness. 4:2:0 halves colour resolution both ways, 4:2:2 only horizontally, and 4:4:4 keeps full colour resolution. It affects file size and colour edges.

Can I see whether a JPEG was edited?

Not reliably. Tables, software names and markers are hints only. Use the C2PA checker for signed provenance data, and treat anything else as a clue, not proof.

Keep Going

Related Tools