Skip to content
OverCalculator
  1. Home
  2. Conversion
  3. Unicode Text Converter
Conversion

Unicode Text Converter

Convert text to Unicode code points, or decode valid decimal, U plus, and hexadecimal code point notation back into characters.

Published

Converted text
Unicode code points
U+0048 U+0069
Decimal code points
72 105
Characters
2
Mode
Text to code points

Each visible character is converted to its Unicode scalar value.

Conversion

Results update as you type.

Unicode Text Converter

Unicode is the character standard that lets computers represent text from many writing systems, symbols, emoji, punctuation marks, and control characters in one shared code space. This calculator focuses on one precise part of that standard: code points. In one direction it converts text to U plus hexadecimal notation such as U+0048 U+0069. In the other direction it decodes valid code point tokens back into text.

Despite the broad name, this page does not style text into mathematical bold, circled, gothic, or upside-down characters. It is an inspection and decoding tool. Use it when you want to identify exactly which character is present, share a code point with a developer, debug a copy-paste issue, or explain why two symbols that look similar are not the same.

What Unicode code points are

A Unicode code point is a number assigned to a character. The letter H is U+0048, the lowercase i is U+0069, the space character is U+0020, and the grinning face emoji is U+1F600. The “U+” prefix tells readers that the number is written in Unicode hexadecimal notation.

Code points are different from fonts and different from byte encodings. A font decides how a character looks on screen. UTF-8, UTF-16, and UTF-32 decide how a code point is stored as bytes. This converter stays at the code point level so the result is stable across fonts and platforms.

Accepted code formats

Input tokenHow the calculator reads itExample result
U+0048Hexadecimal after U+H
0x48Hexadecimal after 0xH
72Decimal code pointH
1F600Bare hexadecimal because it contains F😀
0048Decimal because it contains only digits0

That last row is an important edge case in the current calculation. The result note says decimal values, hexadecimal values, or U+ notation are accepted, but bare all-digit tokens are treated as decimal first. For unambiguous hexadecimal, include U+ or 0x.

Exact behavior of this calculator

In Text to codes mode, the calculation converts the input string with Array.from(text). For each character it calls codePointAt(0), formats the number in uppercase hexadecimal, pads to at least four digits, and prefixes it with U+. The primary result is the space-separated U+ list. The secondary lines show decimal code points, the number of characters, and the mode label. If the input is empty, the primary and decimal fields display an em dash.

In Codes to text mode, the input is split on spaces, commas, or semicolons. Empty tokens are discarded. A token that matches U+ followed by hex digits is parsed as hexadecimal. A token that matches 0x followed by hex digits is also parsed as hexadecimal. A token containing only decimal digits is parsed as decimal. A bare token of two to six hexadecimal characters is parsed as hexadecimal only if it did not already match the decimal rule. Any point below 0 or above U+10FFFF makes the result invalid. Valid points are passed to String.fromCodePoint.

Worked examples with checked results

The default input is Hi in text-to-codes mode. The calculator reads H as decimal 72, formats it as hex 48, pads it to four digits, and displays U+0048. It reads i as decimal 105, formats it as hex 69, and displays U+0069. The primary result is U+0048 U+0069. The decimal line is 72 105, the character count is 2, and the copy text is U+0048 U+0069.

For the reverse direction, enter 72 105 in codes-to-text mode. Both tokens are all digits, so they are parsed as decimal. Decimal 72 becomes H and decimal 105 becomes i. The primary result is Hi, the code-points-read line is 2, and the hex line is U+0048 U+0069.

For an emoji, enter U+1F600. The parser reads hexadecimal 1F600 and decodes it to 😀. Entering 1F600 also works because the token contains F, which prevents it from being treated as decimal.

Unicode code point inspection is useful for spotting nonbreaking spaces, curly quotes, look-alike letters, emoji sequences, and symbols copied from rich text. It also helps explain why a database, URL, or program accepts one character but not another. For related OverCalculator pages, see the digital storage converter for bytes and units, the lowercase to uppercase converter for case transformation, and the leet-speak translator for a playful substitution system.

The main pitfalls are confusing code points with bytes, assuming every visible glyph is one code point, and omitting a prefix on hexadecimal values that contain only digits. Combining marks, variation selectors, and zero-width joiners can make a displayed character more complicated than it appears. When precision matters, copy the U+ output rather than describing the character by sight.

Sources

Frequently asked questions

What does this Unicode text converter output?
In text-to-codes mode, it outputs one U plus hexadecimal code point for each JavaScript character produced by Array.from. It also lists decimal code point values and a character count. It does not create decorative fonts, bold letters, circled letters, or upside-down text.
Can the converter turn code points back into text?
Yes. In codes-to-text mode, enter code points separated by spaces, commas, or semicolons. The parser accepts U plus notation such as U+0048, 0x notation such as 0x48, decimal notation such as 72, and some bare hexadecimal tokens that contain A through F.
Why is bare 0048 not recommended here?
The current calculation checks all-digit tokens as decimal before it checks bare hexadecimal. That means 0048 is read as decimal 48, which is U+0030, the character 0. Use U+0048 or 0x48 when you intend hexadecimal H.

Related calculators

Unicode Text Converter updated at