About HTMLColor

Free color tools for developers and designers. Every tool runs in your browser and follows the published color specifications.

Why we built it

We wanted color tools that give correct numbers and stay out of the way. Many online color pickers have cluttered interfaces, reload slowly, convert between color spaces inaccurately, or cover the controls with ads.

Our priorities, in order, are that a tool is useful, that it works correctly, and that it is documented well. Every calculation runs in your browser, so results appear as you type or drag.

The interface is deliberately quiet. Panels are plain white or deep navy with a single blue accent, so the color you are working on stands out in both the light and the dark theme.

What you can do here

HTMLColor is free to use, with no account and nothing to install.

If you want the reasoning behind the numbers, the learning center explains HEX codes, OKLCH, contrast ratios and color models in plain language.

Accuracy and standards

The calculations follow these specifications and published methods:

  • OKLCH, OKLab and the 148 named CSS colors are implemented as defined in the W3C CSS Color Module Level 4.
  • Contrast ratios use the WCAG 2.1 relative luminance formula for sRGB and are graded against Level AA and Level AAA.
  • Values that fall outside the sRGB gamut are clamped into it, so every result is a color your screen can show.
  • OKLab and OKLCH conversions use Björn Ottosson's published matrices, the same ones the CSS specification references.
  • The APCA checker reports the Lc lightness-contrast value using the 0.0.98G-4g constants. APCA is a candidate method for future guidelines and is not part of WCAG 2, so we show it alongside the WCAG ratio and never in place of it.
  • The color blindness simulator is based on the Brettel, Viénot and Mollon (1997) model and the Machado et al. matrices for protanopia, deuteranopia and tritanopia.

One color engine sits behind every tool, so a color converted on one page gives the same values on every other page. That engine is covered by automated tests, including round-trip conversions between color spaces. If you still find a value that disagrees with a specification or another trusted tool, please tell us. We act on accuracy reports first.

How HTMLColor is built

The site is written in plain TypeScript with no UI framework. Each page is delivered as static HTML, so the content is readable before any script runs, and the interactive tool then starts in your browser. After the page has loaded, picking, converting and exporting colors needs no further requests to a server.

The only part of HTMLColor that runs on a server is the contact form, which emails your message to us.

Images stay on your device

When you extract a palette or sample colors with the image color picker, your browser decodes the image file locally with the HTML5 Canvas API. We do not upload, transmit, analyze, or retain any image files on external servers.

Privacy by default

Your theme and recent colors are saved in your own browser, not on our servers. Usage statistics are optional: in the EEA, the United Kingdom and Switzerland, Google Analytics loads only if you accept it in the consent banner; elsewhere it is on by default and you can turn it off. It never loads when your browser sends a Do-Not-Track or Global Privacy Control signal. Even when analytics is on, the colors you pick, the images you open and the text you type are never sent.

You can change your choice at any time with the . The details are in the privacy policy and the cookie policy.

Free to use

Every tool on HTMLColor is free, for personal and commercial work alike. The color values, palettes and code snippets you generate are yours to use without attribution. The site currently shows no advertising. If ads are ever added to cover hosting costs, they will be kept clear of the tool controls and the privacy and cookie policies will be updated first.

Feedback and corrections

Most fixes to HTMLColor start with a report from someone using it. If a conversion looks wrong, a tool is awkward on your device, or there is a color task we do not cover yet, use the contact page. Including the color values you entered and the result you expected makes a problem much quicker to reproduce.