Hex ↔ Text

Converts text to hexadecimal bytes or hex back to text (UTF-8).

Hex ↔ Text is a free converter that turns plain text into hexadecimal bytes and decodes hex back into readable text. It encodes using UTF-8, so each character becomes one or more two-digit hex bytes, which is handy when inspecting byte-level data or preparing hex literals. Everything runs in your browser, making it useful for quick encode/decode tasks without leaving the page.

Common uses

  • Convert a string to its UTF-8 hexadecimal byte representation for debugging
  • Decode a hex dump or hex literal back into readable text
  • Inspect how multi-byte or non-ASCII characters are encoded as bytes
  • Prepare hex-encoded values to paste into code, configs, or protocol tests
  • Verify byte sequences when comparing hashes, payloads, or wire formats

FAQ

Is my data sent to a server?

No. The conversion runs entirely in your browser using the built-in TextEncoder and TextDecoder APIs, and nothing you type is uploaded or stored on any server.

What character encoding does it use?

It uses UTF-8. Text is encoded to UTF-8 bytes before conversion to hex, and hex is decoded back through UTF-8, so non-ASCII characters may map to multiple bytes.

Does it accept hex with spaces or whitespace?

Yes. When decoding, all whitespace is stripped before parsing, so you can paste hex separated by spaces or newlines.

Why do I get an error when decoding?

Decoding fails if the cleaned hex string has an odd number of digits or contains characters outside 0-9 and a-f (case-insensitive), since each byte requires exactly two valid hex digits.

Is the hex output upper or lower case?

Encoded output is lower-case, with each byte zero-padded to two digits. For decoding, both upper and lower case hex digits are accepted.

Related tools

  • Base32 Encode / Decode
  • Base58 Encode / Decode
  • Base62 Encode / Decode
  • Base64 Encode / Decode
  • Base64URL Encode / Decode
  • Binary ↔ Text
  • Char Codes
  • HTML Entity Encode / Decode