Hex to ASCII Converter — Hex ↔ Text (Free)
Decode hex bytes to ASCII/UTF-8 and encode text back to hex
Required Parameters
Waiting for input data...
Quick Answer
Each pair of hex digits is one byte. 48='H', 65='e', 6C='l', 6F='o' → Hello. Reverse: Hello → 48 65 6C 6C 6F.
Hex to ASCII Converter
Decode hexadecimal bytes to ASCII / UTF-8 text, or encode a string back to hex. Built for firmware dumps, UART captures, and protocol payloads.
Quick start: Paste 48 65 6C 6C 6F or 48656C6C6F → Hello. Switch to ASCII to Hex to encode.
Hex to ASCII table (printable)
| Hex | Char | Hex | Char |
|---|---|---|---|
| 20 | (space) | 30–39 | 0–9 |
| 41–5A | A–Z | 61–7A | a–z |
| 0A | newline | 0D | CR |
| 00 | NUL | 7F | DEL |
Hello = 48 65 6C 6C 6F. OK = 4F 4B. 0xFF as a byte is ÿ in Latin-1 / a non-ASCII UTF-8 fragment.
Accepted hex formats
- Spaced:
48 65 6C 6C 6F - Continuous:
48656C6C6F - Prefixed:
0x48 0x65 0x6C - Separators: commas, colons, hyphens
Odd-length strings are padded with a leading 0.
Hex to ASCII vs hex to binary
- This page treats hex as a byte string and decodes text.
- Hex to Binary Converter treats hex as an integer (FF → 11111111).
Related tools
Design Notes
Firmware logs, UART captures, and protocol analyzers almost always show payloads as hex. This converter decodes those bytes as UTF-8 (ASCII is the 0x00–0x7F subset). Non-text bytes still convert — they just may not be printable.
Common Mistakes
- 1
Forgetting that one ASCII character is two hex digits. 48 is 'H', not 4 and 8 as separate letters.
- 2
Mixing UTF-8 multi-byte characters with Latin-1. É is C3 89 in UTF-8, not E9 unless you meant Latin-1.
- 3
Leaving an odd number of hex digits. The converter pads a leading 0 so A becomes 0A.
Engineering Handbox
48='H', 65='e', 6C='l', 6C='l', 6F='o'
Knowledge Base
How do I convert hex to ASCII?
Split the hex string into byte pairs, convert each pair from base 16 to a character. 48 65 6C 6C 6F becomes H e l l o. This converter also accepts 0x48,0x65 and 48656C6C6F.
How do I convert ASCII or text to hex?
Switch to ASCII to Hex and type the string. Each UTF-8 byte is printed as two hex digits. Hello → 48 65 6C 6C 6F. Space is 20; newline is 0A.
What is hexadecimal to ASCII used for?
Firmware logs, UART/SPI captures, memory dumps, and protocol analyzers show payloads as hex. Decoding them to ASCII (or UTF-8) is how you read strings, AT commands, and JSON hidden in a dump.
Does this support UTF-8 or only ASCII?
It decodes bytes as UTF-8. Standard ASCII (0x00–0x7F) is a subset, so English text is identical. Multi-byte characters such as € (E2 82 AC) decode correctly.
What if my hex string has an odd number of digits?
The converter pads a leading zero so A becomes 0A. Prefer even-length strings so you do not accidentally shift every byte.
How is this different from hex to binary?
Hex to binary converts a number between bases (FF → 11111111). Hex to ASCII treats hex as a byte string and decodes it as text. Use the hex to binary converter for integers; use this page for dumps and strings.
Related Engineering Tools
Hex to Binary Converter
Hex, binary, decimal, octal, and bit shifts
ADC/DAC Resolution Calculator
LSB size, ENOB, and dynamic range
UART Baud Rate Error Calculator
Clock divider and baud rate accuracy
555 Timer Calculator
Monostable and astable timing