Free exact browser converter
Base58 Decoder
Decode the Bitcoin Base58 alphabet into hex bytes or strict UTF-8. Keep leading 1 characters as zero bytes. Base58Check validation is separate.
Interactive tool
Base58 Decoder
Ready
Choose a clear output representation.
Detailed conversion guide
How Base58 Decoder Works
Each Base58 digit contributes to an exact BigInt value. The decoder writes that value as big-endian bytes and restores one zero byte for each leading 1.
Hex output is useful for arbitrary binary payloads. For example, 112 gives 000001. Select UTF-8 only when the restored bytes are actually text.
| Input | Output | Meaning |
|---|---|---|
9Ajdvzr | 48656C6C6F | Default example |
111 | 000000 | Boundary example |
JavaScript Example
Runnable example for the default sample. The tool also validates its full input contract.
const alphabet="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
let n=0n; for(const c of input) n=n*58n+BigInt(alphabet.indexOf(c));
let hex=n===0n?"":n.toString(16); if(hex.length%2)hex="0"+hex;
const decoded="00".repeat(input.match(/^1*/)[0].length)+hex.toUpperCase();Formats, Boundaries and Limitations
The alphabet excludes 0, O, I and lowercase l. The tool does not substitute similar-looking characters. A plain Base58 decode does not verify a Base58Check checksum or wallet network.
The decoded payload must fit in 4 KiB. Invalid UTF-8 produces an error in text mode; the same bytes remain available in hex mode.
Related converters
More Text and Encoding Tools
Choose the tool that matches your text or byte workflow.