Most people are taught that the primary colors are red, yellow and blue, and that everything else is made from them. It is a tidy answer, it has been in classrooms for three hundred years, and when you measure it, it fails. Red, yellow and blue cannot produce 179 of the 360 saturated hues. That is not a rounding error or an edge case. It is half the color wheel, including every green.
I ran the numbers using the same perceptual color math this site uses to score guesses, comparing the three primary sets that people actually argue about: red-yellow-blue, red-green-blue, and cyan-magenta-yellow. The results are below, along with the part the arguments usually miss. There is no single correct set of primaries, because primary is not a property a color has. It is a property of a color together with a mixing operation, and the two operations available give two different answers, neither of which is red, yellow and blue.
The short answer
- Mixing light, which adds: the primaries are red #ff0000, green #00ff00, blue #0000ff. Screens use these. They reach 100 percent of the sRGB hues by construction.
- Mixing ink or dye, which multiplies: the primaries are cyan #00ffff, magenta #ff00ff, yellow #ffff00. Printers use these. Multiplied in pairs they land on pure red, green and blue with a measured difference of exactly zero.
- Red, yellow and blue is a teaching wheel inherited from eighteenth century printing. It reaches 50.3 percent of saturated hues, and its own three secondary colors do not come out correctly under either operation.
The rest of this piece is the measurement behind those three lines, and the more interesting question of why the red-yellow-blue wheel still works well enough in a paint tray that nobody notices it is wrong.
What primary actually means
A set of primaries is a basis. Pick three colors, pick a rule for combining them, and the primaries are good if the combinations reach everything you care about. Nothing about red, or yellow, or any other color makes it inherently fundamental. Cone cells in the human eye peak at roughly 560, 530 and 420 nanometres, which is yellowish-green, green and violet, so even the biology does not hand us a neat trio of familiar color names.
There are only two mixing rules that matter.
- Additive. Two light sources shining on the same spot. The intensities add. Two beams are always brighter than either alone, and three saturated beams at full strength give white.
- Subtractive. Two filters, glazes or inks stacked over the same white paper. Each one removes part of what arrives, so the reflectances multiply. Two layers are always darker than either alone, and enough layers give black.
Addition and multiplication are different operations, so they have different optimal bases. This is the whole disagreement. Once you fix the operation, the right primaries stop being a matter of opinion and become a measurable question.
How far each set of primaries can reach
Under additive mixing the reachable set has an exact shape. Combining three light sources in any proportion produces a color whose chromaticity falls inside the triangle formed by the three primaries on the CIE 1931 diagram, the standard map of every color a human can see. Brightness is free; the triangle is the ceiling on hue and saturation. So the size of that triangle is a direct measure of how much a primary set can do.
- Red, green, blue: triangle area 0.11207 in xy units. This is the whole sRGB gamut, which is what the set is defined to produce.
- Red, yellow, blue: 0.07275, or 64.9 percent of the RGB triangle.
- Cyan, magenta, yellow: 0.02549, or 22.7 percent. Shining cyan, magenta and yellow lights at a wall is a genuinely terrible way to make colors.
Area understates the problem for red, yellow and blue, because the missing 35 percent is not scattered around the edges. It is one solid block. I walked all 360 saturated hues, at full HSV saturation and value, and tested each one for membership in each triangle. Red, yellow and blue reach 181 of 360, or 50.3 percent. The 179 that fail are a single unbroken arc, hues 61 through 239: everything from just past yellow, through chartreuse, green, spring green, cyan and azure, stopping just short of blue.
Sampling the full sRGB cube rather than just the saturated rim gives the same picture, with 51.0 percent of sampled chromaticities inside the red-yellow-blue triangle and 19.0 percent inside the cyan-magenta-yellow one. Of the twelve stations on a standard twelve-part color wheel, five sit outside what red, yellow and blue can reach:
- Chartreuse #80ff00, out of gamut
- Green #00ff00, out of gamut
- Spring green #00ff80, out of gamut
- Cyan #00ffff, out of gamut
- Azure #0080ff, out of gamut
Red, orange, yellow, blue, violet, magenta and rose are all fine. The warm half of the wheel is well served, which is a large part of why the deficiency goes unnoticed. If your subject is skin, brick, wood and sunset, red-yellow-blue is close to sufficient. If your subject has a lawn in it, you are outside the model. The warm and cool split and this gamut hole overlap more than coincidence would suggest.
The secondary colors test
The gamut argument is geometric, so here is a blunter one. Every version of the primary color story comes with three promised secondaries. Take each promise, perform the mixture under both operations, and measure how far the result lands from what was promised. Distances are CIEDE2000, where anything under about 2.3 is imperceptible and anything over about 20 is an unmistakably different color. If you want the formula itself, what CIEDE2000 measures covers it.
Cyan, magenta and yellow, multiplied
- Cyan + yellow gives #00ff00. Promised green #00ff00. Difference 0.00.
- Cyan + magenta gives #0000ff. Promised blue #0000ff. Difference 0.00.
- Magenta + yellow gives #ff0000. Promised red #ff0000. Difference 0.00.
Red, green and blue, added
- Red + green gives #ffff00. Promised yellow. Difference 0.00.
- Green + blue gives #00ffff. Promised cyan. Difference 0.00.
- Red + blue gives #ff00ff. Promised magenta. Difference 0.00.
Six exact hits. Both of these systems do precisely what they claim, to the limit of the arithmetic.
Red, yellow and blue, under either operation
- Red + yellow, promised orange #ff7f00. Added, the result is #ffbc00, an amber sitting 22.1 degrees away in CIELAB hue angle, difference 21.15. Multiplied, the result is #ff0000, which is the red you started with. Neither operation produces orange.
- Yellow + blue, promised green #00ff00. Added, the result is #ffffff, white. Multiplied, the result is #000000, black, at a difference of 87.87 from green. The single most famous claim in color teaching produces white one way and black the other, and green neither way.
- Red + blue, promised purple #7f00ff. Added, the result is #ff00ff, magenta, 16.6 degrees off and a difference of 23.20. Multiplied, black again, difference 43.35.
Six exact hits for the other two sets, and zero for red, yellow and blue. Its best result is the 20.85 by which multiplied red and yellow miss orange, which is roughly the perceptual distance between a lemon and a tangerine.
So why does blue and yellow make green in a real paint tray?
Because the blue in the paint tray is not blue. This is the part of the story that the debunking articles usually leave out, and it is the reason the red-yellow-blue wheel survived three centuries of being wrong.
Pure blue, #0000ff, has a green channel of zero. Multiply it by anything and the green stays zero. Real blue pigments are nothing like that. They reflect a wide band of light that includes a substantial amount of green, and it is that green reflectance, not the blueness, that survives the multiplication. I took five pigments at their conventional hex values and multiplied each by cadmium yellow #fff600:
- Pure sRGB blue #0000ff, green channel 0. Result #000000. Black.
- Ultramarine #120a8f, green channel 10. Result #120900, L* 2.9. Effectively black, and any painter who has tried to mix a bright green from ultramarine knows this.
- Phthalo blue #000f89, green channel 15. Result #000e00, L* 2.8.
- Prussian blue #003153, green channel 49. Result #002f00, L* 15.7, chroma 34.4. A dark green at last.
- Cobalt blue #0047ab, green channel 71. Result #004400, L* 24.1, chroma 46.0.
- Cerulean #2a52be, green channel 82. Result #2a4f00, L* 29.6, chroma 45.6, hue angle 125.5. A real olive green, and still 54.7 away from #00ff00.
- Cyan #00ffff, green channel 255. Result #00f600, L* 85.0, and only 1.9 from pure green, which is below the threshold at which anyone can see a difference.
The ordering is the finding. The greenness of the mixture tracks the green channel of the blue, monotonically, with no other variable involved. Blue and yellow do not make green. Blues that are secretly a bit cyan make green, and the more cyan they are, the better the green. Cerulean, the blue that art teachers reach for when the exercise is landscape, is the one with the most green in it. The teaching wheel works in practice because the pigments quietly smuggle cyan into the “blue” slot.
There is a matching story on the other side. The magenta slot is filled by crimson, alizarin or quinacridone, all of which carry more blue than a true red does, which is why red and blue give a passable violet in paint and a poor one in arithmetic. What painters call red-yellow-blue is closer to a smudged cyan-magenta-yellow than to the primaries printed on the classroom poster.
Primary and secondary colors, stated properly
Since “primary and secondary colors” is usually taught as one lesson, here is the whole structure for each system, with hex codes.
Additive, for light and screens
- Primaries: red #ff0000, green #00ff00, blue #0000ff
- Secondaries: yellow #ffff00, cyan #00ffff, magenta #ff00ff
- All three at full strength: white #ffffff
Subtractive, for ink and dye
- Primaries: cyan #00ffff, magenta #ff00ff, yellow #ffff00
- Secondaries: red #ff0000, green #00ff00, blue #0000ff
- All three at full strength: black, in theory
Notice that each system’s secondaries are the other system’s primaries. That is not a coincidence or a pleasing symmetry; it is the definition. Cyan is what is left of white light when you remove red, magenta is white minus green, yellow is white minus blue. The two sets are the same three axes, read forwards and backwards. Once that clicks, the whole subject stops being a list to memorize.
Printing adds a fourth ink, the K in CMYK, for a practical reason rather than a theoretical one. Real inks are not ideal filters, so stacking all three gives a muddy dark brown rather than black, and it uses three times the ink to do it. A dedicated black plate is cheaper, sharper for text, and actually black. The three-primary theory is intact; the fourth ink is an engineering fix.
For the layer above this, the wheel positions and the schemes built on them, the color theory guide collects it, and tertiary colors covers what sits between the primaries and secondaries.
What red, yellow and blue gets right
It would be easy to end there, and it would be a slightly dishonest ending. Red, yellow and blue is a bad basis for mixing and a surprisingly good basis for teaching, and the measurement shows why.
Measure the perceptual spread of each trio, the average CIEDE2000 distance between its three members, and the sets come out almost identical. Red, yellow and blue averages 73.5 with a closest pair of 52.9. Red, green and blue averages 74.2 with the same closest pair of 52.9, since red and blue appear in both. Cyan, magenta and yellow trails at 64.3, with cyan and yellow only 42.0 apart. As three maximally distinct visual anchors for a beginner, red, yellow and blue is as well spread as the set your monitor uses and better spread than the set your printer uses.
It also wins on lightness balance in a way that matters for paint. In CIELAB, yellow sits at L* 97.1, red at 53.2 and blue at 32.3, which is a wide, even ladder from near-white to fairly dark. Cyan and yellow sit at L* 91.1 and 97.1, nearly the same brightness, so a cyan-magenta-yellow palette gives a beginner two anchors that are hard to tell apart in a value study.
And it is not a random legacy. Jacob Christoph Le Blon published Coloritto in 1725 describing the first three-color printing process, using yellow, red and blue inks, which he called “primitive” colors, and stating explicitly that blue and yellow make green. Those inks were made from the pigments available in 1725. His method is the direct ancestor of CMYK; what changed is that the chemistry caught up and the red became magenta and the blue became cyan. The classroom answer is not wrong so much as it is three hundred years out of date.
Thomas Young proposed in his 1802 Bakerian Lecture that the eye contains three receptors, which he described as sensitive to red, green and violet. Helmholtz developed it in the 1850s, and Maxwell demonstrated it in 1861 by projecting three filtered photographs together. That is the point at which the additive primaries were pinned down empirically, and the point at which red, yellow and blue should have stopped being taught as the primaries of anything except historical printing.
Where this shows up in the game
This site generates target colors across the full hue circle, with saturation and value anywhere from 15 to 100. I ran every color that generator can produce, 2,662,560 of them, against the red-yellow-blue triangle. 49.6 percent are unreachable from those three primaries. Roughly every other round asks you to judge a color that the model you were taught in school cannot describe.
That has a practical consequence for anyone trying to get better at this. If you reason about a swatch by asking “how much red, how much yellow, how much blue,” you have no vocabulary for half the targets, and you will systematically pull your guesses toward the warm side, where the model has words. The fix is to think in hue, saturation and value, or in the three channels the color is actually made of, which is what reading hex codes properly buys you. Training your eye for color goes through the drills, and the solo game is where you find out whether the retraining took. The greens and cyans are where the scores fall off, and now you know it is partly the fault of a printing pamphlet from 1725.
How these numbers were produced
Every hex value was converted to CIELAB against the D65 reference white and compared with CIEDE2000 following Sharma, Wu and Dalal’s reference implementation, which is the same code path this site uses to score gameplay. Chromaticity coordinates use the CIE 1931 2-degree observer and the sRGB primaries. Triangle areas are computed directly in xy, which is not a perceptually uniform space, so the areas compare primary sets against each other fairly but should not be read as “this set can make 64.9 percent as many distinguishable colors.” The hue-coverage and cube-coverage figures are the more meaningful ones.
Additive mixtures are computed by averaging in linear light and rescaling so the brightest channel is full, which preserves the resulting chromaticity while making the hue comparison fair. Subtractive mixtures multiply the two colors channel by channel in linear light, which is the correct model for two ideal filters or two transparent glazes. Real paint is not ideal: pigments scatter as well as absorb, and the accurate model is Kubelka-Munk theory over full reflectance spectra rather than three channels. The three-channel multiplication is a simplification, and it is the same simplification every digital multiply blend mode makes. It gets the direction and the ordering right, which is what the argument here rests on, and it will be off on exact chroma for any real pigment.
The pigment hex values are the conventional web representations of those paint names, not spectrophotometer readings of actual tubes, which vary by manufacturer. Cube coverage samples every fifth value on each channel, 140,607 colors after discarding pure black. The game-space figure walks every integer combination this site’s target generator can produce, which is hue 0 to 359 with saturation and value each from 15 to 100. If you would rather see that space than read about it, the color memory test explains what the game samples and why.