Hex to Text Converter

Turn hex bytes into readable text (UTF-8), or show a hex dump when the bytes are binary — with spaces, colons and 0x prefixes handled.

Free · no sign-up · updated

Runs entirely in your browser. Nothing you enter leaves this page.

requests since opened: 0
Verify it yourself

This page is served with a security policy your browser enforces: it cannot open connections or load anything from other sites — not even to us.

  1. Open your browser’s developer tools (F12, or ⌥⌘I on Mac) → Network tab, then use the tool. No new requests appear.
  2. Or disconnect from the internet after the page loads — the tool keeps working, because it never needed the network.
  3. See the rule itself: in the Network tab, select this page’s document → Response Headers → content-security-policy contains connect-src 'none' and no 'unsafe-inline' for scripts.
  4. Press Test the lock: the page tries a harmless request and the browser blocks it (the Console shows the refusal).

tools v0.9.1 · build 0efa119

How to use
  1. Paste the hex — separators such as spaces, colons, commas and a leading 0x are fine.
  2. Read the text, or the hex dump if the bytes are not text.
  3. For UTF-16 text (00 after every letter), add the step “UTF-16LE → text”.

Steps

  1. 1.

Output

working…

From hex digits to text

Hex writes each byte as two digits from 0–9 and A–F, so 0x41 is 65, the letter A. The converter ignores the separators that tools add — spaces from a hex editor, colons from Wireshark or OpenSSL, commas from code — and a leading 0x. The bytes are then read as UTF-8, which is identical to ASCII for plain English and also covers every other script and emoji.

When the bytes are not text

If the bytes are not valid UTF-8 you get a hex dump instead: offset, sixteen bytes per row, and the printable characters on the right. The first bytes usually tell you what the data is. 4D 5A (“MZ”) starts a Windows executable, 1F 8B is gzip (add the Gunzip step), 50 4B 03 04 (“PK”) is a ZIP or Office document, and 25 50 44 46 (“%PDF”) is a PDF.

Windows strings are often UTF-16LE, where each ASCII character is followed by 00. Hex decode followed by “UTF-16LE → text” turns them back into readable text.

Where hex comes from

Packet captures (Wireshark’s “Copy as hex stream”), database BLOB columns, certificate fingerprints, registry exports (hex: values in .reg files), log fields that escape binary data, and payloads in exploit write-ups. Text → hex does the reverse when you need to build a test value.

Common questions

How do I convert hex to text?

Paste the hex digits. Every pair of digits is one byte, and the bytes are read as UTF-8 text. 48 65 6C 6C 6F becomes Hello.

Why do I get a hex dump instead of text?

The bytes are not valid UTF-8 text — for example a compressed or executable file. The dump shows the offset, the bytes and their printable ASCII characters, and the first bytes often identify the format.

Why is there a 00 after every letter?

That is UTF-16LE, used by Windows and PowerShell. Add the step “UTF-16LE → text” after hex decode.

Known limitations
  • Text is read as UTF-8 (which includes ASCII). Other legacy code pages are shown as a hex dump.
  • The preview of binary data stops at 4 KB; Copy hex gives everything.
  • Prefixes like \x or 0x inside the string (other than one at the start) are not stripped — remove them first or use Unicode unescape for \x.
  • Browser extensions can read any page — use a private window for sensitive data. How the lock works