Every character in your text becomes its ASCII number (e.g. 'H' → 72, 'i' → 105).
Those bytes are grouped into 3-byte chunks (24 bits) then split into four 6-bit groups.
Each 6-bit value maps to one of 64 characters: A-Z, a-z, 0-9, +, /. That's where the name comes from!
= padding is added to make the output length a multiple of 4. This encoder adds it automatically.
The result is safe ASCII text — great for embedding data in JSON, HTML, URLs, or email headers. ~33% size increase is the trade-off.
Watch echobash become ZWNob2Jhc2g= — every bit shown.
| Char | ASCII | 8-bit Binary |
|---|---|---|
| e | 101 | 01100101 |
| c | 99 | 01100011 |
| h | 104 | 01101000 |
| o | 111 | 01101111 |
| b | 98 | 01100010 |
| a | 97 | 01100001 |
| s | 115 | 01110011 |
| h | 104 | 01101000 |