# Hex to Text > Decode hex to text and convert text to hex, with auto-detect, UTF-8, ASCII or Latin-1, any hex format, invalid bytes highlighted and every byte in decimal and binary. - Page: https://linguaholic.com/tools/hex-to-text/ - Type: free online tool (Converters & translators), no sign-up, runs in the browser - Publisher: Linguaholic (https://linguaholic.com/), made by Marcel Iseli - Last updated: October 3, 2026 - Open it pre-filled: https://linguaholic.com/tools/hex-to-text/?text=48%2065%206C%206C%206F - `text`: text to convert to hex, or hex to decode (the direction is auto-detected unless mode is given) (for example `48 65 6C 6C 6F`) - `mode`: auto (default), encode (text to hex) or decode (hex to text) (for example `decode`) - `encoding`: utf8 (default), ascii, latin1 or codepoint (for example `utf8`) - `format`: hex layout for text to hex: space (default), none, 0x, escape or comma (for example `0x`) - `case`: upper (default) or lower hex digits (for example `lower`) ## How to convert hex to text This **hex to text converter** turns hexadecimal codes back into readable text, and text into hex. Paste or type into the box and the result appears as you type. You don’t need to pick a direction: with Auto-detect on, the converter recognizes hex such as `48 65 6C 6C 6F` and decodes it, and treats anything else as text to encode. If it guesses wrong (a short word made only of the letters A to F, for example), tap **Hex → Text** or **Text → Hex** to choose. 1. **Paste your hex.** It can be spaced (`48 65`), continuous (`4865`), written with `0x` prefixes, as `\x48\x65` escapes, as a comma list, URL-style (`%48%65`) or split by colons or dashes. Upper and lower case both work. 2. **Check the encoding.** UTF-8 is the default and right for almost everything made in the last twenty years. Switch to ASCII, Latin-1 or Unicode code points if your hex came from somewhere older or different (see below). 3. **Read the result.** Bytes that cannot be decoded are highlighted in red with their hex, and invisible control characters such as a tab or a null byte show up as small labels, so nothing is hidden. 4. **Open “Byte by byte”** to see every character with its hex, decimal and binary values, and the reason any byte failed. 5. **Copy** the result, or tap **Swap** to convert it straight back the other way. ## How to convert text to hex Type or paste your text and the hex appears below. Three options shape the output: - **Character encoding:** UTF-8 gives the bytes a web page or file would really contain. ASCII and Latin-1 give one byte per character, and leave out (and list) any character they have no code for. Code points give each character’s Unicode number instead of bytes. - **Hex layout:** spaced (`48 69 21`), continuous (`486921`), 0x prefix (`0x48 0x69 0x21`), \x escapes (`\x48\x69\x21`), comma list (`0x48, 0x69, 0x21`). The 0x, escape and comma layouts are ready to paste into code. - **Letter case:** uppercase (`6C`) or lowercase (`6c`). They mean the same; it is only a matter of style. ## Frequently asked questions **How do I convert hex to text?** Paste the hex into the box, for example 48 65 6C 6C 6F, and the text (Hello) appears at once. Auto-detect recognizes hex by itself, and spaced, continuous, 0x, \x, comma and % layouts all work. **How do I convert text to hex?** Type or paste your text and the hex appears below. Choose UTF-8, ASCII, Latin-1 or code points, a layout (spaced, continuous, 0x, \x escapes or a comma list) and upper or lower case, then copy it. **What is 48 65 6C 6C 6F in text?** It spells Hello. 48 is H, 65 is e, 6C is l (twice) and 6F is o. Each pair of hex digits is one byte, and these bytes are the same in ASCII and UTF-8. **How do you convert hex to text by hand?** Split the hex into pairs, turn each pair into a number (first digit × 16 + second digit, with A to F meaning 10 to 15), and look the number up in an ASCII table. 48 is 4 × 16 + 8 = 72, which is the letter H. **What is the difference between UTF-8, ASCII and Latin-1?** ASCII has 128 characters (00 to 7F). Latin-1 adds Western European letters up to FF, one byte each. UTF-8 keeps ASCII and writes every other character as 2 to 4 bytes, so é is C3 A9 in UTF-8 but E9 in Latin-1. **Why does my decoded text show � or é?** The encoding doesn't match. é means UTF-8 bytes were read as Latin-1, so choose UTF-8. A � means a byte is not valid UTF-8, often a Latin-1 byte such as E9, so try Latin-1. **Why is a byte highlighted as invalid?** It is either not hex (only 0–9 and A–F are allowed), a lone digit without its pair, above 7F in ASCII, or a broken UTF-8 sequence. Open Byte by byte to see the exact reason for each one. **Can it convert hex to decimal or binary?** Yes. The Byte by byte table lists every character with its hex, decimal and binary values, in both directions. **Is anything uploaded?** No. The converter runs entirely in your browser, so nothing you paste is uploaded or stored, and it works offline once the page has loaded. ## Related tools - [Binary Translator](https://linguaholic.com/tools/binary-translator/): Translate text to binary and binary code back to text — auto-detects what you paste, works with every language and emoji (UTF-8), shows each character's code, decimal, hex and binary, and includes a full binary alphabet chart. - [Binary Converter](https://linguaholic.com/tools/binary-converter/): Convert between binary, decimal, hexadecimal, and octal as you type — exact for numbers of any size — with two's complement for 8/16/32/64 bits, bit and byte counts, step-by-step working, and a live binary clock. - [Binary Calculator](https://linguaholic.com/tools/binary-calculator/): Add, subtract, multiply and divide binary numbers with every carry and borrow shown, plus two’s complement, AND, OR, XOR, NOT and shifts, and answers in four bases. - [Morse Code Translator](https://linguaholic.com/tools/morse-code-translator/): Translate text to Morse code and decode it back, hear it as adjustable-speed sound with a visual flasher, and read the full Morse alphabet, number, and punctuation chart. - [Caesar Cipher](https://linguaholic.com/tools/caesar-cipher/): Encode and decode the Caesar shift cipher with any shift from 1 to 25, or crack a message without the key: every shift is tried and ranked for you. - [Roman Numeral Converter](https://linguaholic.com/tools/roman-numeral-converter/): Convert numbers to Roman numerals and back in one box, write big numbers with the bar on top, turn any date into Roman numerals for a tattoo, add and multiply Roman numerals, and practice with a quick quiz — plus a full chart.