HEX to ASCII Converter

This converter will help you quickly convert hexadecimal values into readable ASCII text.

Type, paste, or drop a file containing hex values with or without spaces, hyphens, colons, commas, underscores, or prefixes like 0x or \x.

How to Use the Converter?

To use the converter, simply paste or type your hexadecimal value into the Hexadecimal Input box, and the ASCII result will appear instantly in the output box. You can enter values with or without spaces, and common formats like commas, hyphens, colons, underscores, 0x, or \x are also accepted.

You can also drag and drop a text file containing hexadecimal data into the input box, and the converter will read it automatically.

If the input is not valid, an error message will appear next to the field so you can fix it.

What HEX and ASCII Means

To understand HEX to ASCII conversion, you first need a strong idea of what hexadecimal numbers are and what ASCII is.

In ordinary math, we usually use the decimal system, which is base $10$. That means each place value is a power of $10$. For example, in the number $47$, the $4$ means four tens and the $7$ means seven ones.

In hexadecimal, however, each place value is a power of $16$. So in the HEX number $41$, the $4$ is in the $16^1$ place and the $1$ is in the $16^0$ place.

$$\begin{aligned} 41_{16} &= 4 \times 16^1 + 1 \times 16^0 \\[10pt] &= 64 + 1 \\[10pt] &= 65_{10} \end{aligned}$$

This means that the HEX number $41$ is equal to decimal $65$.

Now let’s understand what ASCII means.

ASCII, which stands for American Standard Code for Information Interchange, is a coding system that assigns numbers to characters so computers can store and display text. Computers do not “see” letters the way humans do. They store numbers, and those numbers are interpreted as characters.

For example, the uppercase letter $A$ is ASCII decimal $65$, lowercase $a$ is ASCII decimal $97$, and the digit $5$ is ASCII decimal $53$. These same ASCII values can also be written in HEX.

$$ 65_{10} = 41_{16} = A_{ASCII} $$

$$ 97_{10} = 61_{16}= a_{ASCII} $$

$$ 53_{10} = 35_{16}= 5_{ASCII} $$

So if you see HEX $41$, it represents the ASCII character $A$. If you see HEX $61$, it represents the ASCII character $a$. If you see HEX $35$, it represents the character $5$.

This is important because people often think HEX $35$ means the number thirty-five. In ASCII conversion, it usually means the character whose code is $35$ in HEX, which happens to be the symbol $5$. That is why context matters.

How to Convert HEX to ASCII

To convert HEX to ASCII, follow this simple method:

  1. Get hex byte
  2. Convert hex byte to its decimal equivalent.
  3. Match that decimal number to the corresponding character on the ASCII table.

For example, suppose you are given one HEX byte, such as $48$. First, convert it into decimal.

$$ 48_{16} = 4 \times 16 + 8 = 64 + 8 = 72_{10} $$

The HEX value $48$ equals decimal $72$.

Then check the ASCII table to find which character has that value. ASCII decimal $72$ corresponds to the character $H$.

So HEX $48$ converts to ASCII $H$.

ASCII Table

Here is the full list of ASCII characters and their corresponding values for your quick reference.

