ZERO WIDTH SPACE·U+200B

Character Information

Code Point
U+200B
HEX
200B
Unicode Plane
Basic Multilingual Plane
Category
Format

Character Representations

Click elements to copy
EncodingHexBinary
UTF8
E2 80 8B
11100010 10000000 10001011
UTF16 (big Endian)
20 0B
00100000 00001011
UTF16 (little Endian)
0B 20
00001011 00100000
UTF32 (big Endian)
00 00 20 0B
00000000 00000000 00100000 00001011
UTF32 (little Endian)
0B 20 00 00
00001011 00100000 00000000 00000000
HTML Entity
​
URI Encoded
%E2%80%8B

Description

The Unicode character U+200B, known as the Zero Width Space (ZWS), serves a unique purpose within the realm of digital typography. It is an invisible character that does not occupy any space in the text layout but can be used to separate elements in a text sequence, such as words or characters. The ZWS is particularly useful when dealing with complex scripts or for aligning content without affecting its visual presentation. Although it may seem counterintuitive, this seemingly empty character plays a vital role in the proper rendering and formatting of text in various applications, including word processors, web browsers, and digital publishing software. The ZWS is an essential tool for programmers and designers seeking to maintain consistency and coherence in typography across different languages and platforms.

How to type the symbol on Windows

Hold Alt and type 8203 on the numpad. Or use Character Map.

  1. Step 1: Determine the UTF-8 encoding bit layout

    The character has the Unicode code point U+200B. In UTF-8, it is encoded using 3 bytes because its codepoint is in the range of 0x0800 to 0xffff.

    Therefore we know that the UTF-8 encoding will be done over 16 bits within the final 24 bits and that it will have the format: 1110xxxx 10xxxxxx 10xxxxxx
    Where the x are the payload bits.

    UTF-8 Encoding bit layout by codepoint range
    Codepoint RangeBytesBit patternPayload length
    U+0000 - U+007F10xxxxxxx7 bits
    U+0080 - U+07FF2110xxxxx 10xxxxxx11 bits
    U+0800 - U+FFFF31110xxxx 10xxxxxx 10xxxxxx16 bits
    U+10000 - U+10FFFF411110xxx 10xxxxxx 10xxxxxx 10xxxxxx21 bits
  2. Step 2: Obtain the payload bits:

    Convert the hexadecimal code point U+200B to binary: 00100000 00001011. Those are the payload bits.

  3. Step 3: Fill in the bits to match the bit pattern:

    Obtain the final bytes by arranging the paylod bits to match the bit layout:
    11100010 10000000 10001011