The Private Use Area and icon fonts

Unicode sets aside blocks of code points with no official meaning — the Private Use Area (PUA). Anyone can put custom glyphs there, which is exactly how icon fonts squeeze icons into a typeface.

What the PUA is

There are three PUA ranges (the main one is U+E000U+F8FF). Unicode promises never to assign standard characters there, so software and fonts can use those code points for their own purposes without collisions.

How icon fonts use it

An icon font maps each icon to a PUA code point, then a CSS class inserts that character. Because it's in the PUA, the icon glyph won't clash with real letters — but it also means the code point is meaningless outside that specific font.

The downside

PUA characters have no inherent meaning, so if the font fails to load or text is copied elsewhere, users see empty boxes or random glyphs — a key accessibility weakness of icon fonts that SVG icons avoid.

Frequently asked questions

What is the Private Use Area?

Unicode ranges (like U+E000–U+F8FF) reserved for custom, application-specific characters that Unicode will never officially assign.

Why do icon fonts use the PUA?

So their custom icon glyphs don't collide with real characters — though it makes the icons meaningless without the font.