Text to Unicode Converter

See the Unicode code point of every character in your text, in U+ hex, decimal, HTML or JavaScript form, with UTF-8 bytes. Also decodes code points to text.

Every character in a piece of text is stored as a number. The letter “A” is 65, the euro sign is 8364, and the thumbs-up emoji is 128077. That number is the character’s Unicode code point, and it is how computers agree on which character is which, whatever the font, language or device. This tool shows you the code point of everything you type, and works in reverse too.

What you see

Type or paste text, and choose a format for the numbers. U+0041 is the way code points are written in the Unicode charts, in hexadecimal with at least four digits. 0x41 is the same in programming style. Decimal gives plain numbers like 65. HTML gives A, the entity you can write in a web page, and JavaScript gives \u{41}, an escape sequence for code. The converted text appears in a box, one code point after another, line by line.

Below it, a table lists each different character in your text (up to the first eighty), with its code point, its decimal value and its UTF-8 bytes, the form in which it is stored in a file or sent over the web. For the letter “A” that is one byte, 41. For “é” it is two, C3 A9, and for the thumbs-up emoji four, F0 9F 91 8D.

Decoding

Switch to Decode to go from numbers to text. Give it a list of code points separated by spaces or commas, in any of the formats. The tool uses prefixes to decide what it is looking at: U+ and 0x and \u mean hexadecimal, &#x means hexadecimal, and &# without the x means decimal. A number with no prefix is read in the base of the format you chose. Anything that does not fit is passed through unchanged.

Why this is useful

Finding out what a mysterious character is. If a pasted string contains something that looks like a space, a hyphen or a quote but behaves differently, the table tells you what it really is: a non-breaking space is U+00A0, a zero-width space U+200B, an en dash U+2013. The invisible character page lists the common troublemakers.

Writing characters into code and web pages, where a typed character may not survive the file’s encoding. HTML entities and JavaScript escapes are safe in any file.

Understanding why emoji are not one character. Many are built from several code points joined together, which is why a family emoji produces a long run of numbers and why a character counter and a visual count can disagree. A flag is two code points; a thumbs up with a skin tone is two.

Debugging encoding problems. If “é” turns up on a page as “é”, the bytes C3 A9 have been read in the wrong encoding, and this table shows exactly which bytes you should expect.

The same bytes in other bases are on the hex translator and binary translator. For HTML escapes of reserved characters, there is the HTML entities tool. And to remove accents and odd characters, use remove accents or remove special characters.

Frequently asked questions

What is a Unicode code point?

It is the number assigned to a character in the Unicode standard. The letter A is U+0041, which is 65 in decimal.

Why does one emoji show several code points?

Many emoji are made of several characters joined together: a base emoji plus a skin tone, or several people joined with invisible connectors. A flag is two regional letters.

What is the difference between a code point and UTF-8 bytes?

The code point is the character's number. UTF-8 is a way of storing that number as one to four bytes. For plain English letters they look alike; for other characters the bytes are longer.