Hue
Hue identifies the general color family using an angle around a color wheel. Values are commonly expressed in degrees from 0 to 360.
Enter an hsl() value or drag the H, S and L sliders and get the OKLCH equivalent — with HEX, RGB, sRGB gamut info, contrast ratios and a live preview.
Input HSL
Accepts hsl(H S% L%), hsla() with commas, or bare H S L channels. S and L may be percent or 0–1.
Manual HSL sliders
Note: HSL hues are not perceptually uniform, so equal H shifts do not look equally spaced once converted to OKLCH.
Harmonies
Live preview
Text on white, muted text, and a button using your color as its background.
Channel values
Contrast checks (WCAG 2, 4.5:1)
Convert HSL colors to OKLCH values online with a clear, modern and developer-friendly color conversion workflow. Understand lightness, chroma and hue while working with modern CSS color formats.
An HSL to OKLCH Converter changes a color expressed using the HSL color model into the OKLCH color space. HSL represents colors using hue, saturation and lightness, while OKLCH represents a color using perceptual lightness, chroma and hue.
This conversion is especially useful for modern web design, design systems, UI development, color palette creation and CSS development. OKLCH is designed around the OKLab color model and provides a cylindrical representation that makes lightness, chroma and hue easier to reason about.
HSL and OKLCH both describe colors with three main components, but they are based on different models and are useful for different design and development workflows.
Hue identifies the general color family using an angle around a color wheel. Values are commonly expressed in degrees from 0 to 360.
HSL saturation describes how strongly a color differs from its neutral gray counterpart. It is normally represented as a percentage.
HSL lightness controls the position between black, the selected color and white. OKLCH uses a different lightness concept based on the OKLab color model.
| Property | HSL | OKLCH |
|---|---|---|
| Based on | HSL color model | OKLab color model |
| Components | Hue, Saturation, Lightness | Lightness, Chroma, Hue |
| Hue | Angle | Angle |
| Lightness | HSL lightness | Perceptual-style lightness |
| Chroma | Not a native component | Native component |
| CSS support | Widely supported | Modern CSS color syntax |
| Palette work | Simple traditional workflows | Modern color-system workflows |
OKLCH uses three primary components. Understanding each component makes it much easier to create balanced colors and modify palettes intentionally.
L represents perceived lightness in the OKLab-based color model. In CSS OKLCH syntax, lightness is commonly written as a percentage or an equivalent numeric value.
C represents chroma, which describes the strength or colorfulness of a color relative to the neutral axis. Higher chroma generally means a more vivid color, although the available gamut depends on the color space and display.
H represents hue as an angle around the color wheel. It helps identify the color family, such as red, yellow, green, cyan, blue or magenta.
OKLCH is useful when you want more structured control over lightness, chroma and hue. Instead of treating saturation and lightness as the primary controls, OKLCH gives designers a color model where lightness and chroma are explicit components.
OKLCH makes it easier to adjust lightness and chroma independently when creating related color variations.
Modern CSS includes OKLCH color notation, making converted values useful for contemporary front-end development.
Designers can reason about lightness, chroma and hue separately instead of relying only on HSL saturation.
OKLCH can be useful when building systematic color scales, interfaces, themes and component libraries.
OKLCH can be explored for modern gradient and interpolation workflows where perceptual behavior is important.
The resulting OKLCH values can be copied into CSS and used in supported modern browser environments.
.brand-color {
color: oklch(65% 0.18 250);
}
.button {
background: oklch(62% 0.20 260);
}
.button:hover {
background: oklch(68% 0.18 260);
}
CSS OKLCH values use the
oklch() function. Depending on the design and browser
support requirements, you can combine modern OKLCH declarations with
appropriate fallbacks.
HSL to OKLCH conversion is more than simply rearranging three numbers. The two models use different mathematical representations, so a proper color conversion process is required.
The converter starts with the supplied hue, saturation and lightness values.
The HSL representation is resolved into a color representation suitable for conversion into the target color space.
The color is transformed using the mathematical relationships required to reach the OKLab color model.
OKLab's Cartesian components are converted into cylindrical OKLCH coordinates: lightness, chroma and hue.
The converter presents the resulting OKLCH values in a format that can be copied into design tools or CSS code.
HSL to OKLCH conversion can be useful for anyone working with digital colors, especially designers and developers building modern interfaces.
One of the most useful applications of HSL to OKLCH conversion is modern color palette development. Existing HSL colors can be converted and then explored using OKLCH lightness, chroma and hue.
Start with an existing HSL brand or interface color and convert it into OKLCH.
Adjust the lightness component to explore lighter interface backgrounds and subtle variants.
Reduce lightness to create darker states, borders, headings and interface accents.
Experiment with chroma to create softer or stronger versions of a color while maintaining the same general hue.
HSL stands for Hue, Saturation and Lightness. It is a widely used color model in web design and CSS because its three components are intuitive for many everyday color-selection tasks.
HSL is especially useful for traditional color manipulation, theming, quick palette adjustments and CSS code where broad browser compatibility is important.
OKLCH is a cylindrical representation of the OKLab color model. Its components are lightness, chroma and hue.
The format has become increasingly useful in modern web design because CSS supports OKLCH notation and designers can work with explicit lightness and chroma dimensions.
For technical information about CSS color functions and modern color spaces, consult authoritative documentation from MDN and the W3C.
Common questions about converting HSL colors to OKLCH and using modern color formats.
An HSL to OKLCH Converter changes a color represented with Hue, Saturation and Lightness into the OKLCH color space, which uses Lightness, Chroma and Hue.
HSL stands for Hue, Saturation and Lightness. It is a commonly used color model in CSS and digital design.
OKLCH refers to a cylindrical representation of the OKLab color model using lightness, chroma and hue.
L represents lightness, C represents chroma and H represents hue. Hue is normally expressed as an angle, while lightness and chroma use numeric values appropriate to the OKLCH syntax.
Neither format is universally better. HSL remains convenient and widely supported, while OKLCH can provide a useful structure for modern palette design, lightness control and CSS color workflows.
Yes. Modern CSS provides the oklch() color function. Browser support should still be considered when your project needs to support older environments.
Conversion is useful when an existing HSL palette needs to be explored in a color model with explicit lightness and chroma components.
No. HSL and OKLCH use different mathematical color models. A proper conversion requires color-space transformations rather than simply renaming or rearranging HSL components.
Yes. It can be useful for UI colors, design systems, themes, gradients, buttons, backgrounds, borders and other digital design workflows.
Chroma describes the colorfulness of a color relative to the neutral axis. Increasing chroma generally produces a stronger color, subject to gamut limitations.
OKLab represents colors using Cartesian components, while OKLCH is a cylindrical representation of OKLab using lightness, chroma and hue.
They can describe the same underlying colors when appropriate color-space conversions are performed, but their component values are not directly interchangeable.
Use HSL when it fits your existing workflow, and explore OKLCH when you need modern CSS color syntax, explicit lightness and chroma controls, or a more structured approach to digital color systems.