Hex to ASCII Converter

Convert hexadecimal to readable text instantly. Supports hex strings, batch conversion, multiple formats — all in your browser.
100% Client-Side No Data Sent Instant Conversion No Signup

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

Frequently Asked Questions

What is the difference between hex to ASCII and hex to UTF-8?
ASCII covers 128 characters (English letters, digits, basic symbols) using values 0x00-0x7F. UTF-8 extends this to support over 1 million characters from every language, using 1-4 bytes per character. For hex values in the 0x00-0x7F range, ASCII and UTF-8 produce identical output. The difference only appears with values above 0x7F. Our tool supports both encodings.
How do I convert hex to text online?
Paste your hex string into the input field above. Our tool auto-detects the format (space-separated, continuous, colon-separated, or 0x-prefixed). The ASCII text appears instantly in the output field. You can copy the result or download it as a file. No signup, no limits, completely free.
What hex values correspond to printable ASCII characters?
Printable ASCII characters range from hex 0x20 (space) to 0x7E (tilde). That's 95 characters: 26 uppercase letters, 26 lowercase letters, 10 digits, and 33 punctuation/symbol characters. Values below 0x20 are control characters (like newline, tab), and 0x7F is the delete character.
Can I convert large hex files to ASCII?
Yes. Our tool processes files entirely in your browser, so it handles multi-megabyte hex strings without issues. Paste your hex data directly into the input field — conversion happens instantly as you type. No data is ever sent to a server.
What does '48656C6C6F' mean in ASCII?
48656C6C6F converts to the word "Hello." Here's the breakdown: 48=H, 65=e, 6C=l, 6C=l, 6F=o. Each pair of hex digits represents one ASCII character.
How to convert hex to ASCII in Python?
The simplest way: bytes.fromhex('48656C6C6F').decode('ascii') — this returns 'Hello'. The bytes.fromhex() method parses the hex string into bytes, and .decode('ascii') converts those bytes to a string. For non-ASCII hex values, use .decode('utf-8') instead.
What is ASCII code?
ASCII (American Standard Code for Information Interchange) is a character encoding standard from 1963. It assigns numbers 0-127 to 128 characters: English letters, digits, punctuation, and control codes. It's the foundation of modern text encoding — UTF-8 is backward-compatible with ASCII. Every hex pair from 00 to 7F maps to one ASCII character.
Is this tool free?
100% free, forever. No signup, no usage limits, no premium tier. The tool runs entirely in your browser using JavaScript — we don't have a server to bill you for. Convert as much hex as you need.