Developer tools

Color picker and contrast

HEX (#RGB/#RRGGBB), rgb(0–255, 0–255, 0–255) or hsl(0–360, 0–100%, 0–100%).

One JPEG/PNG/WebP · 8 MB / 4 MP / 4096px

#356A47rgb(53, 106, 71)hsl(140.4, 33.3%, 31.2%)

Enter colors or choose an image.

Images and colors stay in this browser; nothing is uploaded or saved.

Help & FAQs

Pick pixels from a local image or enter a color. Copy HEX, RGB or HSL, preview foreground and background, and check WCAG 2 text contrast without uploading your image.

How to use

  1. Enter foreground/background colors or choose an image.
  2. Click a pixel, or use arrow keys and exact coordinates.
  3. Check contrast, then copy values or download the report.

Color and contrast scope

Inputs accept #RGB, #RRGGBB, rgb(r, g, b) integer channels, or hsl(h, s%, l%) with hue 0–360 and percentages 0–100. All input colors are opaque sRGB. HSL display is rounded to one decimal; HEX/RGB retain exact 8-bit values. Native browser image decoding and Canvas provide sRGB pixel samples, not an ICC/color-proofing guarantee.

WCAG 2 relative luminance uses linearized sRGB. Normal text AA requires 4.5:1, large text AA 3:1, and normal text AAA 7:1. Large text means at least 18pt, or 14pt bold. Pass/fail uses the unrounded ratio; the displayed ratio is rounded. This checks one pair of colors, not a whole page or WCAG conformance.

One static JPEG/PNG/WebP, up to 8 MB, 4 MP and 4096px per side. Format/dimensions are checked before native oriented decoding. No images are uploaded, persisted, or fetched from URLs. Replacement, removal and page exit release pixels; edits invalidate report tasks and URLs. Processing has 45-second checkpoints.

Common questions

Can a transparent pixel be used as an opaque text color?

Its displayed color depends on the background. A sampled transparent pixel is composited on the selected background before contrast is calculated. Fully transparent hidden RGB is not presented as a visible color.