Skip to main content
I
Uni
UNICODE
Tools/Hex Converter

Universal Hex Converter & Multi-Base Unicode Encoder

Instantly convert any text, symbol, or emoji into Hexadecimal, Decimal, Binary, Octal, HTML Entities, CSS Escapes, and programming string literals.

Input Text or String
Unicode Codepoint (U+XXXX)

Universal Unicode standard representation

U+0055 U+006E U+0069 U+0063 U+006F U+0064 U+0065 U+0020 U+0031 U+0036 U+002E U+0030 U+0020 U+26A1
Hexadecimal UTF-8 Bytes (0xXX)

Raw UTF-8 byte stream in base-16

0x55 0x6E 0x69 0x63 0x6F 0x64 0x65 0x20 0x31 0x36 0x2E 0x30 0x20 0xE2 0x9A 0xA1
Decimal Codepoints (Base-10)

Integer value of each codepoint

85 110 105 99 111 100 101 32 49 54 46 48 32 9889
Decimal UTF-8 Bytes

Byte values 0-255

85 110 105 99 111 100 101 32 49 54 46 48 32 226 154 161
Binary (Base-2 Byte Stream)

8-bit binary representation per UTF-8 byte

01010101 01101110 01101001 01100011 01101111 01100100 01100101 00100000 00110001 00110110 00101110 00110000 00100000 11100010 10011010 10100001
Octal (Base-8)

Octal byte values

125 156 151 143 157 144 145 040 061 066 056 060 040 342 232 241
HTML Entity (Decimal)

Standard decimal entity for web pages (&#NNN;)

Unicode 16.0 ⚡
HTML Entity (Hex)

Hexadecimal entity for web pages (&#xNNN;)

Unicode 16.0 ⚡
JavaScript / Python / C++ (\uXXXX)

Source code string literal escape sequences

\u0055\u006E\u0069\u0063\u006F\u0064\u0065\u0020\u0031\u0036\u002E\u0030\u0020\u26A1
CSS Unicode Escape (\XXXXXX)

CSS content property escape values

\000055 \00006E \000069 \000063 \00006F \000064 \000065 \000020 \000031 \000036 \00002E \000030 \000020 \0026A1
URL Percent-Encoded

RFC 3986 URI encoded string

Unicode%2016.0%20%E2%9A%A1

Hex & Codepoint Conversion

Encode text to hex bytes and Unicode codepoints using standard library.

1# Python 3 - Hex & Unicode Codepoint Conversion
2text = "Unicode 16.0 ⚡"
3
4# 1. UTF-8 Hex Bytes (e.g. '55 6e 69 ... e2 9a a1')
5utf8_bytes = text.encode('utf-8')
6hex_bytes = ' '.join(f"{b:02X}" for b in utf8_bytes)
7print("UTF-8 Hex Bytes:", hex_bytes)
8
9# 2. Unicode Codepoints (e.g. 'U+0055 U+006E ... U+26A1')
10codepoints = ' '.join(f"U+{ord(c):04X}" for c in text)
11print("Codepoints:", codepoints)
12
13# 3. Decode Hex Bytes back to String
14restored = bytes.fromhex(hex_bytes.replace(" ", "")).decode('utf-8')
15assert restored == text
16print("Restored:", restored)
Python 3Zero external runtime dependencies • Standard Library
UTF-8 & Unicode 16.0 Compatible

The Architecture of Unicode Multi-Base Encodings (Hex, Binary & UTF-8)

In computer architecture, every textual character is fundamentally an abstract number known as a Unicode Codepoint. Codepoints are universally written in hexadecimal (base-16) notation prefixed by U+ (such as U+0041 for Latin capital ‘A’ or U+1F680 for Rocket 🚀).

When storing or transmitting these codepoints over the internet, variable-length encoding schemes like UTF-8 serialize them into 1 to 4 bytes. For ASCII characters (0–127), UTF-8 uses exactly 1 byte. For European, Arabic, Cyrillic, and Indic scripts, it uses 2 or 3 bytes, while modern emojis and rare historic ideographs use 4 bytes.

Supported Developer Escape Standards

  • JavaScript / TypeScript: \uXXXX (BMP) and \u{XXXXX} (ES6 astral planes).
  • HTML Web Standards: Decimal &#NNN; and Hexadecimal &#xNNN; entities.
  • CSS Pseudo-Elements: 6-digit hex format (e.g. \01F680) for ::before/::after.
  • RFC 3986 URI Percent-Encoding: Safe transmission for URL parameters and API endpoints.

Frequently Asked Questions (FAQs)

How do I convert Hex back to plain text?+

You can paste hex bytes (e.g. 0x48 0x65 0x6C 0x6C 0x6F) or codepoints (U+0048 U+0065) into the input box to instantly inspect the resulting decoded character stream.

What is the advantage of using UTF-8 over UTF-16 or UTF-32?+

UTF-8 is backward-compatible with ASCII and uses only 1 byte for standard English text, saving bandwidth and disk space, whereas UTF-16 uses a minimum of 2 bytes and UTF-32 uses 4 bytes for every character.

Can I convert large strings or source code files?+

Yes, this tool processes everything client-side using JavaScript Typed Arrays and TextEncoder with zero file size restrictions.