RAL Classic color

RAL 3001 Signal red #A52019

RAL 3001 Signal red is shown here as #A52019, a widely published sRGB approximation of the printed swatch. It is a dark soft red in the red family. In OKLCH it sits at lightness 0.470, chroma 0.170 and hue 28.7°. The nearest CSS named color is firebrick (#B22222), ΔE2000 3.1 away.

Relative luminance
0.0910
OKLCH L · C · h
0.470 · 0.170 · 28.7
Best text
White 7.44:1
Hue family
Red

#A52019 color codes

HEX
#A52019
RGB
rgb(165, 32, 25)
HSL
hsl(3, 74%, 37%)
OKLCH
oklch(0.470 0.170 28.7)
OKLab
oklab(0.470 0.149 0.082)
CIELAB (D65)
L* 36.19, a* 52.35, b* 38.81
XYZ (D65)
X 16.21, Y 9.11, Z 1.82
CMYK (naive)
cmyk(0%, 81%, 85%, 35%)

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 #A52019 accessible?

White text on it reaches 7.44:1, passing AAA. Black text fails at 2.82:1.

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

    2.82:1

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

    7.44:1

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

    2.82:1

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

    7.44:1

    • AA passes
    • AA large passes
    • AAA passes
    • APCA Lc +84

Nearest versions that pass 4.5:1

  • For text on white

    #A52019 7.44:1

    It already reaches 7.44:1 on white, so no change is needed.

  • For text on black

    #CB473B 4.50:1

    Lightening its OKLCH lightness from 0.47 to 0.58 reaches 4.50:1 on black, keeping the hue.

Checking another pair? Use the Contrast Checker.

Studio

Adjust #A52019 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 #A52019

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

  1. 50#FFF2EF
    White
    1.09
    Black
    19.19
  2. 100#FFE4E0
    White
    1.20
    Black
    17.42
  3. 200#FFC8C0
    White
    1.47
    Black
    14.27
  4. 300#FFA193
    White
    1.94
    Black
    10.77
  5. 400#F87363
    White
    2.75
    Black
    7.62
  6. 500#D95447
    White
    3.95
    Black
    5.30
  7. 600#BD3A2F
    White
    5.51
    Black
    3.81
  8. 700This color#A52019
    White
    7.44
    Black
    2.82
  9. 800#7D0002
    White
    11.21
    Black
    1.87
  10. 900#540001
    White
    15.24
    Black
    1.37
  11. 950#330000
    White
    18.40
    Black
    1.14

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

Gamut

How vivid #A52019 can get

At its lightness and hue, sRGB reaches OKLCH chroma 0.193; #A52019 uses 88% of it. Display P3, which many recent phones and laptops show, reaches 0.217 there: 13% more.

0.00.20.40.60.80.20.40.60.8 460480500520540560580600620
  • sRGB
  • Display P3
  • Rec. 2020
  • Dominant wavelength
OKLCH chroma
0.170
sRGB edge
0.193
Display P3 edge
0.217
Rec. 2020 edge
0.217
Dominant wavelength
609 nm
Excitation purity
81%
Chromaticity
x 0.5973, y 0.3355
  • This color#A52019
  • Most vivid in sRGB#AD0004
  • Most vivid in Display P3oklch(0.470 0.217 28.7)

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

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

Mixing

Mixing #A52019

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%#D2908C
  • OKLab50%#DA958B
  • OKLCH50%#DA958B

Black #000000

  • sRGB50%#53100D
  • OKLab50%#3D0604
  • OKLCH50%#3D0604

Its complement #006773

  • sRGB50%#534446
  • OKLab50%#72524D
  • OKLCH50%#556300
In CSS
/* A gradient and a mix, worked out in OKLCH */
background: linear-gradient(in oklch, #a52019, white);
color: color-mix(in oklch, #a52019 50%, white);

In use

#A52019 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:17.44:1 Passes
  • Link and body-size textText, 4.5:17.44:1 Passes
  • Large headingLarge text, 3:17.44:1 Passes
  • Icons, borders and focus ringsNon-text, 3:17.44:1 Passes

Dark page

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

For text on this page, the nearest shade that passes is #D65144 4.56:1

Color vision

How #A52019 looks with color blindness

Deuteranopia changes it most, ΔE2000 35.8; tritanopia changes it least, 4.4.

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

    #4B4316 ΔE2000 32.9

    Distinct

    Reads as dark muted brown

  • Deuteranopia

    No working green (medium-wavelength) cones

    #6B5F11 ΔE2000 35.8

    Distinct

    Reads as muted brown

  • Tritanopia

    No working blue (short-wavelength) cones

    #B60020 ΔE2000 4.4

    Close match

    Reads as vivid red

  • Achromatopsia

    No cone color vision; lightness only

    #555555 ΔE2000 26.7

    Distinct

    Reads as dark gray

Pairing check

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

VisionThe pairΔE2000Verdict
Normal vision#A52019 · #00677346.7Stays distinct
Protanopia#4B4316 · #5C637429.6Stays distinct
Deuteranopia#6B5F11 · #4F597336.5Stays distinct
Tritanopia#B60020 · #006D6B53.8Stays distinct
Achromatopsia#555555 · #5D5D5D2.9Easily confused

Harmony

Color harmonies for #A52019

Its complement is #006773, a dark muted teal, 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#A52019
  • Complement#006773

Complementary

Open in Harmony Studio
  • −30°#9F1D59
  • Base#A52019
  • +30°#884800
  • Base#A52019
  • +120°#006E2C
  • +240°#354EB8
  • Base#A52019
  • +150°#006A5B
  • +210°#00628F

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-3001: #a52019;
}

Tailwind config

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

Tailwind v4 theme

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

@theme {
  --color-ral-3001: oklch(0.470 0.170 28.7);
}

Design token (W3C DTCG)

{
  "color": {
    "ral-3001": {
      "$type": "color",
      "$value": {
        "colorSpace": "srgb",
        "components": [0.6471, 0.1255, 0.098],
        "hex": "#a52019"
      },
      "$description": "RAL 3001 Signal red (approximate sRGB)"
    }
  }
}

SwiftUI color

import SwiftUI

enum Palette {
    static let ral3001 = Color(.sRGB, red: 0.647, green: 0.125, blue: 0.098, opacity: 1)
}

Jetpack Compose color

import androidx.compose.ui.graphics.Color

object Palette {
    val Ral3001 = Color(0xFFA52019)
}

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 #A52019 in the tools

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