Online Text to Hexadecimal & Hex to Text Converter
Instantly convert plain text and UTF-8 strings (including international characters and emojis) into hexadecimal representation, or decode hex bytes back into human-readable text. Featuring 9 developer output formats (space-separated, 0x arrays, \x string escapes, URL percent-encoding, HTML hex entities, and CSS escapes) plus a live 16-byte Hex Dump inspector.
Hex Dump / Byte Inspector (16 Bytes per Row)
Enter text or hexadecimal data above to inspect byte offsets.
How to Convert Text to Hexadecimal (and Hex to Text)
- Select Conversion Direction – Choose Text → Hexadecimal to encode strings into hex bytes, or Hexadecimal → Text to decode hex values back into readable characters.
- Enter Your Data – Type or paste your input into the Source Input box on the left, or click Sample Text / Sample Hex to test immediately.
- Configure Encoding & Format – Select UTF-8 (recommended for modern text and emojis) or ASCII, and choose from 9 output formats including
0xC arrays,\xescapes, URL%encoding, or HTML entities. - Inspect & Export – View byte offsets in the Hex Dump Inspector and click Copy to Clipboard or Download .txt.
Understanding ASCII vs. UTF-8 Hexadecimal Encoding
In computing, every byte of data consists of 8 bits, which can hold a value from 0 to 255 in decimal—or 00 to FF in base-16 hexadecimal (where each hex digit represents exactly 4 bits, or one "nibble").
While basic English characters take only 1 byte in both ASCII and UTF-8, international characters and emojis require between 2 and 4 bytes in UTF-8:
| Character | Unicode Code Point | UTF-8 Hex Bytes | Byte Count | HTML Hex Entity |
|---|---|---|---|---|
A (Latin Capital A) |
U+0041 |
41 |
1 byte | A |
é (Latin Small E with Acute) |
U+00E9 |
C3 A9 |
2 bytes | é |
€ (Euro Sign) |
U+20AC |
E2 82 AC |
3 bytes | € |
🚀 (Rocket Emoji) |
U+1F680 |
F0 9F 9A 80 |
4 bytes | 🚀 |
Quick ASCII-to-Hex Reference Table
| Character Group | ASCII Characters | Decimal Range | Hexadecimal Range |
|---|---|---|---|
| Line Feed (LF) / Newline | \n |
10 |
0A |
| Carriage Return (CR) | \r |
13 |
0D |
| Space | (space) |
32 |
20 |
| Digits (0–9) | 0 through 9 |
48 – 57 |
30 – 39 |
| Uppercase Letters (A–Z) | A through Z |
65 – 90 |
41 – 5A |
| Lowercase Letters (a–z) | a through z |
97 – 122 |
61 – 7A |
Frequently Asked Questions
How do I convert a hex string with "0x" or "\x" prefixes back to text?
Select Hexadecimal → Text (Decode) in the settings panel and paste your hex string into the input box. With Ignore whitespace, prefixes & separators checked, prefixes like 0x, \x, %, and commas are stripped automatically before decoding.
Why do HTML Hex Entities (é) look different from UTF-8 bytes (C3 A9)?
HTML numeric character references (&#x...;) and CSS escapes (\00E9) represent the character's Unicode code point (U+00E9 for é), whereas standard hex encoding represents the UTF-8 byte sequence (C3 A9) stored in memory. Our converter handles both accurately so your HTML entities never render as garbled text.
What do the dots (.) mean in the right column of the Hex Dump Inspector?
In standard hex dump utilities (such as xxd or hexdump -C), the right-hand ASCII column displays printable ASCII characters (bytes 20 to 7E) directly and substitutes non-printable control characters (like newline 0A) or multi-byte UTF-8 continuation bytes with a period (.) so the column alignment remains intact.