RAL Classic color

RAL 4003 Heather violet #DE4C8A

RAL 4003 Heather violet is shown here as #DE4C8A, a widely published sRGB approximation of the printed swatch. It is a vivid pink in the pink family. In OKLCH it sits at lightness 0.633, chroma 0.189 and hue 357.8°. The nearest CSS named color is deeppink (#FF1493), ΔE2000 5.5 away.

Relative luminance
0.2253
OKLCH L · C · h
0.633 · 0.189 · 357.8
Best text
Black 5.50:1
Hue family
Pink

#DE4C8A color codes

HEX
#DE4C8A
RGB
rgb(222, 76, 138)
HSL
hsl(335, 69%, 58%)
OKLCH
oklch(0.633 0.189 357.8)
OKLab
oklab(0.633 0.189 -0.007)
CIELAB (D65)
L* 54.59, a* 61.78, b* -3.04
XYZ (D65)
X 37.30, Y 22.54, Z 26.43
CMYK (naive)
cmyk(0%, 66%, 38%, 13%)

CIELAB and XYZ use the D65 white point; CSS lab() uses D50, so paste the OKLCH or HEX value into stylesheets. CMYK here is a plain formula with no press profile.

RAL and RAL Classic are trademarks of RAL gGmbH, which this site is not affiliated with. The sRGB value is an approximation of the printed swatch; check a physical RAL color card before you specify a paint.

Legibility

Contrast: is #DE4C8A accessible?

Black text on it reaches 5.50:1, passing AA. White text manages only 3.81:1, enough for large text only.

WCAG 2 gives the same ratio whichever color is the text; APCA does not, so its Lc changes sign and size with polarity.

Open the Contrast System
  • Black text on it

    5.50:1

    • AA passes
    • AA large passes
    • AAA fails
    • APCA Lc +39
  • White text on it

    3.81:1

    • AA fails
    • AA large passes
    • AAA fails
    • APCA Lc −70
  • As text on black

    5.50:1

    • AA passes
    • AA large passes
    • AAA fails
    • APCA Lc −36
  • As text on white

    3.81:1

    • AA fails
    • AA large passes
    • AAA fails
    • APCA Lc +64

Nearest versions that pass 4.5:1

  • For text on white

    #CE3D7D 4.57:1

    Darkening its OKLCH lightness from 0.63 to 0.59 reaches 4.57:1 on white, keeping the hue.

  • For text on black

    #DE4C8A 5.50:1

    It already reaches 5.50:1 on black, so no change is needed.

Checking another pair? Use the Contrast Checker.

Studio

Adjust #DE4C8A live

Move lightness, chroma and hue in OKLCH, or drag on the map. The map is every lightness and chroma at the current hue: sRGB inside the solid area, Display P3 out to the dashed line.

The studio needs JavaScript.

Scale

Shades and tints of #DE4C8A

Eleven OKLCH lightness steps at this hue, each with its contrast against white and black. #DE4C8A sits at step 500.

  1. 50#FFF1F5
    White
    1.09
    Black
    19.15
  2. 100#FFE3EB
    White
    1.20
    Black
    17.43
  3. 200#FFC5D7
    White
    1.47
    Black
    14.21
  4. 300#FF9ABE
    White
    1.97
    Black
    10.61
  5. 400#F867A1
    White
    2.82
    Black
    7.44
  6. 500This color#DE4C8A
    White
    3.81
    Black
    5.50
  7. 600#BD2B6F
    White
    5.61
    Black
    3.73
  8. 700#9F0758
    White
    7.93
    Black
    2.64
  9. 800#770040
    White
    11.29
    Black
    1.85
  10. 900#500029
    White
    15.29
    Black
    1.37
  11. 950#300016
    White
    18.46
    Black
    1.13

Under each step, white and black text on it; a bold figure passes 4.5:1.

Gamut

How vivid #DE4C8A can get

At its lightness and hue, sRGB reaches OKLCH chroma 0.258; #DE4C8A uses 73% of it. Display P3, which many recent phones and laptops show, reaches 0.290 there: 12% more.

0.00.20.40.60.80.20.40.60.8 460480500520540560580600620
  • sRGB
  • Display P3
  • Rec. 2020
  • Dominant wavelength
OKLCH chroma
0.189
sRGB edge
0.258
Display P3 edge
0.290
Rec. 2020 edge
0.341
Dominant wavelength
Complementary 498 nm
Excitation purity
47%
Chromaticity
x 0.4324, y 0.2613
  • This color#DE4C8A
  • Most vivid in sRGB#F6008A
  • Most vivid in Display P3oklch(0.633 0.290 357.8)

On a screen without Display P3 the last tile shows the sRGB edge instead.

Use the wider color where screens show it
.accent {
  color: #de4c8a;
}
@media (color-gamut: p3) {
  .accent { color: color(display-p3 0.923 0 0.5332); }
}

Mixing

Mixing #DE4C8A

Each row is the same mix worked out in a different space, with the halfway color at its end. sRGB, which older CSS gradients use, can sag gray or dark in the middle; OKLab keeps the lightness steps even; OKLCH holds chroma and hue as it goes.

