11 January, 2017

List of 20 Simple, Distinct Colors

In making my latest project (soon to be revealed!) I came across a problem. The challenge was to color-code 20 different rail lines for a metro system diagram, and I found myself spending an inordinate amount of time choosing the colors. No matter what I did, some colors were too similar and could be easily confused.

Surely I’m not the first person to have this issue, I thought. So I did some googling and came across Kelly’s 22 Colors of Maximum Contrast. Unfortunately towards the bottom of Kelly’s list things get a bit complicated. The orange yellow, purplish red, yellowish brown and reddish orange all seemed to blend together. Not only that, there were no hex triplets, nor RGB nor CMYK values.

Every list of colors that I found online suffered from the same problems. So I made my own, with colors that are:

  • Easily distinguishable
  • Tastefully luminant
  • Given simple, intuitive names
  • Supplied with hex, RGB and CMYK values

Without further ado, I present my own list of 20 simple and visually distinct colors, plus black and white.
I’ve arranged the table so that if you want six colors, for example, just choose the first six starting from the top. The order of the colors is inspired by their frequency of appearance on all the world’s subway maps (yes, I did count them all!).

Some of the color names (like blue or green) don’t match up to various HTML or RGB conventions – this is done deliberately to further differentiate the colors. The conversions between various color spaces are not exact but in my experience they work well.

Leave a Reply

32 Comments on "List of 20 Simple, Distinct Colors"

newest oldest most voted
Notify of
Justin Runes

I think the pink and the lavender might easily be confused, but so what, there are maybe 19 very distinct colors. That ought to work well for most projects.

Rory Smith-Belton

Phenomenal, thank you!

After I found your side, I also found an online color-differencing algorithm online which will, from a few input parameters, deliver you a set of colors with their corresponding RGB, Hex and HSV values.


Wao! That ‘s so soo great. Thank You for that site!


This is great! Perhaps the beige and coral are too close together, at least the way I perceive it.


These work for me. Even the pink and lavender, beige and coral. I see the difference and as warm and cool. Great project.

Peter Diem

Perfect – although I would add dark green – think of colored text and of printing text!

Your Roman Road is also perfect – although
I would add Vindobona (Vienna)

Niels Heeser Nielsen

Very nice palette! Exactly what we need to distinguish the status of physical assets on maps 🙂

I would like to have a distinguishability score 1-20, which can make it straight forward to remove the least distinguishable colors, when less than 20 colors are required. Did consider this in any of the map projects where you have used only a part of this palette?

Dani Plaza

Hi! I love your designs and I’d love to do something similar in the near future.
Your roman metro map is just incredible, because I’m a metro-map design enthusiast.
About these colors, I don’t feel that they are similar to each other, so that’s great, but I’d like to suggest light gray too, since the gray you propose is really dark and it could be easily differentiated.

Guest and many other papers-
Dr. LeRoy Bessler did this decades ago. I always followed his recommendations for color and design. How do his compare to yours?


I’ve been looking for colors to use in a pie chart and after 20 minutes of googling I found this, finally. Thank you so much.


What a great study very useful to have gone into such careful thought and research. I have been trying to research the 4 most distinctive colours. Am I right to assume that 3 of them are the primary colours and if so what is the 4th most distinctive colour and what order should they be in? ( I want to use colours for teaching music).

I’m a visual information designer, and I know too well how much thought and effort goes into choosing colors in any kind of visualization. I can spend days searching for the right color combination, even if I only need to distinguish between four or five. I’m sure you must have spent a great deal of time working on these colors! My concern is that they don’t pass accessibility standards. People with visual impairments will have a difficult time interpreting your map accurately. For instance, someone with Protanopia color blindness will not be able to distinguish between the green, orange, brown… Read more »

As a color blind person, I can confirm that in the list above for example brown and olive look exactly the same.

William Simpson
This is great. I was working on a problem that required 10 distinct colors a while back, and this would have been very helpful! Something you should consider though, is accessibility. Specifically if you test these colors under a tools such as This tool shows that there are several types of color blindness that would be unable to distinguish some combinations of these colors. I still think you can get 12 – 14 very distinct colors from this, but I think there is still work to be done to get a list of 20 colors that are truly distinct… Read more »

What colors would you choose if a background color was also specified, say white?


This is incredibly useful by the way. Thank you!


Awesome work!
I would think of adding couple more shades of grey (no, not “50”! I neither read it nor saw it).
These are easily distinguishable for most people independently from their colour acuity.


thank you so much! exactly the sort of thing i was looking for

Kip Ingram
Very nice. I find a couple of the pairs hard to distinguish. For example, I’d have a hard time with lime and yellow if they weren’t next to each other. I’m primarily commenting on the comments here – I have to disagree with those that say “color alone should never convey information.” That’s precisely what I’m doing in my (personal) project – it’s an implementation of Charles Moore’s “Color Forth” programming environment, where text color is used to convey information to the compiler / interpreter. Using textures and patterns is impossible here – we’re talking about single characters and they… Read more »

Just what I was looking for !!

What a perfect solution. Thanks 🙂