Skip to content

Base64 Converter

Mode

Text

Base64

Example

About

Base64 encodes binary data as ASCII text using a 64-character alphabet. It increases data size by ~33% but makes binary-safe transmission possible over channels that only support text.

How to use

  1. 1.

    Choose Encode to turn text into Base64, or Decode to turn Base64 back into text

  2. 2.

    Type or paste into the input panel - the result updates as you type

  3. 3.

    For Base64 that goes into a URL or a token, turn on URL-safe output

  4. 4.

    Copy the result, or press Swap to use it as the input and reverse the mode

Common uses

  • ▸

    Encoding credentials for HTTP Basic Auth headers

  • ▸

    Decoding Base64 values from API responses, config files, or Kubernetes secrets

  • ▸

    Decoding URL-safe Base64 from tokens and links, or the text inside a data: URL

  • ▸

    Embedding text safely in JSON or XML fields

Frequently asked questions

Can it decode Base64 images or other binary files?

No - this tool converts text. When decoding, it checks that the result is valid UTF-8 text, and for binary data such as an image or archive it shows an error instead of garbled characters. For images, use the Base64 to Image and Image to Base64 tools.


Why does Base64 output end with "=="?

Base64 encodes data in 3-byte groups. When the input length is not a multiple of 3, one or two padding characters (=) complete the final group. URL-safe output leaves the padding off.


Does encoding make data smaller?

No - Base64 increases size by approximately 33% because 3 bytes of binary data become 4 ASCII characters.


Is my text sent to a server?

Encoding and decoding happen entirely in your browser. No data is transmitted to any server.


Can I decode URL-safe Base64 or a data URL?

Yes. Decode accepts the URL-safe alphabet (- and _ instead of + and /), missing = padding, line breaks, and a data:...;base64, prefix, so you can also decode a single JWT segment - the JWT Decoder splits and formats a whole token for you. Encode produces standard Base64 with padding; turn on URL-safe output to get - and _ with no padding instead, as used in JWTs and URLs.