Working colour space
Overlay gamuts
Advanced overlays
Spectral locus and purples render on both xy and u′v′ axes.
Chromaticity axes
Standard observer
Controls spectral locus CMFs (2° vs revised 10°).
Plot an image on it
Drop a PNG or JPEG

An 8-bit file carries chromaticity, not luminance. Its pixels are scattered on the diagram and measured against each triangle; nothing here is reported in nits.

Keyboard shortcuts
1-4 cycle curves  |  A toggle axes
Gamut chromaticity diagram
Axes: xy
Gamut chromaticity diagram is available as an interactive visual display.
Move cursor over diagram to sample chromaticity.

Chromaticity plane with gamut triangles, spectral locus and line of purples. Areas are quoted as a share of the spectral locus, in the plane on screen. D65 white-point marker shown.

Gamut metrics
Space Primaries White Share of locus Area

Spectral locus uses CIE 1931 2° observer. ICtCp uses PQ (BT.2100). Jzazbz uses Safdar et al. 2017, including its own quantiser at p = 134.034375 rather than ST 2084’s.

Signal in, luminance out — and where the luminance comes from
Tone curve output
Peak: 1000 nits
Tone curve preview is available as an interactive visual display.

Encoded signal (horizontal) vs absolute cd/m² (vertical, log scale). PQ maps 0–1 to 0–10 000 cd/m². HLG scales by peak nits and system gamma.

Compare them against each other
EOTF Comparison — PQ vs HLG vs sRGB

Comparative plot of all three transfer functions on a log-nits vertical axis. PQ covers the full 0–10 000 cd/m² range; HLG scales by system gamma at 1000-nit reference; sRGB peaks at ~100 nits.

EOTF comparison chart is available as an interactive visual display.

ICtCp — constant-luminance chroma plane, BT.2100
ICtCp Ct–Cp perceptual plane
ICtCp / JzAzBz perceptual plane is available as an interactive visual display.

Gamut boundaries in the chosen perceptual colour space at the signal level’s absolute luminance. Shows chroma extent for each enabled gamut.

Boundary rings by luminance
HDR Gamut Boundary Computation

Computes gamut boundary rings at multiple luminance levels (0.1, 1, 10, 100, 500, 1000, 4000, 10 000 nits) in the selected perceptual space (ICtCp or JzAzBz). Shows how chroma extent changes with luminance.

Gamut boundary rings is available as an interactive visual display.
Click “Compute gamut boundary” to generate rings.

Every dataset this tool touches, and where it came from

Exactly what you will get

            

The three spaces, side by side
Space Area Share of locus White
ITU-R BT.2020 UHDTV primaries

BT.2020 (Rec.2020) specifies the colour primaries, white-point (D65), and transfer characteristics for UHDTV systems. Its primaries enclose 63.6% of the CIE 1931 xy locus as this page measures it, against 33.6% for sRGB and 45.6% for Display-P3. The 75.8 / 35.9 / 53.6 usually quoted are against a smaller locus area than the one drawn here.

Primaries: R (0.708, 0.292), G (0.170, 0.797), B (0.131, 0.046). White-point: D65 (0.3127, 0.3290).

Bit depth: 10-bit (narrow range) or 12-bit for HDR content. BT.2020 defines a non-constant-luminance YCbCr encoding; the HDR extension is in BT.2100.

ITU-R BT.2100 HDR-TV transfer

BT.2100 builds on BT.2020 primaries and adds two HDR transfer functions: Perceptual Quantizer (PQ) and Hybrid Log-Gamma (HLG). It also defines the ICtCp colour-difference space for HDR content evaluation.

PQ (ST 2084): Absolute luminance mapping 0–10 000 cd/m². Designed around the Barten CSF for optimal quantisation of human-visible luminance steps.

HLG (ARIB STD-B67): Relative, scene-referred transfer function that is backward-compatible with SDR displays. Uses system gamma (γsys) to adapt to display peak luminance.

SMPTE ST 2084 the perceptual quantiser transfer

ST 2084 defines the Electro-Optical Transfer Function (EOTF) for mastering reference displays. PQ encodes absolute luminance from 0 to 10 000 cd/m² using a perceptual quantisation curve based on the Barten contrast sensitivity function.

PQ achieves near-invisible quantisation steps at all luminance levels with 10-bit or 12-bit encoding. It is the reference EOTF for Dolby Vision, HDR10, and HDR10+ workflows.

Key property: Display-referred — the encoded signal directly maps to absolute nits, making it independent of display peak luminance (requires tone mapping for non-reference displays).

ARIB STD-B67 hybrid log-gamma transfer

HLG is a scene-referred HDR transfer function adopted by NHK and BBC. It combines a square-root segment (low light) with a logarithmic segment (highlights), providing backward-compatibility with SDR displays without metadata.

System gamma: γsys = 1.2 + 0.42 × log10(Lw/1000). For 1000-nit display: γsys = 1.2. Adjusted for dim (+0.95×) and bright (+0.90×) surround.

OOTF: The Opto-Optical Transfer Function applies system gamma to convert scene-linear to display-linear, producing the final rendered image.

ICtCp BT.2100 — ST 2084 quantiser runs

ICtCp (Dolby, 2016) is a perceptually uniform colour space designed for HDR and wide-colour-gamut content. It decomposes colour into Intensity (I), Tritan chroma (Ct, blue-yellow), and Protan chroma (Cp, red-green).

Construction: BT.2020 linear RGB → LMS (BT.2100 matrix) → PQ encode each channel → 3×3 rotation to ICtCp.

Advantages: Better hue linearity than L*a*b* at HDR luminances. JND-calibrated by PQ non-linearity. Used for colour-difference evaluation (ΔEITP) in BT.2124.

Jzazbz Safdar 2017 — its own quantiser corrected

JzAzBz (Safdar, Hardeberg & Ronnier Luo, 2017) is a perceptually uniform colour space that handles both SDR and HDR luminance ranges. It improves upon CIELAB by using PQ-based lightness and a non-linear XYZ pre-processing step.

Components: Jz (lightness), Az (redness-greenness), Bz (yellowness-blueness). Unlike ICtCp, JzAzBz operates from XYZ rather than BT.2020 RGB.

ITU-R BT.709 & sRGB shared primaries, different curves primaries

BT.709 (Rec.709) defines the primaries for HDTV. sRGB (IEC 61966-2-1) shares the same primaries and D65 white-point but specifies its own transfer function (piecewise linear + gamma 2.4).

Primaries: R (0.640, 0.330), G (0.300, 0.600), B (0.150, 0.060). Covers 33.6% of the CIE 1931 xy locus as this page measures it; the ~35.9% usually quoted is against a smaller locus area.

Display-P3 DCI primaries at D65 primaries

Display-P3 (based on DCI-P3 cinema) uses wider primaries than sRGB, covering ~53.6% of CIE 1931. It is the default wide-gamut space on Apple devices and increasingly adopted in web content (CSS color Level 4).

Primaries: R (0.680, 0.320), G (0.265, 0.690), B (0.150, 0.060). White-point: D65 (same as sRGB).