Binary Converter
This binary converter translates text into binary code and binary back into text, byte by byte. It also turns decimal numbers into base 2, detects what you typed, and shows how the bits of the first byte add up.
Result
Hi
First byte, bit by bit
Each cell shows a bit and its weight. Add the weights of the active bits to get the byte value.
Examples
How to use
- 1
Type text, a number or a binary string into the field.
- 2
Let auto-detect pick the direction, or set a mode like number to binary.
- 3
Read the result at once, with each 8-bit byte separated by a space.
- 4
Copy the output or download it as a text file.
How does text become binary?
A computer stores text as numbers. Each character maps to a code point, and that code point is written in base 2, using only 0s and 1s. This binary translator uses UTF-8, the encoding behind most of the web, where every ASCII character takes exactly one byte of 8 bits and accented or non-Latin characters take 2 to 4 bytes.
Take the word Hi. The letter H has code 72, which is 01001000 in binary, and the letter i has code 105, which is 01101001. So Hi in binary reads 01001000 01101001. To decode it, split the string into 8-bit bytes, read each byte as a number, then look up the character.
How do you read a byte?
A byte holds 8 bits, and each position carries a weight: 128, 64, 32, 16, 8, 4, 2 and 1, from left to right. Add the weights of the bits set to 1 to get the value. For 01001000, the second bit (64) and the fifth bit (8) are on, and 64 + 8 = 72, the code for H. The tool draws this table for the first byte of your conversion so you can check the math yourself.
Numbers or text: what is the difference?
Converting the number 42 and converting the text 42 are two different jobs. As a number, 42 in base 2 is 101010 (32 + 8 + 2). As text, 42 is two characters: the digit 4 (code 52, 00110100) and the digit 2 (code 50, 00110010). Auto-detect reads a digits-only input as a number, so pick the text to binary mode when you want the character bytes instead.
What does auto-detect do?
The rules stay simple. An input of only 0s, 1s and spaces whose bit count is a multiple of 8 is decoded as binary text. An input of only digits is converted as a decimal number. Anything else is encoded as UTF-8 text.
What do common characters look like in binary?
| Character | Decimal | Binary |
|---|---|---|
| A | 65 | 01000001 |
| a | 97 | 01100001 |
| 0 | 48 | 00110000 |
| Space | 32 | 00100000 |
| ! | 33 | 00100001 |
Notice the pattern: the uppercase and lowercase versions of a letter differ by exactly one bit, the 32 weight, which is why case conversion costs a processor almost nothing. For every code from 0 to 127, see the ASCII table reference page.
Why will some binary not decode?
Not every sequence of bytes is valid UTF-8. The byte 11111111 (255), for one, never appears in UTF-8 text, so the tool flags it instead of printing garbage. If your binary came from a number rather than text, decode it with the binary to number mode, where 11111111 is simply 255.
ASCII Table
| Char | Decimal | Hex | Binary | Name |
|---|---|---|---|---|
| NUL | 0 | 00 | 00000000 | Null |
| SOH | 1 | 01 | 00000001 | Start of Heading |
| STX | 2 | 02 | 00000010 | Start of Text |
| ETX | 3 | 03 | 00000011 | End of Text |
| EOT | 4 | 04 | 00000100 | End of Transmission |
| ENQ | 5 | 05 | 00000101 | Enquiry |
| ACK | 6 | 06 | 00000110 | Acknowledge |
| BEL | 7 | 07 | 00000111 | Bell |
| BS | 8 | 08 | 00001000 | Backspace |
| HT | 9 | 09 | 00001001 | Horizontal Tab |
| LF | 10 | 0A | 00001010 | Line Feed |
| VT | 11 | 0B | 00001011 | Vertical Tab |
| FF | 12 | 0C | 00001100 | Form Feed |
| CR | 13 | 0D | 00001101 | Carriage Return |
| SO | 14 | 0E | 00001110 | Shift Out |
| SI | 15 | 0F | 00001111 | Shift In |
| DLE | 16 | 10 | 00010000 | Data Link Escape |
| DC1 | 17 | 11 | 00010001 | Device Control 1 (XON) |
| DC2 | 18 | 12 | 00010010 | Device Control 2 |
| DC3 | 19 | 13 | 00010011 | Device Control 3 (XOFF) |
| DC4 | 20 | 14 | 00010100 | Device Control 4 |
| NAK | 21 | 15 | 00010101 | Negative Acknowledge |
| SYN | 22 | 16 | 00010110 | Synchronous Idle |
| ETB | 23 | 17 | 00010111 | End of Transmission Block |
Parameters
Every field of this tool can be prefilled from the URL. Use these query parameters:
| Parameter | Type | Default |
|---|---|---|
| input | string | Hi |
| mode | auto | textToBinary | binaryToText | numberToBinary | binaryToNumber | auto |
Example : https://www.veltotools.com/conversion/binary-converter?input=Hi
API
The same tool is available as a free JSON API, with the same parameters as above. No key, no sign-up.
Frequently asked questions
Updated Jul 17, 2026