White #FFFFFF

  • sRGB50%#EFA6C5
  • OKLab50%#F6AAC3
  • OKLCH50%#F6AAC3

Black #000000

  • sRGB50%#6F2645
  • OKLab50%#551832
  • OKLCH50%#551832

Its complement #00A18A

  • sRGB50%#6F778A
  • OKLab50%#9D828A
  • OKLCH50%#AB8400
In CSS
/* A gradient and a mix, worked out in OKLCH */
background: linear-gradient(in oklch, #de4c8a, white);
color: color-mix(in oklch, #de4c8a 50%, white);

In use

#DE4C8A in an interface

A button, a link, a heading, a focused field, an icon and a chart line in this color, on a light page and a dark one. Each check is a WCAG 2 contrast minimum: 1.4.3 for text, 1.4.11 for the rest.

Light page

  • Button labelText, 4.5:15.50:1 Passes
  • Link and body-size textText, 4.5:13.81:1 Fails
  • Large headingLarge text, 3:13.81:1 Passes
  • Icons, borders and focus ringsNon-text, 3:13.81:1 Passes

For text on this page, the nearest shade that passes is #CE3D7D 4.57:1

Dark page

  • Button labelText, 4.5:15.50:1 Passes
  • Link and body-size textText, 4.5:14.91:1 Passes
  • Large headingLarge text, 3:14.91:1 Passes
  • Icons, borders and focus ringsNon-text, 3:14.91:1 Passes

Color vision

How #DE4C8A looks with color blindness

Protanopia changes it most, ΔE2000 30.6; tritanopia changes it least, 10.2.

Simulated with Machado et al. (2009) at full severity, in linear light.

Simulate a whole page What each type sees
  • Protanopia

    No working red (long-wavelength) cones

    #67718C ΔE2000 30.6

    Distinct

    Reads as grayish blue

  • Deuteranopia

    No working green (medium-wavelength) cones

    #8E8D87 ΔE2000 30.2

    Distinct

    Reads as gray

  • Tritanopia

    No working blue (short-wavelength) cones

    #EF3E65 ΔE2000 10.2

    Distinct

    Reads as vivid pink

  • Achromatopsia

    No cone color vision; lightness only

    #838383 ΔE2000 26.4

    Distinct

    Reads as gray

Pairing check

Checked against its complement, #00A18A. Their lightness contrast is only 1.17:1, so where hue collapses, add a label, icon or pattern.

VisionThe pairΔE2000Verdict
Normal vision#DE4C8A · #00A18A57.1Stays distinct
Protanopia#67718C · #9A968923.7Stays distinct
Deuteranopia#8E8D87 · #89898C5.3Harder to tell apart
Tritanopia#EF3E65 · #00A49A65.4Stays distinct
Achromatopsia#838383 · #8F8F8F4.3Easily confused

Harmony

Color harmonies for #DE4C8A

Its complement is #00A18A, a soft cyan, on the cool side of the wheel.

Hue rotations in OKLCH, mapped into sRGB by trimming chroma so hue and lightness stay put.

Open the Harmony Studio
  • Base#DE4C8A
  • Complement#00A18A

Complementary

Open in Harmony Studio
  • −30°#C458C3
  • Base#DE4C8A
  • +30°#E64F44
  • Base#DE4C8A
  • +120°#839500
  • +240°#0094D4
  • Base#DE4C8A
  • +150°#00A641
  • +210°#009CAC

Split-complementary

Open in Harmony Studio

Code

Design tokens

Ready-to-paste tokens in six formats. Rename them to fit your system.

CSS custom property

:root {
  --color-ral-4003: #de4c8a;
}

Tailwind config

// tailwind.config.js
module.exports = {
  theme: {
    extend: {
      colors: {
        'ral-4003': '#de4c8a',
      },
    },
  },
};

Tailwind v4 theme

/* app.css — Tailwind CSS v4 */
@import "tailwindcss";

@theme {
  --color-ral-4003: oklch(0.633 0.189 357.8);
}

Design token (W3C DTCG)

{
  "color": {
    "ral-4003": {
      "$type": "color",
      "$value": {
        "colorSpace": "srgb",
        "components": [0.8706, 0.298, 0.5412],
        "hex": "#de4c8a"
      },
      "$description": "RAL 4003 Heather violet (approximate sRGB)"
    }
  }
}

SwiftUI color

import SwiftUI

enum Palette {
    static let ral4003 = Color(.sRGB, red: 0.871, green: 0.298, blue: 0.541, opacity: 1)
}

Jetpack Compose color

import androidx.compose.ui.graphics.Color

object Palette {
    val Ral4003 = Color(0xFFDE4C8A)
}

Matches

The nearest match in each system

The closest CSS name, Tailwind shade, RAL Classic paint and Crayola crayon by ΔE2000; under 2 is hard to tell apart side by side. RAL and Crayola values approximate physical colors.

Tools

Open #DE4C8A in the tools

Each opens over this page. More colors live in the Color Library, and every color page is listed on the hub.