Encoding
AvailableHTML Entity Encoder/Decoder
Convert special HTML characters to and from entities.
Enter text to convert locally. Unicode is not normalized.
Conversion output appears here.
Read-only output remains selectable and can be copied manually.
Decode uses the selected format and separator. Empty tokens from repeated separators are rejected; surrounding whitespace is ignored. Classic JavaScript escapes are written together so surrogate pairs remain valid.
Nothing you enter is uploaded or automatically saved. Copying and downloads happen only when you explicitly choose them.
Input: 0 characters · 0 code points · 0 UTF-16 units
Output: 0 characters · 0 B · 0 lines
UTF-8 bytes: 0 B · Lines: 0
Non-BMP code points: 0 · Combining marks: 0
Unicode assigns a code point such as U+1F680 to each character. UTF-8 is a byte encoding, while JavaScript strings use UTF-16 code units. An emoji like 🚀 is one Unicode code point but two UTF-16 code units, represented by a surrogate pair in classic JavaScript \uXXXX escapes.
U+ notation describes code points, not UTF-8 bytes. JavaScript \u{...} escapes represent one code point; classic \uXXXX escapes represent UTF-16 units. This tool never normalizes text: e followed by a combining acute accent remains two code points, even if it looks like é.
Conversion happens entirely in your browser. No text is sent to a server, placed in URLs, logged, or automatically stored.
JavaScript uses UTF-16 code units. Non-BMP characters such as many emoji need a high and low surrogate unit, while still being one Unicode code point.
The first encodes one UTF-16 unit, so non-BMP text uses a surrogate pair. The braced form represents one Unicode code point.
It is a readable Unicode code-point label, for example U+0041 for A and U+1F680 for 🚀.
They are the two UTF-16 units used together to represent one code point above U+FFFF.
No. It preserves the original sequence of code points, including combining marks.
A character can sometimes be represented as one precomposed code point or a base character plus combining mark; this tool leaves either form unchanged.
Use it to inspect characters that look unusual, document code points, or move between visible text and Unicode escape notation.
The rocket emoji is U+1F680, while A is U+0041.
A Unicode code point is not the same as its UTF-8 bytes; use the hex or binary tools when bytes are required.
Encoding
AvailableConvert special HTML characters to and from entities.
Encoding
AvailableTranslate text between ASCII characters and numeric codes.
Encoding
AvailableConvert UTF-8 text and hexadecimal bytes locally.
Encoding
AvailableConvert UTF-8 text and binary bytes locally.