Binary Converter
This free binary converter translates text to binary (UTF-8 bytes) and binary back to text, and also converts decimal numbers to base 2, with automatic detection of what you typed.
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: the converter detects the direction automatically.
- 2
Pick a specific mode in the dropdown if you want to force a direction, for example number to binary.
- 3
Read the result instantly, with each UTF-8 byte separated by a space.
- 4
Use the bit table to see how the weights 128 to 1 build the first byte, then copy or download the result.
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