Developer tool

Unicode Code Converter – Text to Code Points, HTML Entities & Escapes

See the Unicode code point of every character and get the same text as HTML entities, JavaScript escapes, URL encoding and Base64. Useful for spotting hidden characters and for embedding symbols in code.

πŸ”„ Font Styles – click Copy on any result

Unicode code points (U+XXXX)

Unicode code points (U+XXXX): Hi βœ“

HTML entities (decimal)

HTML entities (decimal): Hi βœ“

HTML entities (hex)

HTML entities (hex): Hi βœ“

JavaScript / JSON escapes

JavaScript / JSON escapes: Hi βœ“

URL encoded

URL encoded: Hi βœ“

Base64 (UTF-8)

Base64 (UTF-8): Hi βœ“

Hex bytes of code points

Hex bytes of code points: Hi βœ“

Decimal code points

Decimal code points: Hi βœ“

Styled letters are Unicode characters, not fonts. Platform fields may reject some characters, and glyph appearance varies by device and app. Screen readers may announce styled letters individually and search engines may not match them to plain words, so test the result and keep essential details in plain text. Unicode accessibility guide

Every character in Unicode has a code point – a number written as U+ followed by hexadecimal, such as U+0041 for "A" or U+2713 for "βœ“". This converter shows the code point of each character in your text and rewrites the text in the escape formats used by HTML, JavaScript, JSON, URLs and Base64, so you can paste a symbol into code without worrying about encoding.

It is also the quickest way to find invisible characters: a zero-width space shows up as U+200B, a non-breaking space as U+00A0, and a fancy Unicode letter reveals its mathematical-alphanumeric code point.

How to Use This Generator

  1. 1

    Paste the text – a symbol, a fancy font string, or a line that "looks normal but breaks".

  2. 2

    Read the U+ code points to identify each character.

  3. 3

    Copy the escape format your code needs (HTML entity, \u escape, %-encoding or Base64).

Which Format to Use Where

HTML entities (✓ or ✓) work in any HTML file regardless of its charset declaration. JavaScript escapes (\u2713, or \u{1F600} for characters beyond U+FFFF) go inside string literals in JS, TypeScript and JSON. URL encoding (%E2%9C%93) is required when a symbol appears in a query string or path. Base64 encodes the UTF-8 bytes and is used in data URLs, email and API payloads.

  • HTML: ✓ or ✓
  • JavaScript / JSON: "\u2713"
  • CSS content: "\2713"
  • URL: %E2%9C%93
  • Python: "\u2713"

Finding Hidden and Look-Alike Characters

When a string fails a comparison, a URL 404s, or text pastes with a stray gap, an invisible or look-alike character is often the cause. Paste the text here and scan the code points: U+200B (zero-width space), U+200D (zero-width joiner), U+FEFF (byte-order mark) and U+00A0 (non-breaking space) are the usual suspects. Cyrillic "Π°" (U+0430) looks identical to Latin "a" (U+0061) – a classic source of confusing bugs and phishing domains.

Understanding Fancy Unicode Text

Paste a "fancy font" string such as 𝗕𝗼𝗹𝗱 and you will see it is made of characters from the Mathematical Alphanumeric Symbols block (U+1D400–U+1D7FF), not formatting. That is why it survives copy and paste and why screen readers may read it letter by letter. The converter is a handy way to check what a decorated username actually contains.

Code Points vs Bytes

A code point is the abstract number of a character; bytes are how it is stored in a particular encoding. In UTF-8, "A" is one byte, "Γ©" is two, "βœ“" is three and most emoji are four. The hex and decimal rows here show code points, not UTF-8 bytes; the Base64 row encodes the UTF-8 bytes. Characters above U+FFFF (emoji, some symbols) are single code points but two UTF-16 units, which is why JavaScript uses the \u{…} form for them.

Frequently Asked Questions

What is a Unicode code point?

The unique number assigned to a character in the Unicode standard, written as U+ plus hexadecimal – for example U+0041 for "A".

How do I put a symbol in HTML without encoding issues?

Use the HTML entity from this page, such as ✓ – it works regardless of the file's charset.

Why does an emoji show as \u{1F600} instead of \uXXXX?

Characters above U+FFFF need the braced form in JavaScript; the four-digit form cannot hold them.

Can I decode code points back to text?

Paste "\u2713" into a JavaScript console or use String.fromCodePoint(0x2713). A decode mode is not on this page yet.

Is my text uploaded?

No. All conversion happens in your browser.

Create Unicode text in seconds – free, no sign-up.

50+ style options, a searchable symbol library and a Unicode text editor. Conversion input is processed in your browser; analytics and advertising practices are explained in the Privacy Policy.