MathTimer
All articles
🎨

Color-coded math: why 7 is always purple

Consistent color coding for each digit makes facts easier to recognize, remember and talk about.

Scroll to read
The idea

Give every digit its own color — and keep it

In MathTimer, every digit 1–9 has its own color, and the ten has its gold. 3 is always teal. 7 is always coral. 9 is always magenta. Sounds trivial — and it's one of the most underrated learning tricks there is.

1
sky
2
cyan
3
teal
4
mint
5
green
6
amber
7
coral
8
rose
9
magenta
10
gold

(Tiny note on the title: in MathTimer 7 actually landed on coral — the magenta one is 9. But the point is the same: every digit gets its own color, and that color never changes.)

The color is consistent everywhere: in equations, in the visualizations, in the heatmap, in the progress dots. The brain never has to ask 'what is this?' again.

The research

Color + shape = two channels into memory

Allan Paivio's dual-coding theory shows that information encoded both verbally (the digit) and visually (the color) is encoded more deeply and recalled more reliably. Seeing a 7 in the same coral every time gives the child two hooks to hang the number on — not one.

It's the same principle behind Cuisenaire rods, used in classrooms since the 1950s: red is always 2, light green is always 3, orange is always 10. Children who learn with them develop an intuitive sense of number relationships.

Before / after

Same number — two experiences

Plain text
273
Three glyphs. No structure.
Color-coded
273
Tens, ones — same colors every time.

Suddenly 273 isn't three identical glyphs — it's a gold two (200), a gold seven (70) and a coral three (3). The structure is visible before the child has started computing.

42
105
999
Addition

The color reveals what's happening

When 7 + 6 is built, the child sees a coral row and an amber row. The result, 13, is a gold ten plus a teal three — and it's obvious where the ten came from.

7 + 6 = 13
+

Coral + amber = a gold ten + a teal three.

9 + 4 = 13
+

Magenta + mint = a gold ten + a teal three.

Multiplication

The 7-times table is always a coral row

In multiplication we color each row by the row it represents. 3 × 7 is three coral rows. 5 × 7 is five. The child doesn't memorize 'the 7 table' as an abstract list — it has a tone to recognize.

3 × 7 = 21

3 × 7 — three coral rows.

5 × 7 = 35

5 × 7 — five coral rows.

Division

Division becomes groups you can see — not a mystery symbol

24 ÷ 4 shows as four mint columns. The child can count the columns or the height — either way leads to the same six. The color makes it feel less like a puzzle and more like something you can see.

24 ÷ 4 = 6

24 ÷ 4 = 6. Four mint columns, six in each.

35 ÷ 7 = 5

35 ÷ 7 = 5. Seven coral columns — and the answer is five.

Subtraction

Remove a color, not a quantity

Taking eight from fourteen becomes concrete when the rose disappears and a mint six remains. The color gives the action a shape — shapes stick.

14 8 = 6

14 − 8 = 6. The rose disappears.

13 7 = 6

13 − 7 = 6. Coral out, mint stays.

Consistency

The color must be the same — every time, everywhere

This is where most teaching materials fall short: they color a picture nicely, but the next page has a different palette. Then the color loses its pedagogical job. In MathTimer, 7 is coral in the equation, coral in the progress dots, coral in the heatmap when you've mastered the row, coral in the emoji ribbon above your hits. It's the same thing every time.

A meta-analysis of 32 studies (Xie et al., 2017) shows that consistent visual cues — like a fixed color per digit — significantly reduce cognitive load and improve both retention and transfer. The more load the cue removes, the better the outcomes.

What about color blindness? We've tested the palette against common forms (deuteranopia, protanopia) — the digits are always spelled out, so color is an addition, never the only signal.

Try it

The 7 times table — let the coral sink in

🎲Times 6
6×3=
0s0/10
Further reading

Studies & background

Want your own heatmap? It takes a minute.

Try MathTimer →