Skip to content
uencoder

Base91

Base91 is a scheme that encodes binary data into 91 printable ASCII characters, with an expansion of about 23% — more compact than Base64.

Purpose

It maximizes alphabet utilization while staying entirely within printable ASCII, reducing encoding overhead.

Mechanism

Every 13 bits of input map to two base-91 characters (91^2 = 8281 > 2^13 = 8192). Bits accumulate from the input, and once at least 13 bits are available a character pair is emitted; a final short group yields a single character.

Use cases

  • Compact binary-to-text representation
  • Binary embedding in data URIs
  • High-density data encoding in QR codes
  • Log and debug output

Examples

  • Input
    Hello World
    Output
    >OwJh>Io0Tv!lE

    About 10% shorter than Base64

Common errors

Assuming Base91 is a standardized encoding (it is a non-RFC proposal)
Make sure both sides use the same implementation and alphabet

Related terms

Related tools

References