Short answer
A HEX code is not a colour; it is an instruction — three numbers that mean 'this much red, green and blue' in whatever colour space the software assumes, usually sRGB. Two screens show the same instruction differently when they have different primaries, a different white point, a different brightness, a different tone response, or when software skips colour management and sends the numbers straight to a wider-gamut panel.
#1E90FF says: red 30, green 144, blue 255, on a scale of 0 to 255. It says nothing about which red, green and blue. The web's default answer is sRGB, a space defined by IEC 61966-2-1 in 1999 with the same primaries as HD television (ITU-R BT.709), a D65 white point and a specific tone curve. When a browser or operating system knows the display's own characteristics, it converts sRGB numbers into whatever that display needs to produce the intended sRGB colour. When it does not, the display simply lights its own primaries at those levels, and the colour you see is whatever that particular panel's red, green and blue happen to be.
Most recent phones, many laptops and a growing share of monitors have primaries close to Display P3, which reaches noticeably more saturated reds and greens than sRGB. A colour-managed app shrinks sRGB content to fit inside P3 so it looks as intended. An unmanaged one — some games, older desktop software, a browser with colour management disabled, some embedded web views — sends the sRGB numbers straight through, so every red and green is pushed out towards the panel's more saturated primaries. Skin looks sunburnt, brand colours look louder than their guidelines and pale greens turn minty. The HEX value has not changed; the meaning attached to it has.
A quick test: open the same image in the operating system's photo viewer and in the app you suspect. If the suspect app shows it noticeably more saturated on a wide-gamut screen, it is not colour-managing.
Even two screens with identical primaries disagree if one is set brighter, has a bluer white point, or has a different tone response curve. Night-shift and 'true tone' features deliberately move the white point warmer in the evening or to match ambient light, which shifts every colour on screen with it. Panel type matters at the dark end: OLED pixels switch fully off, so dark colours keep their hue and depth, while an LCD's backlight leaks through and lifts near-blacks towards grey. Viewing angle matters on many LCDs, where colours desaturate and shift as you move off-axis. None of this is visible in the HEX value.
Put two screens side by side and the difference is obvious; look at one on its own for a minute and it seems normal. That is chromatic adaptation: the visual system rebalances to treat the brightest neutral in view as white. It is why a warm 'night mode' screen looks orange for a few seconds and then acceptable, and why a colour judged on one screen and approved can still disappoint on another. Critical comparisons need both images visible at once, or a calibrated display viewed in controlled lighting — not memory of how something looked yesterday on a different device.
You cannot make every screen show one colour. You can make sure your own content says what it means: embed or assume sRGB for ordinary web images, tag wide-gamut images with their profile so managed software can convert them, and use CSS colour functions that name their space — color(display-p3 …) or oklch() — when you intentionally want colours beyond sRGB, with an sRGB fallback. For judging colour, a hardware-calibrated display at a moderate brightness in stable lighting removes most of the variation you control. For communicating colour to someone else, send a physical reference or a measured value alongside the HEX, never the HEX alone.
| Space | Defined by | Area in CIE 1931 xy | Area in CIE 1976 u′v′ |
|---|---|---|---|
| sRGB | IEC 61966-2-1 | 100% | 100% |
| Adobe RGB (1998) | Adobe RGB (1998) Color Image Encoding | 135% | 117% |
| Display P3 | DCI-P3 primaries, D65 white (SMPTE EG 432-1) | 136% | 126% |
| Rec. 2020 | ITU-R BT.2020 | 189% | 172% |
Why: An app or web view is not colour-managing, so sRGB values drive the wide-gamut panel directly.
Fix: Check the same asset in a managed viewer; fix the app's colour handling or tag the asset, rather than toning the colour down for one device.
Why: It was approved on a wide-gamut screen using a colour outside sRGB, then delivered as sRGB, which clipped it.
Fix: Approve in the space you deliver in, or deliver wide-gamut assets with an sRGB fallback that was also reviewed.
Why: Backlight bleed on an LCD lifts near-blacks; the other screen is OLED.
Fix: Keep critical content away from the darkest few steps, or check dark palettes on both panel types.
Each statement is labelled by kind — established fact, a standard’s requirement, observed market data, a convention, or Colourwise’s own interpretation or analysis — with the strength of the evidence behind it.
StandardStrong evidence
sRGB is defined in IEC 61966-2-1 and uses the same red, green and blue primaries as ITU-R BT.709 high-definition television, with a D65 white point.
Source: International Electrotechnical Commission (IEC) webstore and catalogue; ITU-R Recommendations BT.709, BT.2020 and BT.2100
StandardStrong evidence
CSS treats colours written as HEX, rgb() and hsl() as sRGB values, and CSS Color Level 4 adds functions such as color(display-p3 …), lab() and oklch() that specify colours outside sRGB.
Source: CSS Color Module Level 4
Colourwise analysisStrong evidence
Measured by the area of its primary triangle on the CIE 1976 u′v′ diagram, the Display P3 gamut is roughly a quarter larger than sRGB, and Rec. 2020 is roughly three quarters larger.
Based on: Calculated by Colourwise from the published primary chromaticities of each space; see the table on this page.
Caveat: Triangle area is a rough guide to gamut size: it ignores lightness, and equal areas in u′v′ are only approximately equal in perceived colour difference.
Source: ITU-R Recommendations BT.709, BT.2020 and BT.2100; International Electrotechnical Commission (IEC) webstore and catalogue
FactStrong evidence
ICC colour management works by describing each device with a profile and converting colour values through a device-independent connection space, so that the same intended colour is produced on devices with different characteristics.
Source: International Color Consortium: specifications and information
Colourwise interpretationLimited evidence
Most visible screen-to-screen mismatches in everyday use come from unmanaged content on wide-gamut displays and from differing brightness and white-point settings, rather than from manufacturing variation between panels of the same model.
Based on: Follows from the size of the sRGB-to-P3 gamut difference compared with typical factory-calibration tolerances; not a measured survey of devices.
Caveat: Cheaper panels can vary considerably from unit to unit; this is a generalisation.
Reviewed 29 September 2026. Colourwise summarises its sources in its own words and does not reproduce standards text or proprietary colour data. Spotted an error? Tell us.