Hex to ASCII Text Converter
Decode hex to ASCII/UTF-8 text in your browser. Handles 0x, \x, colons and spaces between bytes. Free, private, nothing uploaded.
About this tool
Decode a string of hex bytes back into readable text. Common separators are stripped automatically: spaces, colons, commas, dashes, and 0x or \x prefixes all paste in as-is from packet captures, log lines, and language literals.
Bytes are decoded as UTF-8, which includes plain ASCII and also handles accented characters, emoji, and other multi-byte sequences correctly.
Common uses
- Decode a hex dump from a network capture or proxy log.
- Read a hex-encoded string literal copied from source code.
- Inspect hex-encoded values from a database BLOB or Redis key.
Automate via API
The same conversion is available as a REST endpoint for scripts, pipelines, and backends:
curl -X POST https://payloadly.com/api/v1/tools/hex-to-text \ -H "Content-Type: text/plain" \ -H "X-Api-Key: YOUR_API_KEY" \ --data-binary @input.txt
Worked examples
Real payloads from tools people use daily, with the exact output this converter produces. Every example runs in your browser, so you can load one and adapt it to your own data.
Decode a hex payload from a packet capture
tcpdump and Wireshark show payload bytes as hex pairs; paste them straight in, separators and all, to read the request line.
47 45 54 20 2f 61 70 69 2f 76 31 2f 74 6f 6f 6c 73 20 48 54 54 50 2f 31 2e 31
GET /api/v1/tools HTTP/1.1
Hex notes
Hexadecimal (base 16) uses the digits 0-9 and a-f, so one hex digit represents exactly four bits. It is the standard notation for memory addresses, byte dumps, color codes, and hashes.
- Hex values are case-insensitive; 0xFF and 0xff are the same number.
- A leading 0x prefix is a convention, not part of the value.
- Each hex digit maps to exactly one 4-bit nibble, which is why hex-binary conversion is mechanical.
Frequently asked questions
Is my data uploaded to a server?
No. This tool runs entirely in your browser using JavaScript, and there are no ads on the page. Nothing you paste or drop here is uploaded, logged, or stored, and you can verify that yourself: open your browser's developer tools and watch the Network tab while you convert (no requests leave the page), or disconnect from the internet after the page loads and keep working.
Is this hex to ASCII or hex to UTF-8?
Both. ASCII is a strict subset of UTF-8, so every two-digit byte from 20 to 7e decodes to the same printable ASCII character either way. Bytes above 7f are interpreted as UTF-8 multi-byte sequences, which is what virtually every modern system emits.
Why am I seeing replacement characters in the output?
A byte sequence that is not valid UTF-8 decodes to the � replacement character. That usually means the data is binary rather than text, or the bytes were truncated mid-character. The hex is still valid; it just does not spell text.
Is there a size limit or a fee?
The browser tool is free with no signup and comfortably handles files up to tens of megabytes (limited by your device's memory). For automated or bulk processing inside your own scripts and pipelines, use the paid REST API.
Related tools
Convert hex, decimal, binary, and octal in one place, in your browser. Auto-detects the input base, handles huge numbers. Free, no upload.
Convert hex colors to RGB and HSL (and back from rgb() values) in your browser. Supports 3-8 digit hex and alpha. Free, instant.
Encode text to hex bytes in your browser with full UTF-8 support. Space-separated pairs, ready for code or protocols. Free, instant.
Convert Unix timestamps to dates and back in your browser. Auto-detects seconds vs milliseconds, shows ISO 8601, UTC, relative time.