~/allthedamn.tools

Symbols & Special Characters

Tap any symbol to copy it — searchable by name, not by scrolling.

runs entirely in your browser
tapping copies straight to the clipboard
popular
1,786 symbols
Black Heart SuitU+2665 · 9829
charHTMLCSSJS

Every symbol here ships with the page. Tapping one copies it on your device — nothing is uploaded, nothing is tracked, and nothing is kept when you leave.

No emoji on this board, on purpose: they are their own problem — skin tones, sequences, and a drawing that belongs to whatever font is reading them. The board for those is EmojisTime.

The symbols people actually come here for

A handful of characters account for most of the searching. The degree sign ° for temperatures and angles. The check mark ✓ and its heavier twin ✔ for lists that need a tick rather than a bullet. The bullet • itself. Infinity ∞. The arrows → ← ↑ ↓ for anything that points. The card suits ♥ ♠ ♦ ♣. And the legal trio © ® ™, which people need roughly once a year and can never remember how to type.

Then there is the punctuation that separates typed text from typeset text: the em dash — for a break in a sentence, the en dash – for a range like 9–5, curly quotes “ ” ‘ ’ instead of the straight ones a keyboard gives you, and the ellipsis … as one character rather than three full stops. Word processors substitute some of these as you type. Browsers do not, though macOS and iOS can at the keyboard layer when smart punctuation is switched on — which is why the same person gets curly quotes in one app and straight ones in the next, and ends up here looking for the character directly.

Everything here is searchable by what you would call it, not only by what Unicode calls it. Type tick and the check marks come up; type smart quote and the curly quotes do; type add and you get the plus sign. None of those words appears in any Unicode name — they are added on top, because the official name of a character is rarely the word you reach for when you are trying to find one.

Past that first handful the board keeps going, because the next search is never the popular one. Accented letters for a name a keyboard cannot spell — é ñ ü ç ø ł ž. Brackets that are not on the keyboard: ⟨ ⟩ ❴ ❪ ⌈ ⌋. Circled and parenthesised numbers for a list that has to survive being pasted somewhere plain — ① ⑫ ⓵ ⑽. Greek letters, Roman numerals, fractions, superscripts and subscripts. Arrows in every direction and weight. Box drawing for a table in a terminal, block elements for a bar chart in a message. And the invisible characters — the non-breaking space, the zero-width space, the blank braille pattern people use where a bio refuses an empty line.

Em dash, en dash, hyphen — the three that get confused

They are three different characters and they are not interchangeable. The hyphen - joins words: well-known, twenty-one. The en dash – spans a range: pages 12–18, Monday–Friday, the 1914–1918 war. The em dash — sets off a clause, the way a pair of commas or brackets would, and is the one most people are hunting when they land here.

The other pair worth knowing is the quote marks. A keyboard gives you " and ', which are straight typewriter marks. Typeset text uses “ ” for double quotes and ‘ ’ for single, curling in opposite directions at each end. The right single quote ’ is also the correct apostrophe — it is the same character, so don’t is spelled with the closing quote and not the straight one.

Both distinctions matter more than they look. Search engines and code do not care, but a designer, an editor, or a typesetter will spot straight quotes in body copy immediately, and an en dash where an em dash belongs reads as a typo to anyone who sets text for a living.

The character codes, if you are writing this into something

Tap a symbol and its detail panel shows four forms. The character itself is what you paste into a document, a post, or a form. The HTML entity — ★ for a star — is what you write into markup when you would rather not put a raw character in a source file. The CSS escape \2605 is what goes inside a content property. The JavaScript escape \u2605 goes in a string literal.

The code point, written U+2605, is the character's permanent identifier. It is what a font names, what a database sorts, and what you search for when you have a character and want to know what it is — paste one into the search box above and this page will tell you.

For characters outside the first 65,536 code points, the JavaScript form is \u{1F600} with braces rather than a plain \u escape, because the plain form only reaches four hex digits. The board here stops at that boundary on purpose, but paste one of the bigger characters into the search and the panel still identifies it and hands you all four forms.

Why some symbols show as a box

A symbol is not an image. It is a number, and it only appears if a font on the device has a picture for that number. When none does, you get an empty rectangle — a tofu box — and there is nothing the page that gave you the character can do about it.

This matters most on phones, where the installed font set is smaller and older than on a desktop. It is why the board is built mostly out of the oldest blocks Unicode has — the arrows, the maths operators, the box drawing, the accented letters and the circled numbers come overwhelmingly from blocks that have been in system fonts since the nineties — and why a block that mixes ages is trimmed to the part that is old, with the individual latecomers dropped: a single Unicode block can hold characters added thirty years apart. The currency signs are the deliberate exception, because the rupee, the ruble and the bitcoin sign are all new and people search for them by name regardless. The decorative glyphs that fill the top results for this search — the script alphabets and the fancy-text sets, all of them out past the first 65,536 characters — are left out entirely. Those look striking in a bio on the device that made it and land as a row of boxes on an Android phone two years old.

The practical test is to paste the symbol where you actually intend to use it and look at it there. A symbol that renders in this page's font may still fail in an app that ships its own, and one that works in your bio may not work for everyone reading it.

fair questions

How do I copy and paste a symbol?
Tap or click it. The symbol goes straight to your clipboard, and you paste it wherever you were going — a post, a bio, a document, a form field. If you need several, turn on collect and tap them in turn to build a line, then copy the whole thing at once.
Why does a symbol show up as a box or a question mark?
Because the device has no font containing that character. The symbol is only a number; something on the device has to have a picture for it. Older phones have smaller font sets, so a character that looks fine here can be an empty box for someone reading your post. Paste it where you plan to use it and check before you rely on it.
How do I type a check mark or a degree sign without this page?
On a Mac, Control-Command-Space opens the character viewer and Option-Shift-8 gives you the degree sign directly. On Windows, Windows-Period opens the emoji and symbol picker, or hold Alt and type 0176 on the numeric keypad for a degree sign. On iOS and Android, press and hold the zero key for the degree sign.
What's the HTML code for a symbol?
Tap the symbol and the detail panel shows it. The star ★ is ★ — that is the code point in hexadecimal, wrapped in the numeric entity syntax. The panel also gives the CSS escape and the JavaScript escape, which are the same number written for those two languages.
Are these symbols free to use anywhere?
The characters themselves, yes — they are Unicode text, the same category of thing as the letter A, and no one owns them. Two things that sound like part of the same question are not covered by it. A logo uses a particular font’s drawing of a character, and that font’s licence governs it. And ® asserts a registered trademark: putting it on a mark you have not registered is unlawful in the US and most other places, whatever Unicode thinks.
Where do the names come from?
From the Unicode standard itself. Every symbol here carries its official Unicode name, so what you see is what the character actually is rather than a nickname invented for a website. The search also matches plain-language keywords added on top, which is why searching tick finds the check marks even though no Unicode name contains that word.