DevTools Hub

Guess the Color

A quick game: name a swatch's hex code, or spot the swatch that matches a hex code.

Runs locally
Best 0
Round 1 / 5Score 0 / 500
TargetWhat is this color's hex code?
ResultRevealed after your guess

Make a guess to see how close you got. Tip: think in channels, red first, then green, then blue.

Status
Mixing colors…

How it works

Guess the Color trains the skill of reading hex codes at a glance. Each game is five rounds. In Guess the hex you see a swatch and type the code you think it is; in Pick the swatch you see a code and choose the matching color out of four.

Guesses are scored by perceived difference, not by how far apart the bytes are. Both colors are converted to CIELAB and compared with the CIE76 ΔE formula, so a guess that looks nearly identical earns nearly full marks even when one channel is off by a lot. Anything under a ΔE of about 2.3, the smallest difference most people can see, scores a perfect 100.

Your best total for each mode is kept in this browser's local storage. Colors are generated on your device and nothing is sent to a server.

Frequently asked questions

How do I get better at guessing hex codes?
Read the code as three channels: the first pair is red, the second green, the third blue, each from 00 to ff. Estimate how much of each the swatch has, start with the brightest channel, and remember that equal channels give a gray.
How is each round scored?
The target and your guess are compared in the CIELAB color space using ΔE. A difference below 2.3 scores 100 points, and the score falls off smoothly as the colors look less alike. In Pick the swatch the right choice scores 100 and a wrong one scores 0.
Can I type a three-digit hex code?
Yes. Shorthand like #3a7 is expanded to #33aa77, and the leading hash is optional. Codes with an alpha channel are not accepted because the swatch is always fully opaque.
Where is my best score saved?
In your browser's local storage, separately for each mode. Clearing site data resets it, and a private window starts from zero and forgets the score when it is closed.