Base85 / Ascii85 Encoder + Decoder

Base85 encodes binary data using printable ASCII, like base64 but denser. 4 bytes of input → 5 characters of output (vs 6 for base64), so output is ~25% smaller. Adobe's variant ("Ascii85") is used in PostScript and PDF files. This tool encodes and decodes.

How to use the Base85 / Ascii85 Encoder + Decoder

Pick encode or decode. Output updates live. Uses Adobe Ascii85 variant (no <~...~> wrappers).

Base85: more data per character

Base85 (the Adobe variant is called Ascii85) packs binary data into printable ASCII more tightly than base64. Four input bytes — a 32-bit number — become five characters drawn from an 85-symbol alphabet. Five characters can represent 855 values, just enough to cover the 232 a four-byte group needs, so the output is about 25% smaller than base64's 4-to-6 expansion.

That density is why Ascii85 appears inside PostScript and PDF files, where embedded images and fonts benefit from the smaller footprint. The trade-off is a wider character set that includes punctuation, so it is less friendly in URLs than base64url. This tool uses the Adobe alphabet without the <~ ~> wrappers and converts in both directions.

Common use cases

  • PDF and PostScript internals — decode an Ascii85 stream embedded in a document.
  • Compact binary text — encode data more tightly than base64 when size matters more than URL-safety.
  • Inspecting embedded assets — turn an Ascii85 blob back into the bytes it represents.
  • Learning the encoding — see how four bytes map to five characters and why that beats base64.
  • Data interchange — move binary through a text-only channel with less overhead.

Frequently asked questions

How much smaller is Base85 than Base64?

Base64 turns 3 bytes into 4 characters (a third larger); Base85 turns 4 bytes into 5 characters (a quarter larger). So Base85 output is roughly 25% shorter than base64 for the same data.

What are the &lt;~ and ~&gt; markers?

In Adobe's Ascii85 those delimit the start and end of an encoded block within a PostScript or PDF stream. This tool omits them and encodes the raw payload, so add or strip them if you are interfacing with Adobe documents.

Why not use Base85 everywhere instead of Base64?

Its alphabet includes punctuation that needs escaping in URLs and some text formats, and base64 has far broader library support. Base85 wins mainly where density matters and the channel tolerates the wider character set.

Is Ascii85 the same as Z85 or RFC 1924?

They share the 4-to-5 idea but use different alphabets. Z85 (from ZeroMQ) picks URL-friendlier symbols; RFC 1924 was a tongue-in-cheek IPv6 encoding. This tool implements Adobe's Ascii85 alphabet.
Embed this tool on your site

Free to embed, no attribution required (but appreciated). Paste this where you want the tool to appear: