The named HTML entities worth knowing — search by symbol name or paste the character you need the code for.
HTML entities exist because some characters are load-bearing in markup (a raw < starts a tag), some are invisible or ambiguous in source (the non-breaking space, the zero-width joiner), and some were simply hard to type in the encoding era entities were born in. Writing © instead of © keeps source unambiguous and encoding-proof. This directory lists the named entities developers actually reach for: markup escapes, punctuation, currency, arrows, math, Greek, suits, fractions and the common accented Latin letters — each with the character it produces.
Modern practice, honestly: with UTF-8 everywhere, typing the character directly is usually fine and more readable — © in source is legal HTML today. Entities remain the right tool for the markup-significant five (& < > " '), for invisible characters whose presence must be visible in source, and inside XML where only five entities are predefined. Numeric references (© or ©) work for every character regardless of whether a named entity exists — the fallback that never fails.
Which entities MUST I use? In HTML text: & for a literal ampersand and < for a literal less-than are the essential ones; the rest are clarity and convenience. In attributes, " protects double-quoted values.
Is there an entity for the character I need that is not listed? Every Unicode character has numeric references (decimal → and hex →) even when no name exists. The Unicode Character Lookup on this site shows both for any character you paste.
Do entities work in page titles and meta descriptions? Titles yes (they are parsed as text). Attribute values yes. Inside JavaScript strings, no — entities are an HTML-layer encoding, not a JS one.