Encode text or hex bytes to Base58 with the Bitcoin alphabet, or decode Base58 back
Runs in your browser. Nothing you type is sent anywhere. Checked against sources on 16 Oct 2026.Base58 writes bytes with 58 letters and digits, leaving out 0, O, I and l so a value can be read aloud or copied by hand without confusion. Bitcoin addresses, IPFS hashes and many short IDs use it. Encode text or hex bytes with the Bitcoin alphabet, or decode Base58 back to text or hex; each leading zero byte is kept as a 1.
Paste or type your input.
Choose the options you need.
Press Ctrl+Enter, then copy or download.
Base64 is not the only way to write bytes as text. Base32 uses fewer, unambiguous symbols and survives case-insensitive systems, which is why TOTP secrets and many file systems use it; Base58 is shorter and avoids characters that look alike, which is why Bitcoin and IPFS chose it.
Encoding. Text is encoded as its UTF-8 bytes. Switch the input to hex to encode raw bytes instead, such as a hash or a key; spaces, colons and a 0x prefix are ignored.
Decoding. Whitespace is ignored, and for Base32 lower case and missing padding are accepted. Crockford decoding also reads I and L as 1, O as 0, and skips hyphens, as its specification asks. The decoded bytes are shown as text when they are valid UTF-8 and as hex otherwise, and Show as hex forces hex. A text that does not decode gets a precise reason: the character and position that do not belong, misplaced padding, an impossible length, or a final character with stray bits.
The rest of the article, and all 6 questions about Base32 and Base58 Encoder and Decoder, are on the Base32 and Base58 Encoder and Decoder page.
Choose Decode and Base32, then paste the text; spaces, missing = padding and lower case are all accepted. The bytes appear as text when they form valid UTF-8, or as hex when they do not, such as a TOTP secret. If the text fails, the tool says which other alphabets would decode it.
Base32 works in groups of 5 bytes, which become 8 characters. When the last group is shorter, RFC 4648 pads the text with = up to a multiple of 8, so 1 byte gives 2 characters and 6 = signs. Padding can be switched off, and decoding accepts text with or without it.
Base58 writes bytes with 58 symbols, leaving out 0, O, I and l because they look alike, and adds no punctuation, so a value can be copied by hand or selected with a double click. Bitcoin addresses, IPFS content IDs and many short identifiers use the Bitcoin alphabet that this tool follows.
Base58 converts the bytes as one large number, which would lose zero bytes at the front, so each leading zero byte is written as a separate 1, the first symbol of the alphabet. A Bitcoin address starting with 1 begins with a zero version byte for exactly this reason.
Rates and rules change; check the source before you rely on a figure.
Still stuck? Ask about Base32 and Base58 Encoder and Decoder and anybody who knows can answer. No account needed.
Same job, other tools: Base64 Decode – Turn Base64 back into text or a downloadable file · Base64 Encode – Turn text or a file into Base64 · HEX to RGB – Turn a hex colour code into rgb() values you can paste into CSS · Hex to Decimal – Convert hexadecimal values such as 0xFF into decimal.
On the related tools: TSV to JSON – Convert tab-separated values, such as a paste from Excel, into JSON.