DecimalHexSymbolDecimalHexSymbolDecimalHexSymbol
000NULL8656V172AC¬
101SOH8757W173AD­
202STX8858X174AE®
303ETX8959Y175AF¯
404EOT905AZ176B0°
505ENQ915B[177B1±
606ACK925C\178B2²
707BEL935D]179B3³
808BS945E^180B4´
909HT955F_181B5µ
100ALF9660`182B6
110BVT9761a183B7·
120CFF9862b184B8¸
130DCR9963c185B9¹
140ESO10064d186BAº
150FSI10165e187BB»
1610DLE10266f188BC¼
1711DC110367g189BD½
1812DC210468h190BE¾
1913DC310569i191BF¿
2014DC41066Aj192C0À
2115NAK1076Bk193C1Á
2216SYN1086Cl194C2Â
2317ETB1096Dm195C3Ã
2418CAN1106En196C4Ä
2519EM1116Fo197C5Å
261ASUB11270p198C6Æ
271BESC11371q199C7Ç
281CFS11472r200C8È
291DGS11573s201C9É
301ERS11674t202CAÊ
311FUS11775u203CBË
3220space11876v204CCÌ
3321!11977w205CDÍ
342212078x206CEÎ
3523#12179y207CFÏ
3624$1227Az208D0Ð
3725%1237B{209D1Ñ
3826&1247C|210D2Ò
39271257D}211D3Ó
4028(1267E~212D4Ô
4129)1277FDEL213D5Õ
422A*12880PAD214D6Ö
432B+12981HOP215D7×
442C,13082BPH216D8Ø
452D13183NBH217D9Ù
462E.13284IND218DAÚ
472F/13385NEL219DBÛ
4830013486SSA220DCÜ
4931113587ESA221DDÝ
5032213688HTS222DEÞ
5133313789HTJ223DFß
523441388AVTS224E0à
533551398BPLD225E1á
543661408CPLU226E2â
553771418DRI227E3ã
563881428ESS2228E4ä
573991438FSS3229E5å
583A:14490DCS230E6æ
593B;14591PU1231E7ç
603C<14692PU2232E8è
613D=14793STS233E9é
623E>14894CCH234EAê
633F?14995MW235EBë
6440@15096SPA236ECì
6541A15197EPA237EDí
6642B15298SOS238EEî
6743C15399SGCI239EFï
6844D1549ASCI240F0ð
6945E1559BCSI241F1ñ
7046F1569CST242F2ò
7147G1579DOSC243F3ó
7248H1589EPM244F4ô
7349I1599FAPC245F5õ
744AJ160A0NBSP246F6ö
754BK161A1¡247F7÷
764CL162A2¢248F8ø
774DM163A3£249F9ù
784EN164A4¤250FAú
794FO165A5¥251FBû
8050P166A6¦252FCü
8151Q167A7§253FDý
8252R168A8¨254FEþ
8353S169A9©255FFÿ
8454T170AAª
8555U171AB«

Converting a HEX String into a Word

Single-character conversions are useful for practice, but the real fun begins when you convert a whole HEX string into a word or sentence. Suppose you are given:

$43\ 41\ 54$

We convert each pair separately. HEX $43$ is decimal $67$, which is ASCII $C$. HEX $41$ is decimal $65$, which is ASCII $A$. HEX $54$ is decimal $84$, which is ASCII $T$. So the complete ASCII word is $CAT$.

Now let us try another example:

$42\ 4F\ 4F\ 4B$

HEX $42$ becomes $B$, HEX $4F$ becomes $O$, HEX $4F$ becomes $O$ again, and HEX $4B$ becomes $K$. The word is $BOOK$.

When doing these conversions, always remember that each ASCII character is usually represented by one byte, which is two HEX digits. So you should read the HEX string in pairs like $48 \; 69$, not as one giant number like $4869$. If you read it incorrectly as one large number, the ASCII conversion will not make sense.

What Happens with Spaces and Symbols

People sometimes expect ASCII to only deal with letters and numbers, but spaces and symbols are also included. For example, the space character is HEX $20$, the comma is HEX $2C$, the period is HEX $2E$, and the question mark is HEX $3F$. So if you decode a HEX string and one pair becomes $20$, you should place a blank space in the sentence.

For example, consider:

$48\ 69\ 20\ 74\ 68\ 65\ 72\ 65$

HEX $48$ is $H$, $69$ is $i$, $20$ is a space, $74$ is $t$, $68$ is $h$, $65$ is $e$, $72$ is $r$, and $65$ is $e$. The decoded ASCII text is $Hi \; there$.

This is how you can build full messages from HEX values, including spaces between words.

Important Note About Control Characters

Not every ASCII code produces a visible character. Some ASCII values are control characters, which were designed for actions like starting a new line, moving the cursor, or ringing a bell in older systems. For example, decimal $10$, which is HEX $0A$, often means a line feed or new line. Decimal $13$, which is HEX $0D$, often means carriage return.

These control characters are part of ASCII, and it is good to know that sometimes a HEX code can produce something that does not look like a standard letter or symbol.

Amrit Prabhu

Amrit Prabhu

Amrit is an Electronics Engineer who loves making complex programming and hardware concepts accessible. He has more than 15 years of experience, having worked as a Senior Programmer Analyst at Mindtree Ltd. and Symantec on major projects like Windows 8, Wolters Kluwer CCH and NSE. Since 2018, he has authored hundreds of tutorials and guides for Last Minute Engineers, helping readers master everything from basic circuits to IoT. You can find him on LinkedIn