BMP and supplementary values

Reveal UTF-16 code units and surrogate pairs

See why one supplementary value such as ๐Ÿ˜€ occupies two JavaScript string units while remaining one Unicode scalar.

Runs locally

Inspect or reconstruct text

Text stays in this browser

Up to 20,000 UTF-16 units and 2,000 scalar values. No normalization or repair.

Decode accepts only whitespace-separated U+ hexadecimal tokens. Other syntaxes are rejected.

Exact result

Unicode evidence

Scalar values7
UTF-16 units11
UTF-8 bytes25
U+ sequence
UTF-8 byte sequence

Scalar rows

ValueCode pointDecimalUTF-8UTF-16Escape
๐Ÿ‘จU+1F468128104F0 9F 91 A8D83D DC68\u{1F468}
โ€U+200D8205E2 80 8D200D\u200D
๐Ÿ‘ฉU+1F469128105F0 9F 91 A9D83D DC69\u{1F469}
โ€U+200D8205E2 80 8D200D\u200D
๐Ÿ‘งU+1F467128103F0 9F 91 A7D83D DC67\u{1F467}
โ€U+200D8205E2 80 8D200D\u200D
๐Ÿ‘ฆU+1F466128102F0 9F 91 A6D83D DC66\u{1F466}

No normalization, trimming, case change, replacement or hidden classification is applied.