Hex to ASCII Converter

Convert hexadecimal to text and text to hexadecimal with support for both UTF-8 and ASCII encoding. Use it as a hex-to-ASCII converter to decode plain hex dumps, or as an ASCII-to-hex converter to encode ASCII text into hexadecimal values. It also supports full UTF-8 text, including accented characters, emoji, and other Unicode characters beyond the ASCII range.

Encoding
Hex Case
Spaces, "0x" prefixes, and colons are all fine — only the hex digits themselves matter.
Result Live

How hex to text conversion works

Each pair of hex digits is one byte
48 65 6c 6c 6f → H e l l o

Every two hex digits represent one byte (a value from 0 to 255), and each byte maps to a character. For plain ASCII text, that mapping is one byte per character. For anything outside ASCII — accented letters, symbols, emoji — UTF-8 uses two, three, or even four bytes for a single character, which is why this tool decodes UTF-8 by default rather than assuming one byte always equals one character.

A character that needs more than one byte
c3 a9 → é (2 bytes, one character)

ASCII vs. UTF-8 mode

UTF-8 is a superset of ASCII — every plain ASCII byte decodes identically in either mode, so leaving this on UTF-8 never gets a plain "hex to ASCII" query a wrong answer. Switch to strict ASCII mode specifically when you want the tool to flag any byte above 127 as an error, rather than silently interpreting it as part of a multi-byte character.

Flexible input formatting

Paste hex however it's formatted — with spaces, colons (48:65:6c), "0x" prefixes (0x48 0x65 0x6c), or as one continuous string (48656c6c6f) — all are accepted the same way, since only the hex digits themselves matter.

Frequently asked questions

How do I convert hex to ASCII?

Paste your hex string above — spaces, colons, and 0x prefixes are all fine. Each pair of hex digits converts to one byte, and each byte maps to a character.

What does 48 65 6c 6c 6f mean in hex?

It decodes to "Hello" — a classic example, since each of those five hex byte pairs maps to one ASCII letter.

What's the difference between hex to ASCII and hex to text?

ASCII only covers 128 basic characters (plain English letters, digits, and common symbols). "Hex to text" usually implies UTF-8, which covers virtually every character in every language, plus emoji, using more than one byte per character when needed. This tool supports both, defaulting to UTF-8 since it handles ASCII correctly too.

Why does my hex show an error instead of decoding?

Usually one of two things: an odd number of hex digits (each byte needs exactly two), or a byte value that doesn't form valid text in the selected encoding — for example, a byte above 127 in strict ASCII mode.