Hex to String
Paste hexadecimal bytes and decode them into a readable string. The tool accepts compact hex like 48656C6C6F or separated byte values like 48 65 6C 6C 6F.
Last updated: May 30, 2026
Find this tool useful? Support the project to keep it free!
Buy me a coffeeWhat is Hex to String?
Hexadecimal is a compact way to write byte values. Each pair of hex digits represents one byte, so 48 is the byte value 72, which maps to H in ASCII and UTF-8 text. Developers often see hex bytes in logs, protocol traces, database dumps, hashes, binary file inspections, and debugging tools.
This hex-to-string converter strips common separators, validates that the input has complete byte pairs, and decodes the bytes as UTF-8 by default. Latin-1 byte mode is available when you need a direct byte-to-character mapping for older extended ASCII data.
How to Use Hex to String
Paste compact hex or separated hex bytes into the input field
Keep UTF-8 selected for normal text output
Switch to Latin-1 if the bytes are extended ASCII or not valid UTF-8
Check the validation message if the input has odd length or invalid characters
Copy the decoded string or download it
Common Use Cases
- Reading text hidden inside a hex byte sequence from logs or debugger output.
- Decoding protocol payload examples that are documented in hexadecimal.
- Inspecting copied bytes from a hex editor without writing a script.
- Checking whether a binary file header or packet section contains readable text.
- Validating hex encoder output by decoding it back into the original string.
Example Input and Output
A short status phrase represented as hex bytes is decoded into a readable string.
50 61 79 6C 6F 61 64 20 4F 4BPayload OKPrivacy
Hex input is decoded locally in the browser. No pasted payload is sent to a server.
Two hex digits per byte
Hex is base 16, so one byte from 0 to 255 is represented by exactly two digits from 00 to FF.

