Advertisements

headerup to 320x100 / 728x90

basE91 Encoder / Decoder

Encode or decode data using basE91 — a denser alternative to Base64

Mode:
Input
Loading editor...
Output

Output will appear here...

Advertisements

content bottomup to 300x250

What is basE91 Encoder / Decoder

Last reviewed:

basE91 is a binary-to-text encoding invented by Joachim Henke that maps arbitrary bytes to 91 printable ASCII characters, reaching about 86% efficiency — noticeably better than Base64's 75%.

It stays safe for email, JSON, XML, and URL-path contexts (avoiding &, <, >, backslash) while shrinking the payload. Developers use basE91 when size matters but shell-safe output is still required.

Why use it

  • Shrink embedded payloads vs Base64 without leaving ASCII.
  • Encode secrets for config files where size is constrained.
  • Solve CTFs that reference basE91 specifically.
  • Experiment with denser alternatives to Base64 in test suites.
  • Round-trip binary data through plain-text transports.

Features

  • Denser than Base64 while remaining printable-ASCII
  • Encode / decode toggle built in
  • Avoids several URL-hostile characters
  • Client-side only — nothing leaves your browser
  • Ideal for config files and CTF tasks

How to use basE91 Encoder / Decoder

  1. Choose direction. Pick Encode or Decode in the control bar.
  2. Paste input. Drop text (encode) or basE91 (decode) into the input.
  3. Copy result. Copy the output to your config, fixture, or CTF answer.

Example (before/after)

Plain text

Hello World!

basE91

>OwJh>}AQ;r@@Y?F

Common errors

Quotes in encoded output

basE91 includes the double-quote character.

Fix: Escape it if you're pasting the output into JSON or a shell string.

Confusing with Base64

basE91 uses a different alphabet and is not compatible with Base64 decoders.

Fix: Match encoder and decoder explicitly — don't mix tools.

FAQ

How much denser is basE91 than Base64?

About 14% — roughly 86% efficiency vs Base64's 75%.

Is it URL-safe?

It avoids several URL-hostile characters but is not strictly URL-safe. Percent-encode before putting it in a URL.

Is it a standard?

It is an open specification by Joachim Henke, widely implemented across languages.

Does it handle binary?

Yes, the underlying algorithm is byte-oriented. This UI accepts text.

Can I chain it with other encodings?

Yes — basE91 is often combined with gzip or AES for smaller secrets.