Skip to content
uencoder

Crockford Base32

Crockford Base32 is a Base32 variant designed by Douglas Crockford for encoding and checking integers, with an optional check character and tolerant decoding of ambiguous symbols.

Purpose

It represents integer IDs in a compact, checkable form while tolerating common human input errors (such as 0/O and 1/I/L).

Mechanism

The integer is converted to Base32 (0-9, A-V, excluding U); when decoding, O maps to 0 and I/L map to 1. An optional check character (modulo 37) can be appended to detect single-character errors.

Use cases

  • Distributed ID encoding
  • API tokens
  • Human-readable object identifiers

Related tools

References