RAL Classic color

RAL 2009 Traffic orange #F54021

RAL 2009 Traffic orange is shown here as #F54021, a widely published sRGB approximation of the printed swatch. It is a vivid red in the red family. In OKLCH it sits at lightness 0.640, chroma 0.221 and hue 32.1°. The nearest CSS named color is red (#FF0000), ΔE2000 3.7 away.

Relative luminance
0.2319
OKLCH L · C · h
0.640 · 0.221 · 32.1
Best text
Black 5.63:1
Hue family
Red

#F54021 color codes

HEX
#F54021
RGB
rgb(245, 64, 33)
HSL
hsl(9, 91%, 55%)
OKLCH
oklch(0.640 0.221 32.1)
OKLab
oklab(0.640 0.187 0.118)
CIELAB (D65)
L* 55.27, a* 66.76, b* 57.40
XYZ (D65)
X 39.77, Y 23.20, Z 3.82
CMYK (naive)
cmyk(0%, 74%, 87%, 4%)

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

Black text on it reaches 5.63:1, passing AA. White text manages only 3.72: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.63:1

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

    3.72:1

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

    5.63:1

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

    3.72:1

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

Nearest versions that pass 4.5:1

  • For text on white

    #E32A03 4.56:1

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

  • For text on black

    #F54021 5.63:1

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

Checking another pair? Use the Contrast Checker.

Studio

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

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

  1. 50#FFF2EF
    White
    1.09
    Black
    19.19
  2. 100#FFE4DF
    White
    1.20
    Black
    17.41
  3. 200#FFC9BD
    White
    1.46
    Black
    14.34
  4. 300#FFA18E
    White
    1.95
    Black
    10.74
  5. 400#FF6D52
    White
    2.77
    Black
    7.56
  6. 500This color#F54021
    White
    3.72
    Black
    5.63
  7. 600#CA2300
    White
    5.59
    Black
    3.75
  8. 700#A31A00
    White
    7.76
    Black
    2.70
  9. 800#791000
    White
    11.12
    Black
    1.88
  10. 900#510700
    White
    15.21
    Black
    1.38
  11. 950#310200
    White
    18.43
    Black
    1.13

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

Gamut

How vivid #F54021 can get

At its lightness and hue, sRGB reaches OKLCH chroma 0.242; #F54021 uses 92% of it. Display P3, which many recent phones and laptops show, reaches 0.271 there: 12% more.

0.00.20.40.60.80.20.40.60.8 460480500520540560580600620
  • sRGB
  • Display P3
  • Rec. 2020
  • Dominant wavelength
OKLCH chroma
0.221
sRGB edge
0.242
Display P3 edge
0.271
Rec. 2020 edge
0.270
Dominant wavelength
605 nm
Excitation purity
84%
Chromaticity
x 0.5955, y 0.3473
  • This color#F54021
  • Most vivid in sRGB#FD2E00
  • Most vivid in Display P3oklch(0.640 0.271 32.1)

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

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

Mixing

Mixing #F54021

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%#FAA090
  • OKLab50%#FFA997
  • OKLCH50%#FFAC9A

Black #000000

  • sRGB50%#7B2011
  • OKLab50%#5F1306
  • OKLCH50%#5F1306

Its complement #009DB4

  • sRGB50%#7B6F6B
  • OKLab50%#AB8078
  • OKLCH50%#A06FDE
In CSS
/* A gradient and a mix, worked out in OKLCH */
background: linear-gradient(in oklch, #f54021, white);
color: color-mix(in oklch, #f54021 50%, white);

In use

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

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

Dark page

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

Color vision

How #F54021 looks with color blindness

Deuteranopia changes it most, ΔE2000 41.5; tritanopia changes it least, 9.8.

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

    #796B19 ΔE2000 39.0

    Distinct

    Reads as muted brown

  • Deuteranopia

    No working green (medium-wavelength) cones

    #A59312 ΔE2000 41.5

    Distinct

    Reads as soft yellow

  • Tritanopia

    No working blue (short-wavelength) cones

    #FF003B ΔE2000 9.8

    Noticeable

    Reads as vivid red

  • Achromatopsia

    No cone color vision; lightness only

    #848484 ΔE2000 29.6

    Distinct

    Reads as gray

Pairing check

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

VisionThe pairΔE2000Verdict
Normal vision#F54021 · #009DB452.6Stays distinct
Protanopia#796B19 · #8C97B541.1Stays distinct
Deuteranopia#A59312 · #7789B446.1Stays distinct
Tritanopia#FF003B · #00A6A463.3Stays distinct
Achromatopsia#848484 · #8F8F8F3.9Easily confused

Harmony

Color harmonies for #F54021

Its complement is #009DB4, 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#F54021
  • Complement#009DB4

Complementary

Open in Harmony Studio
  • −30°#EF3981
  • Base#F54021
  • +30°#CA7400
  • Base#F54021
  • +120°#00A856
  • +240°#667EFF
  • Base#F54021
  • +150°#00A292
  • +210°#0094E0

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-2009: #f54021;
}

Tailwind config

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

Tailwind v4 theme

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

@theme {
  --color-ral-2009: oklch(0.640 0.221 32.1);
}

Design token (W3C DTCG)

{
  "color": {
    "ral-2009": {
      "$type": "color",
      "$value": {
        "colorSpace": "srgb",
        "components": [0.9608, 0.251, 0.1294],
        "hex": "#f54021"
      },
      "$description": "RAL 2009 Traffic orange (approximate sRGB)"
    }
  }
}

SwiftUI color

import SwiftUI

enum Palette {
    static let ral2009 = Color(.sRGB, red: 0.961, green: 0.251, blue: 0.129, opacity: 1)
}

Jetpack Compose color

import androidx.compose.ui.graphics.Color

object Palette {
    val Ral2009 = Color(0xFFF54021)
}

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

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