Hex Decoder

Decode hex strings, byte dumps, and control characters into ASCII or UTF-8 text. Runs locally in your browser with no upload step.
100% Client-Side No Data Sent Instant Conversion No Signup

Use this hex decoder for byte dumps, protocol payloads, file headers, and escaped data. It accepts common hex formats and makes control characters such as 0A and 0D easier to identify.

Hex Decoder Examples

Hex input Decoded result Meaning
48656C6C6F Hello Continuous hex string with one byte per ASCII character.
48 65 6C 6C 6F Hello The same bytes written with spaces between each hex pair.
0A Line feed (LF) Newline control character, often written as \n.
0D Carriage return (CR) Return control character, often written as \r.
0D 0A CRLF line break Two-byte line ending used in Windows files and many protocols.

The examples above show common search and debugging cases: 48656C6C6F = Hello, 0A = line feed, and 0D = carriage return.

ASCII Character Map

Printable Characters (32–126)
Char Hex Dec Description
Control Characters (0–31, 127)
Char Hex Dec Description

How Hex to ASCII Works

1

Split into byte pairs

"48 65 6C 6C 6F"[48] [65] [6C] [6C] [6F]

2

Convert each to decimal

48₁₆ = 72₁₀, 65₁₆ = 101₁₀, …

3

Map to ASCII character

72 → 'H', 101 → 'e', 108 → 'l', 108 → 'l', 111 → 'o'

Result

"Hello"

What is Hexadecimal?

Hexadecimal (base-16) is a number system that uses 16 symbols: digits 0–9 and letters A–F. It's the standard way to represent binary data in a human-readable format because each hex digit maps exactly to 4 bits, making it compact and easy to convert mentally.

Base Name Digits Example (72)
2Binary0, 101001000
8Octal0–7110
10Decimal0–972
16Hexadecimal0–9, A–F48

Every time you look at a hex dump, a network packet, or a file header, you're seeing data encoded as hex. Converting it to readable ASCII text is one of the most common operations in debugging, data analysis, and reverse engineering.

Hex to ASCII Conversion Method

The conversion from hexadecimal to ASCII is mechanical and reversible:

  1. Split the hex string into byte pairs — each pair of hex digits represents one byte (8 bits)
  2. Convert each pair to decimal — multiply the first digit by 16, add the second: 4×16 + 8 = 72
  3. Look up the ASCII character — decimal 72 = 'H', 101 = 'e', 108 = 'l', 111 = 'o'
  4. Combine characters — the result is "Hello"

ASCII vs UTF-8

For values 0x00–0x7F, ASCII and UTF-8 produce identical results — UTF-8 is backward-compatible with ASCII. The difference appears above 0x7F: ASCII can't represent these values, while UTF-8 uses multi-byte sequences to encode over 1 million characters. Toggle between encodings in the format options above.

Common Use Cases

  • Debugging network traffic — reading hex dumps from Wireshark or tcpdump
  • Reverse engineering — examining binary file headers and magic bytes
  • Web development — decoding URL-encoded or hex-escaped strings
  • Cryptography — reading hash outputs, keys, and encrypted data
  • Serial communication — interpreting UART/SPI/I2C data logs
  • Database administration — viewing BLOB and binary column data

Hex to ASCII Conversion

Hex to ASCII conversion is the process of translating hexadecimal byte values back into their corresponding ASCII characters. Each pair of hex digits represents one byte (0x00–0x7F for standard ASCII). This is the most common use of our converter — paste a hex dump and get readable text instantly.

Need to go the other direction? Use our Text to Hex converter to convert any text to hexadecimal. For individual character lookups, try the ASCII Code Converter or browse the full ASCII Table.

Dedicated landing pages are also available for hex to text conversion and the hex decoder workflow.

Related Hex Conversion Pages

Frequently Asked Questions

How do I convert hex to ASCII or text online?
Paste your hex string into the input field above. The converter accepts continuous hex, space-separated bytes, colon-separated bytes, and 0x-prefixed values. For example, 48656C6C6F decodes to Hello instantly.
What does 48656C6C6F mean in ASCII?
48656C6C6F converts to the word "Hello." The byte pairs are 48 = H, 65 = e, 6C = l, 6C = l, and 6F = o.
What do hex 0A and 0D mean?
0A is the line feed character, often written as LF or \n. 0D is the carriage return character, often written as CR or \r. Together, 0D 0A is the CRLF line ending used by Windows text files and many internet protocols.
What is the difference between hex to ASCII and hex to UTF-8?
ASCII covers 128 characters using values 0x00-0x7F. UTF-8 is backward-compatible with ASCII but also supports characters from every language using multi-byte sequences. For hex values in the 0x00-0x7F range, ASCII and UTF-8 produce identical output.
What hex values correspond to printable ASCII characters?
Printable ASCII characters range from hex 0x20 (space) to 0x7E (tilde). Values below 0x20 are control characters such as tab, line feed, and carriage return. 0x7F is the delete control character.
Can I convert large hex files to ASCII?
Yes. The tool runs entirely in your browser, so conversion happens locally without uploading data to a server. Large inputs are limited mainly by your device and browser memory.
How do I convert hex to ASCII in Python?
Use bytes.fromhex("48656C6C6F").decode("ascii") to get "Hello". For UTF-8 text, use .decode("utf-8") instead of .decode("ascii").
What is ASCII code?
ASCII (American Standard Code for Information Interchange) is a character encoding standard that maps numbers 0-127 to English letters, digits, punctuation, and control codes. Every hex pair from 00 to 7F maps to one ASCII character.
Is this hex decoder free?
Yes. The converter is free, does not require signup, and performs the conversion client-side in your browser.