Hexadecimal to text converter

Decode hexadecimal code into readable text. Paste the bytes in any common notation and the text appears as you type. The decoding is done in your browser and nothing is uploaded.

How it works

  1. Paste your text

    Type or paste the text in the left box, or open a .txt file. No text to hand? Click Example.

  2. Instant result

    The result appears as you type. Change the options and see straight away what changes.

  3. Copy or download

    Copy the result with one click, save it as a file or use it as input for a next step.

Example

48 65 6C 6C 6F 20 C3 A9 F0 9F 98 80 becomes Hello é😀: the first six bytes are plain ASCII, C3 A9 is the letter é and F0 9F 98 80 is an emoji. The note says that 12 bytes were read as UTF-8.

Accepted notation

  • 48 65 6C with spaces
  • 0x48,0x65,0x6C with a 0x prefix and commas
  • 48:65:6C with colons
  • 48656C as one string, as long as the number of digits is even

Invalid input

A character that is not a hexadecimal digit is reported with its position, for example Invalid character "z" at character 1. A group with an odd number of digits gets a message about the expected length.

Related

To encode text into hexadecimal, use text to hex. The same bytes in binary are in binary to text, and a list of character numbers in text to ASCII.

Frequently asked questions

Which hexadecimal formats are accepted?

Pairs of hex digits with spaces, commas or colons between them, with or without 0x in front, or one long string. `48 69 21`, `0x48,0x69,0x21` and `486921` all give `Hi!`.

What does an error about group length mean?

Every byte needs exactly two hex digits. `486` has three, so the last byte is incomplete. The message shows where the problem group starts.

Is the input case-sensitive?

No. `4a` and `4A` are the same byte.

What if the bytes are not text?

The tool reads them as UTF-8 and, if that is impossible, reports it and shows each byte as one Latin-1 character. Data from an image or an executable decodes to nonsense.