Skip to the color picker
PickShade

HSL to LCH converter

Paste a HSL value, get LCH instantly. Any other format works too.

Read as HSL

LCH valuelch(61.03 84.67 41.37)
LCH to HSL

Every other format

HSL to LCH examples

ColorHSLLCH
hsl(0 100% 50%)lch(54.29 106.84 40.86)
hsl(120 100% 50%)lch(87.82 113.33 134.38)
hsl(240 100% 50%)lch(29.57 131.2 301.36)
hsl(0 0% 100%)lch(100 0 0)
hsl(0 0% 0%)lch(0 0 0)
hsl(0 0% 50.2%)lch(53.59 0 0)
hsl(10.59 100% 60%)lch(61.03 84.67 41.37)
hsl(217.22 91.22% 59.8%)lch(54.62 66.37 277.59)
hsl(160.12 84.08% 39.41%)lch(66.69 53.46 161.39)
hsl(37.69 92.13% 50.2%)lch(72.79 80.1 70.35)
hsl(258.31 89.53% 66.27%)lch(50.69 85.19 302.56)
hsl(330.37 81.19% 60.39%)lch(57.31 68.24 354.01)

About HSL and LCH

HSL describes hue in degrees, saturation and lightness in percent. It is easy to read, but its lightness is not perceptually even: yellow at 50% looks much lighter than blue at 50%.

CIE LCH is Lab in polar form: lightness, chroma and hue. It is easier to reason about than Lab and is supported in CSS as lch().

How the conversion works

We read the HSL value, convert it to CIE XYZ with the matrices from the CSS Color 4 specification and then into LCH. Values outside the target gamut are mapped by the CSS Color 4 algorithm, which keeps lightness and hue and reduces chroma.

Questions and answers

How do I convert HSL to LCH?

Paste or type a HSL value into the field above. PickShade converts it with the CSS Color 4 formulas as you type, and one click copies the LCH value.

Is the HSL to LCH conversion exact?

The math is exact and the result is rounded only for display, with enough digits to convert back to the same color. If the color does not fit the target gamut, PickShade warns you and shows the nearest color that fits.

Can I get other formats at the same time?

Yes. Every other format, including OKLCH, Display P3, Tailwind, SwiftUI, Flutter and Android, is listed below the result and copies with one click.

Is this converter free?

Yes. It is free, needs no sign-up and runs entirely in your browser.