Hex to Text Converter
Free online hex to text converter that decodes any hexadecimal string back to readable text. Ignores 0x prefixes, \x escapes, and any separators — just paste and the readable output appears instantly. Full UTF-8 support means emojis, accented letters and non-Latin scripts all decode correctly. No signup, runs entirely in your browser.
Input
Type or paste — output updates live0x48 0x65, \x48\x65, 48:65, or plain 4865. The decoder strips everything except the hex digits and groups them into byte pairs automatically. Press Ctrl+Enter (or Cmd+Enter) to convert.
Output
Ready when you areYour decoded text will appear here
Paste some hex in the input box or click Example to see how it works.
What does this Hex to Text Converter do?
This free online hex to text converter reads a hexadecimal string — numbers in base 16 that use the digits 0-9 and letters A-F — and turns it back into readable text. Each pair of hex digits represents one byte, and each byte maps to a character through an encoding like UTF-8. For example, the hex string 48 65 6C 6C 6F decodes to the word Hello.
The tool works in both directions. Paste hex into the input box and the decoded text appears immediately, live, as you type. Switch to the Text → Hex tab to go the other way — type any text and it gets encoded into hex using the case, separator and prefix options you choose.
The decoder is very forgiving. It strips 0x prefixes, \x escapes, HTML entities like H, and any separator characters (spaces, commas, colons, newlines). All it actually cares about are the hex digits themselves, which get grouped into byte pairs and decoded as UTF-8.
Everything runs locally in your browser. Whatever you paste never leaves your device, there is no signup, and there are no usage limits. Decode as much hex as you want, as many times as you want.
How to convert hexadecimal code to text
- Paste your hex. Drop in any hex string — with or without separators, with or without
0xprefixes. The decoder strips everything that isn't a hex digit. - Watch the decoded text. The output appears immediately — no button press needed. Every pair of hex digits is decoded as UTF-8 bytes back into characters.
- Check the stats. The panel shows the number of hex digits, the number of bytes, and the length of the decoded output.
- Copy or download. Use the Copy Output button to grab the decoded text, or Download to save it as a plain text file.
- Need to reverse it? Click the Text → Hex tab, type your text, and it encodes into hex using the same settings.
Why use this Hex to Text Converter?
Live decoding
Output appears the instant you paste. No button press needed — everything runs in your browser.
Format-tolerant
Ignores 0x prefixes, \x escapes, and any separator. Paste hex in any common format and it just works.
Two-way conversion
Decode hex to text or encode text back to hex with a single click. Same tool, both directions.
Full UTF-8 support
Emojis, accented letters, Arabic, Chinese, Hindi and Cyrillic all decode correctly.
100% private
Everything runs locally. Your hex never leaves your device — no server, no logs, no tracking.
Works offline
Once the page loads, you can decode hex to text without an internet connection.
Hex character reference
Here are a few common characters and what they look like in hexadecimal. This is what the decoder looks up when it reads each byte pair.
| Character | Hex | Decimal | Binary (8-bit) |
|---|---|---|---|
H | 48 | 72 | 01001000 |
e | 65 | 101 | 01100101 |
l | 6C | 108 | 01101100 |
o | 6F | 111 | 01101111 |
A | 41 | 65 | 01000001 |
a | 61 | 97 | 01100001 |
0 | 30 | 48 | 00110000 |
| Space | 20 | 32 | 00100000 |
! | 21 | 33 | 00100001 |
Newline \n | 0A | 10 | 00001010 |
So 48 65 6C 6C 6F decodes to "Hello", and 48 69 21 decodes to "Hi!". Hex is case-insensitive — 6c, 6C, 6c all mean the same byte.
Common hex formats you can paste
The decoder is designed to be forgiving about formatting. Here are the most common hex notations you might encounter, all of which decode correctly:
| Format | Example | Common in |
|---|---|---|
| Plain byte pairs | 48 65 6C 6C 6F | Hex editors, documentation, most tools |
| 0x prefixed | 0x48 0x65 0x6C | C, C++, Java, security tools |
| \x escaped | \x48\x65\x6C | Python, JavaScript, shell scripts, regex |
| HTML entities | He | HTML source, web pages |
| Colon separated | 48:65:6C:6C:6F | MAC addresses, network captures, packet dumps |
| Comma separated | 48, 65, 6C | Data exports, spreadsheet output |
| No separator | 48656C6C6F | Compact strings, database storage |
You can mix formats freely within one paste — the decoder only looks at the hex digits, so any separators and prefixes are ignored.
Common uses for hex to text conversion
Debugging encoding issues
When a file shows up with garbled characters (mojibake) or a database stores strings incorrectly, looking at the raw hex often reveals the problem. Being able to decode it back to text quickly is essential for tracking down encoding bugs.
Reading network captures and packets
Wireshark, tcpdump and similar tools show packet payloads in hex. When the payload is text, converting to readable form is the fastest way to understand what's happening on the wire.
Inspecting memory dumps and shellcode
Security researchers work with hex constantly — memory dumps, shellcode, exploit payloads, and forensic artifacts are all typically hex encoded. Converting to text is a routine operation.
Web development
URLs and HTML entities use percent-encoding or hex escapes. When debugging a broken link or inspecting HTML source, decoding hex reveals the underlying string.
Learning about encodings
Decoding hex back to text is one of the best ways to see how UTF-8, Latin-1 and other encodings actually work at the byte level.