0
0

Base58 Encode

Egor VolchenkoEgor Volchenko
CreatedNov 13, 2026
UpdatedNov 13, 2026

Base58 encode converts text or encoded bytes into a string using the Bitcoin-style Base58 alphabet. Use this Base58 encoder to prepare test values and inspect byte representations without the easily confused characters omitted by that alphabet. The operation applies plain Base58 encoding without adding a checksum.

1
1

How to use Base58 Encode

Use the steps below to encode a string as Base58.

Encode a string as Base58

  1. Type or paste the text or encoded bytes into Input text.
  2. Choose Input Encoding: UTF-8 for normal text, Hex for hexadecimal bytes, or Base64 for Base64 bytes.
  3. Keep Auto / Live on to update the result as you edit. To work manually, turn Auto / Live off and click Run.
  4. Read Base58 Encode Result. The output is a Base58 string; this form has no alphabet selector.
  5. Click Copy to copy the result. Use Clear where shown, or a field's clear control, to clear the text.

For example, UTF-8 input Hello becomes 9Ajdvzr. Hex input 48656c6c6f represents the same bytes and produces the same Base58 value when Hex is selected.

Use the Bitcoin-style alphabet

The alphabet is 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz. Letter case matters. Leading zero bytes are represented by leading 1 characters rather than discarded.

Separate plain Base58 from Base58Check

Plain Base58 changes the representation of bytes. Base58Check adds application-specific version and checksum bytes before encoding. This form does not add those bytes or create a validated cryptocurrency address.

Frequently asked questions

The tool uses the Bitcoin-style alphabet. There is no Flickr, Ripple, or custom-alphabet selector in this form.

API — Text to Base58

Automate this tool directly from your scripts, CI/CD pipelines, or backend applications via HTTP POST.

No API Key Required 60 req/min
https://million.tools/api/v1/run/base58-encode

Request Parameters (JSON / Form Data)

  • start (or input)

    Input text

    Type: string Default: —
  • input_encoding

    Input Encoding

    hex hex_ignore_non_hex base64 utf-8 utf-16le utf-16be windows-1251 windows-1252
    Type: string Default: utf-8
bash — cURL
curl -X POST https://million.tools/api/v1/run/base58-encode \
  -H "Content-Type: application/json" \
  -d '{"start":"Hello World"}'
const response = await fetch('https://million.tools/api/v1/run/base58-encode', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
      "start": "Hello World"
  }),
});

const data = await response.json();
console.log(data.result);
import requests

response = requests.post(
    'https://million.tools/api/v1/run/base58-encode',
    json={
        "start": "Hello World",
    },
    timeout=15,
)

data = response.json()
print(data['result'])
$ch = curl_init('https://million.tools/api/v1/run/base58-encode');
curl_setopt_array($ch, [
    CURLOPT_POST           => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER     => ['Content-Type: application/json'],
    CURLOPT_POSTFIELDS     => json_encode([
        'start' => 'Hello World',
    ]),
]);

$response = json_decode(curl_exec($ch), true);
curl_close($ch);

echo $response['result'] ?? '';
{
    "status": "success",
    "tool": "base58-encode",
    "service": "base58_encode",
    "result": "JxF12TrwUP45BMd",
    "results": {
        "result": "JxF12TrwUP45BMd"
    }
}
Egor Volchenko
Egor Volchenko Developer & Author

Hi! I’m a WordPress developer with over 10 years of experience. I love Tailwind CSS, clean code, and intuitive interfaces. I’m currently working on million.tools — a service with convenient online tools for everyday tasks. I’m building it from scratch with great attention to detail and user experience.

Published:
Updated:

Ratings & feedback 0

Share your experience with this tool.

Leave feedback

Your rating (optional)

Select a rating

Write a review, leave a rating, or do both.

Your email stays private.

No feedback yet

Be the first to leave a review or rating.