Blank and zero-width characters, with their names and code points, for legitimate layout and typography needs.
28 symbols - click any symbol to copy
Last reviewed on October 31, 2026
Each one has a typographic job. A no-break space (U+00A0) keeps a number and its unit from splitting across lines. The thin and hair spaces fine-tune spacing in numbers and punctuation. A zero width space marks where a long word or URL may wrap, and the zero width non-joiner is required in some languages, such as Persian, to control letter shapes.
The zero width joiner (U+200D) glues emoji into one image, so 👩 + ZWJ + 💻 becomes a technologist. The variation selectors U+FE0E and U+FE0F pick the text or emoji look of a symbol. Both are normally invisible by design, and removing them can break the sequence they belong to.
Some platforms treat these characters as empty and strip or reject them, for example in usernames, names and form fields. Results differ by app and over time, so test before depending on one. The Braille blank and Hangul fillers display as blank in many places, but they are real characters in other scripts. Use them for layout and formatting only, and respect the rules of any site or service you post to.
Because the characters do not show, it is easy to paste the wrong one. A text editor with a show-invisibles option, or a code point inspector, will reveal each character. That is also how developers track down stray zero-width characters that break searches, passwords or file names.
Characters like the Braille pattern blank (U+2800) and Hangul filler (U+3164) show as empty space, so people copy them where plain spaces are collapsed. Support varies by platform.
U+200B marks a possible line-break point without showing any space. It helps long words, URLs and some Asian-language text wrap cleanly.
Many apps trim whitespace or filter unusual characters. A different blank character may work, or the field may simply not allow empty values.