ETEvoraTools
Encoding & Decoding

Hex to Text

Hex to Text removes all whitespace, requires zero or more complete hexadecimal byte pairs, converts each pair to a byte, and decodes the byte array as UTF-8. Uppercase and lowercase digits are accepted. Invalid UTF-8 is replaced rather than rejected, so successful parsing proves only valid hex syntax—not that the bytes formed well-encoded text.

Runs locally — files stay on your device
Quick answer

Can hex input contain spaces or line breaks?

Yes. All whitespace is removed before pair validation.

Hex validity and text validity are separate

Even-length hexadecimal can always describe bytes, but those bytes may not form valid UTF-8 character sequences.

How it works

Whitespace is stripped, a regular expression enforces two hex digits per byte, pairs become numbers, and TextDecoder creates text.

Key concepts

Whitespace ignored

41 42 and 4142 both become AB.

Replacement decoding

Malformed UTF-8 can produce �.

When to use it

  • Decode UTF-8 hex output.
  • Read byte pairs copied with spacing.
  • Inspect a known textual protocol value.

When not to use it

  • Do not use it for arbitrary binary rendering.
  • Do not expect invalid UTF-8 to fail.
  • Do not paste 0x prefixes or punctuation.

Worked examples

ASCII

Input
48 69
Expected output
Hi

Spaces are removed.

UTF-8

Input
c483
Expected output
ă

Two bytes form one character.

Odd digit

Input
abc
Expected output
Error

The final byte is incomplete.

Common mistakes

Including 0x

x is not accepted. Correction: Remove prefixes.

Assuming parser success means valid text

TextDecoder can substitute. Correction: Use strict UTF-8 validation when required.

Expecting code-point decoding

Pairs are bytes. Correction: Encode characters as UTF-8 first.

Best practices

  • Keep byte pairs intact.
  • Know the source charset.
  • Inspect replacement characters before reuse.

Related operations and differences

Base64 Decoder

Choose Base64 Decoder when you need to decode Base64 into readable text.; use Hex to Text specifically for hex decode.

Binary to Text

Choose Binary to Text when you need to decode 8-bit binary groups into text.; use Hex to Text specifically for hex decode.

Text to Hex

Choose Text to Hex when you need to encode UTF-8 text as hexadecimal.; use Hex to Text specifically for hex decode.

Base64 Encoder

Choose Base64 Encoder when you need to encode text as Base64 in your browser.; use Hex to Text specifically for hex decode.

ROT13 Decoder

Choose ROT13 Decoder when you need to decode ROT13 text locally.; use Hex to Text specifically for hex decode.

Text to Binary

Choose Text to Binary when you need to encode text as 8-bit binary groups.; use Hex to Text specifically for hex decode.

Limitations and privacy

  • UTF-8 interpretation only; no strict fatal mode, alternate charset, binary download, offset display, prefixes, or non-whitespace separators.

The entered value is transformed locally in this browser and is not sent to the Toolbox server.

Copying or pasting sensitive output into another service is a separate disclosure decision.

Frequently asked questions

Are uppercase digits accepted?

Yes.

Is empty input valid?

It parses as no bytes and returns an empty result.

Why is � displayed?

The bytes were malformed UTF-8.

Can commas separate bytes?

No.

References