× vs x vs ✕ vs ✗: four crosses with four jobs
Use × (U+00D7) for arithmetic and dimensions, ✕ (U+2715) for a close or dismiss control, and ✗ (U+2717) as the negative counterpart to a check mark. The letter x is none of those, and it is what most people type.
Last checked 2026-08-05.
At a glance
| Character | Code point | Name | HTML | When it is correct |
|---|---|---|---|---|
| × | U+00D7 | Multiplication Sign | × | Arithmetic and dimensions: 3 × 4, 1920 × 1080. Centred on the mathematical axis. |
| x | U+0078 | Latin Small Letter X | x | A letter. Fine in filenames and casual plain text, wrong in typeset copy. |
| ✕ | U+2715 | Multiplication X | ✕ | A close or dismiss control. Symmetrical, fills the line box, not a letter. |
| ✖ | U+2716 | Heavy Multiplication X | ✖ | The same shape with a heavier stroke, for small sizes or bold surroundings. |
| ✗ | U+2717 | Ballot X | ✗ | The negative that pairs with a check mark in a status table. |
| ∗ | U+2217 | Asterisk Operator | ∗ | Multiplication in programming-style notation. Distinct from the ASCII asterisk. |
What the letter x costs you
The letter sits on the baseline and is drawn to pair with other lowercase letters. The multiplication sign sits on the mathematical axis, centred against the digits, and is drawn to pair with the plus and minus signs. Set 1920 x 1080 next to 1920 × 1080 at any reasonable size and the difference is obvious once you have seen it.
There is a functional cost too. A screen reader announces the letter x as a letter, so 3 x 4 is read as three ex four. Search and text analysis treat it as a word character, which changes tokenisation. And in a table of dimensions, mixed usage means one column sorts differently from another.
The close button question
Interface close controls are the most common place a cross appears, and the most common place the wrong one is used. The multiplication sign is too small and sits too high, because it was drawn to sit among digits. The letter x is asymmetrical and announces itself as a letter.
U+2715 and U+2716 were drawn as standalone marks that fill the line box, which is what a button glyph needs. Whichever you use, the control still needs an accessible name such as Close, because no cross character conveys the action on its own. A screen reader that encounters a bare U+2715 will announce something like multiplication x, which tells the user nothing about what the button does.
Pairing a cross with a tick
In a status table the tick and the cross should match in weight. The ballot X U+2717 pairs with the light check mark U+2713, and the heavy ballot X U+2718 pairs with the heavy check mark U+2714. Both pairs are text characters that follow your colour.
The emoji cross mark and the emoji tick are the third pair, and they only pair with each other. Putting a plain tick in one column and an emoji cross in the next gives you one colour-neutral column and one red one, which is the most common inconsistency in a hand-built status table.
In code, none of these are the operator
Every mainstream programming language uses the ASCII asterisk for multiplication. The multiplication sign, the asterisk operator U+2217 and the cross product sign are notation characters for documents, not syntax. Pasting one into source code produces a syntax error, and because it looks almost like an asterisk in some editors it can take a while to spot.
The reverse is also worth stating: when you are writing prose about code, the ASCII asterisk is correct, because that is the character the code actually contains.
Frequently asked questions
Should image dimensions use x or ×?
The multiplication sign U+00D7 is typographically correct for 1920 × 1080. The letter x is an accepted shortcut in filenames and plain text.
Which cross should a close button use?
U+2715 or U+2716, with an accessible label such as Close. No cross character conveys the action by itself.
Can I use × in code?
No. Programming languages use the ASCII asterisk. The multiplication sign is a notation character for documents.