Convert Hex to ASCII
Decode hexadecimal bytes to ASCII text. Auto-detect separators, handle non-printable bytes four ways, batch mode. Free, offline, 100% client-side.
- Runs in your browser
- Nothing uploaded
- Free, no sign-up
Decode hexadecimal byte values into readable ASCII text. Accepts continuous digits, space/comma separators, and 0x prefixes. Four ways to handle non-printable bytes (escape, placeholder, strict, raw).
How to Use Convert Hex to ASCII
- Paste your hex input in any common format - continuous digits (
48656C6C6F), space-separated (48 65 6C 6C 6F), comma-separated, or with0xprefixes. Case doesn't matter. - Pick a separator or leave it on Auto-detect - the tool inspects your input and strips commas, spaces, and
0xprefixes as it finds them. - Choose how non-printable bytes are rendered: Escape (default, emits
xNN), Placeholder (renders·for each), Strict (treats them as errors), or Raw (literal control characters - use carefully). - Enable Batch mode if each line of input is a separate sequence. A bad line shows up in the error list below the output; the rest still decode.
- Press Convert (or Ctrl+Enter / Cmd+Enter). Auto-convert also runs 200 ms after each keystroke so you see the output as you type.
- Read the stats line: total bytes parsed, characters produced, and how many were non-printable. In batch mode it also counts successful vs failed lines.
- Copy or Download. Copy puts the decoded text on your clipboard (with an
execCommandfallback for older browsers); Download saves a plain.txtfile.
Frequently Asked Questions
What exactly does “hex to ASCII” mean?
Each pair of hex digits represents one byte (0-255), and each byte maps to one ASCII code point. 48 hex = 72 decimal = letter “H”. So 48656C6C6F decodes byte-by-byte to 72, 101, 108, 108, 111 → “Hello”. The tool repeats this for every pair in your input.
Which separators does Auto-detect handle?
Auto-detect strips the common four: 0x prefixes (0x48 0x65), commas (48,65), spaces and tabs (48 65), and plain continuous digits with no separators. Underscores as visual separators (48_65_6C) are also handled. Mix and match – 0x48, 0x65 0x6c works fine.
What counts as a “non-printable” byte?
Bytes outside the printable ASCII range 32 (space) through 126 (~). That includes control characters like x00 (null), x0A (newline), x1B (escape), and x7F (DEL), plus everything from x80 upward (which isn’t valid 7-bit ASCII at all – those are extended/high bytes used in code pages and UTF-8).
When should I use each non-printable mode?
Escape is safest for inspecting binary data – you see every byte clearly. Placeholder is cleanest for mostly-text data with occasional control bytes you want to ignore visually. Strict is for validation – if your hex is supposed to be pure printable ASCII, this flags anomalies as errors. Raw emits literal control characters – useful when piping into a shell that interprets them, dangerous in a browser text box.
What happens with odd-length hex?
You get an error: “Hex string must have an even number of digits.” Every byte needs 2 hex digits (one for each nibble), so A alone is ambiguous – is it 0A or A0? Rather than guessing, the tool refuses. Prepend or append a zero if you know which you meant.
What’s batch mode for?
When each line of your input is a separate hex sequence (maybe a column of database values, or multiple packets from a capture). Batch mode decodes each line independently and shows which ones failed in a red error list below the output. Without batch mode, all lines are concatenated into one big hex value.
How does this differ from a hex-to-UTF-8 decoder?
ASCII is strictly 7-bit (bytes 0-127). UTF-8 extends to multi-byte sequences for characters beyond ASCII – a byte like C3 A9 in UTF-8 is the single character “é”, but in pure ASCII it’s two non-printable bytes. If your hex represents UTF-8-encoded text, use the hex-to-UTF-8 tool instead; this one treats each byte as a standalone ASCII code.
Is my hex input sent anywhere?
No. Everything runs in your browser’s JavaScript engine – no network requests fire during conversion, and no server stores or logs your input. You can verify in the Network tab of DevTools. The tool keeps working even after you disconnect from the internet.
How big an input can I convert?
Practically unlimited. The algorithm is O(n) and processes roughly 1 MB of hex (100,000 bytes) in under 50 ms on a modern laptop. Very large pastes may take a moment to render in the output textarea, but the conversion itself stays fast.
Can I round-trip ASCII to hex and back?
Yes. Feed this tool’s output into a “text to hex” converter (or use our companion “convert ASCII to hex” tool), and you’ll recover the original hex exactly – assuming every byte was in the printable ASCII range. Non-printable bytes round-trip correctly in Raw and Strict modes; Escape mode adds explicit backslash sequences that the reverse tool would need to re-interpret.
Related Tools
ASCII to Hex Converter →
Convert ASCII to Hex - code points or UTF-8 bytes, space/comma/0x-prefixed, uppercase or lowercase.…
Add Hex Numbers →
Add Hex Numbers instantly. Free, offline, client-side tool that outputs results in both hex…
Base32 to Hex Converter →
Base32 to Hex Converter - pick separator, case, and prefix. Free, client-side, instant, offline,…
Base58 to Hex Converter →
Decode Bitcoin, Ripple, or Flickr Base58 strings to hex - with separator, case, and…
Base64 to Hex Decoder →
Decode Base64 to hex bytes - URL-safe variant, separator options, uppercase toggle, UTF-8 aware.…
BCD to Hex Converter →
Convert packed BCD to hexadecimal - decimal-value or nibble mode, BigInt precision, COMP-3 sign.…
Convert Decimal to Hex →
Convert decimal numbers to hexadecimal instantly, individually or in bulk. Free, client-side converter with…
Convert Gray Code to Hex →
Decode Gray code (reflected binary) to hex, decimal, or binary. Accepts binary or hex-packed…
Convert Hex to BCD →
Convert hex to Binary Coded Decimal - packed, unpacked, or COMP-3 with sign nibble.…
Convert Hex to Binary →
Convert hex to binary with nibble-accurate bit widths. 5 grouping modes, 0b prefix toggle,…
Convert Hex to Decimal →
Convert hex to decimal with BigInt precision. Explicit bit-width two's complement for signed values,…
Convert Hex to Gray Code →
Convert hex to Gray code (reflected binary) with BigInt precision. Handles 32+ bit values…