tools.studio

Hex Color Picker

Pick a color off the spectrum, or paste a hex code, and copy it back as HEX, RGB, or HSL.

HEX
RGB
HSL

What this does

Pick a color on the square and hue bar, or type a value, and the tool converts it across HEX, RGB, and HSL at once. Internally it holds the color as HSV — saturation and value map to the square, hue maps to the rainbow bar — and recomputes the three text formats from that on every change.

HEX, RGB, and HSL each store color as whole numbers, so a round trip between formats can move a channel by one. The on-screen color stays exact; only the rounded text shifts. Nothing here is a file: there's no image to upload, no metadata, and no download — just the color values, all computed in the page.

How it works

  1. 1 Drag in the square to set the shade, and the rainbow bar to set the hue.
  2. 2 Or type a HEX, RGB, or HSL value. Every field stays in sync.
  3. 3 Copy the format you need with one click.

Built on web standards

Built with standard browser APIs — no third-party libraries.

Frequently asked

Can I paste a color in instead of using the picker? +

Yes. Type or paste into any of the HEX, RGB, or HSL fields and the picker plus the other two fields update right away. HEX takes 6-digit (#3B82F6) or 3-digit shorthand (#39F), with or without the #.

Why do the values shift slightly when I switch fields? +

HEX, RGB, and HSL each round to whole units, so converting between them can nudge a value by one. The color you see is always exact. Only the text rounds.

Which HEX formats does it accept? +

6-digit (#3B82F6) and 3-digit shorthand (#39F), with or without the leading #. It reads RGB and HSL from any string with three numbers, so both 'rgb(59, 130, 246)' and a bare '59 130 246' work.

Does it handle alpha or transparency? +

No. The picker works with opaque colors only, so 8-digit HEX with an alpha channel and rgba/hsla values aren't supported. Drop the alpha and pass the base color.

What happens if I type an invalid value? +

The field outlines red and the picker holds its last valid color until the text parses again. Out-of-range numbers (RGB above 255, saturation or lightness above 100) are rejected.

Does anything get uploaded? +

No. The picker runs entirely in your browser. No color is ever sent anywhere, and there's no sign-up.

Does the copy button work everywhere? +

It copies the field's text to your clipboard on any modern browser. Clipboard access needs a secure context (https or localhost); where it's blocked, copying is silently skipped and you can select the text by hand.