How this instrument works
Every character you type is stored by your computer as one or more bytes, and hexadecimal (base 16) is a compact, human-readable way to write out those byte values. Each byte is a number from 0 to 255, and in hex that's always exactly two digits — 0-9 for values up to nine, and A-F for ten through fifteen — so 72 in decimal becomes 48 in hex. This instrument runs your text through UTF-8, the standard encoding that turns Unicode characters into bytes, then writes each resulting byte as its two-digit hex code.
Converting is a two-step process: first turn each character into its UTF-8 byte or bytes, then write each byte as two hex digits. Plain ASCII characters like letters, digits, and common punctuation each take exactly one byte, so "Hello" (5 characters) produces exactly 5 hex byte pairs: 48 65 6C 6C 6F. Characters outside the ASCII range — accented letters, symbols, and most non-Latin scripts — take two to four UTF-8 bytes each, so they show up as two to four hex pairs in a row rather than just one.
This tool only converts text into hex — it doesn't read hex back into text. For the reverse direction, use this site's Hex-to-Text Converter, which is built as this tool's exact counterpart: paste the hex output from here into that tool and you'll get your original text back.
- Type or paste the text you want converted into the Text field.
- Read Hex code for the result — one two-digit hex pair per UTF-8 byte, separated by spaces.
- Letters, numbers, spaces, and punctuation are all supported; each converts to its own byte or bytes.
- The output always uses uppercase hex digits (A-F rather than a-f), matching the common hex-dump convention.
- To reverse the conversion, paste the resulting hex code into this site's Hex-to-Text Converter.
Worked example — converting "Hello" and "Hi" to hex
Type "Hello" into the Text field. Each of its five letters is one UTF-8 byte: H is decimal 72, e is 101, l is 108 (twice), and o is 111. Converting each to hex gives 48, 65, 6C, 6C, and 6F, joined with spaces: "Hello" converts to 48 65 6C 6C 6F.
Shorter inputs work the same way. "Hi" is just two bytes: H is decimal 72 (hex 48) and i is decimal 105 (hex 69), so "Hi" converts to 48 69 — which is exactly the hex code this site's Hex-to-Text Converter decodes back into "Hi," confirming the two tools are true inverses of each other.
Punctuation converts the same way as letters. "AI!" is three bytes: A is decimal 65 (hex 41), I is decimal 73 (hex 49), and ! is decimal 33 (hex 21), giving 41 49 21 — proving the conversion handles symbols exactly like letters, since every character is just a byte value underneath.
Questions
Why is the hex output uppercase instead of lowercase?
This tool always outputs uppercase hex digits (A-F) to match the common hex-dump convention used in most programming references and debugging tools. The value is identical either way — 6C and 6c both mean the same byte — so if you need lowercase for a specific format, you can convert the case after copying the result.
Why does one character sometimes produce more than one hex pair?
Because that character takes more than one byte in UTF-8. Plain ASCII characters (English letters, digits, and common punctuation) each fit in a single byte, but accented letters, symbols, and most non-Latin script characters need two to four bytes to represent in UTF-8, so each of those shows up as two to four hex pairs in a row rather than just one.
How do I convert hex codes back into text?
Use this site's Hex-to-Text Converter, which does the exact reverse of this tool. Paste in the hex code this tool produced (with or without the spaces between byte pairs — that converter accepts either form) and it decodes those bytes back into the original text, letter for letter.
Are there spaces between each hex byte pair in the output?
Yes, this tool always separates each two-digit byte pair with a single space, which makes longer hex strings easier to read and count by eye. If you need the hex run together with no spaces for pasting into code or a URL, you can strip the spaces afterward — the Hex-to-Text Converter accepts hex in either spaced or unspaced form if you need to convert it back.
Can this convert emoji or non-English text to hex?
It converts any text representable in UTF-8, which includes the vast majority of world scripts and many symbols, though not every rare or newly added Unicode character is guaranteed to render identically across every device. Since UTF-8 uses one to four bytes per character depending on the character, a single emoji or non-Latin letter typically produces multiple hex pairs rather than just one.