Encoding Type

Plain Text Input

0 characters | 0 words

Encoded Output

More information

Welcome to the web's most advanced base-family encoder tool. With over 45 built-in functions altogether, it will support all your base encoding needs. The tool has 2 modes. The first mode is plain text input that supports text encoding schemes such as UTF-8, US-ASCII, and more. The second mode is direct binary-to-text with no encoding conversions, suitable for images, audio files, fonts, and more.


Our encoder supports all the following encoding schemes in full:


  • Base16/Hexadecimal/Hex (RFC 4648)

  • Base32 (RFC 3548, RFC 4648 Hex, z-base-32, Crockford's)

  • Base45

  • Base58

  • Base62

  • Base64 (RFC 4648, URLs)

  • Base85 (Ascii85, Adobe, Z85/ZeroMQ, RFC 1924 IPv6)

  • Base91

  • Base92

  • Base122

  • Our encoders all follow strict standards and have been carefully designed according to its respective base specifications as well as other commonly used implementations. Furthermore, the tool has also underwent rigorous testing against the original specification(s) in addition to compatibility testing with other website base encoders and decoders.

    Base encodings like Base16, Base32, and Base64 are methods for encoding binary data (like files or text) into a text format. Each of these formats uses a different number of bits to represent binary data and has different use cases. Due to space constraints, we'll only explain some of the more popular base schemes.


    Base16 (as part of the RFC 4648 standard), also known as hexadecimal or hex, uses 4 bits per character, meaning every byte (8 bits) is represented by two hexadecimal digits. It makes use of 16 unique characters (0-9 and A-F) to represent the binary data, so for example, the byte 01001011 would be represented as 4B. Base16 is often used in computing contexts to represent binary data in a more readable format. It’s used in programming, colour codes (e.g., #FFFFFF for white), and some cryptographic functions.


    Whereas Base32, also part of the RFC 4648 standard, uses 5 bits per character, so every character encodes 5 bits of data. It makes use of 32 unique characters (typically A-Z and 2-7) to represent the bytes. For example, the binary 01001011 01101111 (two bytes) could be represented as "KRQ=". Some applications of Base32 includes QR codes, email verification codes, and Google Authenticator codes. In addition, it is also often used in URL-friendly applications since it avoids characters that might have special meanings in URLs or filesystems.


    Finally, Base64, which usually comes in two popular variants (standard RFC 4648 and RFC 4648 § 5 Base64url), uses 6 bits per character - meaning every three bytes of binary data are represented by four Base64 characters. It draws its output combinations from 64 unique characters (A-Z, a-z, 0-9, +, and /). So for example, the binary string 01001011 01101111 01100011 (three bytes) would be encoded as "S29j". It is widely used for encoding binary data in situations where text-only format is needed, such as embedding images in HTML, sending attachments in emails, and serialising binary data for web transmission purposes.


    As a rule of thumb, typically as you go higher in the base encoding schemes such as from Base64 to Base85 and etc., it becomes more space efficient in terms of converting the original file or text to the an output string. In other words, the overhead for converting files and text to plain text encoding will be smaller, thus, the length of the output string will be shorter. This is usually the case, but there are also exceptions.


    Another thing to note is that as you go higher in the base encodings, the more characters it uses, which also often causes the output to become less readable and more cryptic, and in complex cases, lose data as a result of the computer failing to display or render an unknown character within the string.


    Now let's talk about paddings and summarise the abovementioned points. Some base encodings, such as Base32 or Base64 may add padding (with =) to ensure the encoded string aligns with their bit requirements. As for human readability, Base16 is the easiest for humans to read (fewer characters, all hexadecimal), while Base64 is more compact but less intuitive. Finally, in terms of Base16, Base32, and Base64, Base64 is generally the most efficient for encoding large binary data, as it uses fewer characters to represent more bits compared to Base16 or Base32.


    These encodings are especially handy when you need a safe way to handle binary data in text-only contexts, like URLs or JSON files!