logo
logo

Base32 Encoder & Decoder

Encode text to Base32 or decode Base32 to text. RFC 4648 compliant. Instant conversion with copy and swap functionality.

Base32 Encode/Decode

Convert text to Base32 encoding and back

0 chars
0 chars
🔐 RFC 4648 compliant Base32 encoding • Browser-based

Base32 Encode & Decode - Online Base32 Converter

Encode and decode Base32 strings online for free. Convert text to Base32 format and back—useful for encoding data in systems that require case-insensitive character sets, like TOTP tokens, backup codes, and file names.

What Is Base32?

Base32 is a binary-to-text encoding scheme that represents data using 32 ASCII characters (A-Z and 2-7). It's similar to Base64 but uses a smaller, case-insensitive alphabet, making it suitable for systems where case sensitivity or special characters cause problems.

Base32 Alphabet:

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 2 3 4 5 6 7

How to Use

Encoding

  1. Enter text - Type or paste your text
  2. Click "Encode" - Convert to Base32
  3. Copy result - Use the encoded string

Decoding

  1. Paste Base32 - Enter your encoded string
  2. Click "Decode" - Convert back to text
  3. View result - See the original content

Key Features

  • Instant conversion - Real-time encoding/decoding
  • Standard implementation - RFC 4648 compliant
  • Padding support - Handles = padding correctly
  • UTF-8 support - Works with international characters
  • One-click copy - Easy clipboard access
  • No storage - All processing is local

Base32 vs. Base64

FeatureBase32Base64
Characters used32 (A-Z, 2-7)64 (A-Z, a-z, 0-9, +, /)
Case sensitiveNoYes
Size increase~60%~33%
Human readableBetterAverage
Typing easeEasierHarder
Confusing charsNonel/1, O/0, +/slash

Why Base32 Over Base64?

Base32 is preferred when:

  • Case insensitivity required - File systems, some databases
  • Human typing expected - Manual backup codes, tokens
  • URL safety needed - No special characters
  • Avoiding confusion - No 0/O, 1/l, I ambiguity
  • Phone keyboard entry - Simpler character set

Common Use Cases

Two-Factor Authentication (2FA/TOTP)

TOTP Secret Key in Base32:
JBSWY3DPEHPK3PXP

Google Authenticator and similar apps use Base32 for secret keys.

Backup Recovery Codes

Your backup codes:
ABCD-EFGH-IJKL
MNOP-QRST-UVWX

Easier to type than random mixed-case strings.

File Names

Encoded: 7JPFQ2LGOMQGG33N

Safe for systems with case-insensitive file handling.

Unique Identifiers

Short IDs: GEZDGNBV

Compact, URL-safe, human-readable IDs.

Encoding Example

Text: Hello World!

Process:

  1. Convert to bytes: [72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]
  2. Group into 5-byte chunks
  3. Convert each chunk to 8 Base32 characters
  4. Add padding if needed

Result: JBSWY3DPEBLW64TMMQQQ====

Understanding Padding

Base32 encodes 5 bytes into 8 characters. When input isn't a multiple of 5 bytes, padding with = is added:

Input BytesOutput CharsPadding
12======
24====
35===
47=
58none

Base32 Variants

VariantCharactersUse Case
RFC 4648 (Standard)A-Z, 2-7General use
Extended Hex0-9, A-VSortable output
Crockford0-9, A-Z (no I,L,O,U)Human-friendly
z-base-32Different setEasy typing

Programming Examples

JavaScript

// Encoding (using a library like base32.js)
const encoded = base32.encode(text);

Python

import base64
encoded = base64.b32encode(text.encode()).decode()

Command Line

echo -n "Hello" | base32

Frequently Asked Questions

When should I use Base32 instead of Base64?

Use Base32 when case insensitivity matters, when humans need to type the encoded string, or when you want to avoid confusable characters.

Why A-Z and 2-7 specifically?

Numbers 2-7 were chosen because 0 and 1 look like O and I/l. This reduces human transcription errors.

Is Base32 encryption?

No! Base32 is encoding, not encryption. Anyone can decode it. Use encryption (AES, etc.) if security is needed.

Can I encode binary files?

Technically yes, but our web tool is optimized for text. For files, use command-line tools or libraries.

Why does my output have = at the end?

That's padding to make the output length a multiple of 8 characters. Some implementations omit it.

Is Base32 URL-safe?

Yes! Unlike Base64, Base32 uses no special characters, making it inherently URL-safe.