Hex & Text Converter

Turn plain text into hexadecimal — or decode hex bytes back into readable text — instantly and UTF-8 safe.

🔒 100% private — nothing is uploaded, runs entirely in your browser

How it works

Every character is stored as one or more bytes. Hexadecimal (base-16) writes each byte as two digits from 00 to ff — a compact, human-readable way to see the raw bytes behind your text.

1

Pick a direction

Choose Text → Hex to encode readable text, or Hex → Text to turn hex bytes back into words.

2

Type or paste

Your result updates live as you type. Decoding ignores spaces, commas, newlines and 0x prefixes, so pasted hex just works.

3

Copy it

Hit Copy to grab the result and drop it straight into your code, config or notes.

Is it UTF-8 safe?

Yes. Text is encoded to bytes with the browser's built-in TextEncoder (UTF-8), so accented letters, emoji and any Unicode character round-trip correctly. Decoding uses TextDecoder and will flag byte sequences that aren't valid UTF-8.

What hex input is accepted when decoding?

Pretty much anything reasonable. You can paste 48 65 6c 6c 6f, 48656c6c6f, 0x48 0x65 or comma-separated bytes — spaces, commas, newlines, tabs and 0x prefixes are stripped automatically. You need an even number of hex digits and only characters 0-9 / a-f.

🔒

Private by design. Everything happens right here in your browser using built-in JavaScript. Nothing you type is ever uploaded — we never see it.

Frequently Asked Questions

What does hexadecimal represent?
Every character is stored as one or more bytes, and hexadecimal writes each byte as two digits from 00 to ff. It's a compact, readable way to see the raw bytes behind your text.
Is the conversion UTF-8 safe?
Yes. Accented letters, emoji and any Unicode character round-trip correctly, and decoding will flag byte sequences that aren't valid text.
What hex formats can I paste when decoding?
Pretty much anything reasonable — 48 65 6c 6c 6f, 48656c6c6f, 0x48 0x65 or comma-separated bytes. Spaces, commas, line breaks and 0x prefixes are stripped for you.
Why is my hex input rejected?
You need an even number of hex digits (two per byte) and only the characters 0-9 and a-f. An odd digit count or a stray letter like g can't be decoded.
Does uppercase or lowercase hex matter?
No. Both FF and ff mean the same byte, so you can paste hex in either case.
Is anything I type uploaded?
No. Everything runs entirely in your browser on your own device. Nothing you type is ever uploaded, and we never see it.