About the Unicode Unescape
Unicode escapes appear in many forms: \u00e9 in JavaScript and JSON, \u{1F30A} in modern JavaScript, U+1F30A in documentation, and 🌊 in HTML. This tool recognises all of them and converts each to the character it names, combining surrogate pairs where needed so emoji come out whole.
It is handy for reading a string that a log or a debugger printed with escapes, or for turning a code point you looked up in a chart into the actual character. Escapes are matched wherever they sit, and anything that is not an escape passes through untouched, so a log line with a few \u sequences among ordinary words comes back readable in a single pass. Adjacent surrogate escapes are combined before anything else, which is what makes emoji reassemble instead of showing as two empty boxes.
The one case it deliberately leaves alone is a backslash that was itself escaped. Inside a JSON string, \\u00e9 means the six literal characters and not an é, so unescaping it here would be wrong; run that text through JSON Unescape first and this tool second. Named HTML entities belong in HTML Unescape, and the Unicode Escape tool produces these sequences.
How to use
- Paste text containing Unicode escapes.
- Read the decoded characters.
- Mixed plain and escaped text is fine.
Common questions
- Which escape forms are supported?
- \uXXXX, \u{...}, U+XXXX, and HTML numeric references in decimal and hex.
- Does it combine surrogate pairs?
- Yes. Two \u escapes forming a surrogate pair become the single character, such as an emoji.
- What about named HTML entities like ©?
- Those are handled by the HTML Unescape tool; this one handles numeric and \u forms.