About This Tool
Base32 and Base58 turn raw bytes into characters that are easy to read aloud and retype. Pick the direction and the source format (UTF-8 text or hex bytes), paste a value, and the output appears as you type. When decoding, the recovered bytes are shown as hex, plus a UTF-8 reading when the bytes form valid text, so you can inspect data that was never a string.
Base32 uses the RFC 4648 alphabet ABCDEFGHIJKLMNOPQRSTUVWXYZ234567 with = as padding. Base58 uses the 58-character Bitcoin alphabet, which drops digit 0, capital O, capital I and lowercase l. Base32 packs five bits at a time into eight-character blocks, so up to six = characters are appended. Base58 treats the whole input as one big number in base 58, which loses leading zero bytes, so each zero byte is preserved separately as the character 1. Specifications current as of October 2026.
This tool does not verify a Base58Check checksum (the trailing four bytes) or validate Bitcoin address formats, and it does not do Base64, encryption or hashing. Everything runs inside your browser and no input is sent to a server, but do not paste private keys or other secrets. Treat the output as a reference and re-check critical work with a standard library.
Frequently Asked Questions
RFC 4648 adds = so the output fills eight-character blocks. This tool decodes input without padding too, but some implementations require it, so check the spec on the receiving side.
Each zero byte becomes one 1 character. Hex 0000287fb4cd encodes to 11233QC4, where the two leading 1 characters stand for two zero bytes. Skipping this step breaks the round trip.
It does not check a Base58Check checksum or validate address formats. It only encodes and decodes between bytes and strings.