Skip to content
FPSDEN

Last updated October 26, 2026

Base64 Encoder & Decoder

Encode or decode Base64

Base64 turns bytes into 64 printable characters so they can travel through systems that only accept text. Paste text to encode it, or paste Base64 to decode it. Both directions run in this tab.

Text to encode, or Base64 to decode. Line breaks in Base64 are ignored.

Encode reads your text as UTF-8. Decode reads Base64 and returns UTF-8 text.

Pick a direction and press Convert.

input bytes11output chars16aGVsbG8gd29ybGQ=encodedDirection = encodeInput = hello world

What Base64 actually does

Base64 takes every three bytes of input and writes them as four characters from a fixed 64-symbol alphabet. That is why the output is roughly a third larger than the input: three bytes become four characters. It is an encoding, not encryption — anyone can decode it, so never use it to hide a password or a secret.

Why UTF-8 matters here

Many online converters work on JavaScript characters rather than bytes, which corrupts accented letters and emoji. This one converts your text to UTF-8 bytes first, encodes those bytes, and reverses the same steps when decoding. A word like café is two bytes for the é, and the decoded result comes back as the same characters you typed.

Where Base64 shows up

It appears in email attachments (MIME), in data: URLs for small images, in JSON web tokens, in basic authentication headers, and in configuration files that must stay plain text. In each case the requirement is the same: a transport that cannot carry raw bytes, and a reader that knows to decode.

When decoding fails

Valid Base64 uses only A–Z, a–z, 0–9, plus, slash and up to two trailing equals signs. Copying a token out of a chat app often adds a stray character or converts a plus into a space, which is enough to break decoding. The decoder ignores line breaks and spaces, but it will not guess at other characters — it reports an error instead of returning mangled text.

For table-shaped data use the JSON to CSV and CSV to JSON converters, which also run locally and keep quoted values intact.

Frequently asked questions

Is Base64 encryption?

No. Base64 is a reversible encoding with a published alphabet and no key, so decoding needs nothing but the string itself. If you need confidentiality, use encryption — Base64 only makes bytes safe to pass through text-only channels.

Why is the encoded output longer than my text?

Every three bytes become four characters, so the payload grows by about 33%, plus padding. Accented letters and emoji take more than one byte in UTF-8, which is why non-English text grows a little more than plain ASCII.

Does my text leave the browser?

No. The encoding and decoding are ordinary JavaScript in this tab, and the result is written back into the page. There is no upload step, and the page keeps working if you disconnect.

Can I decode Base64 without padding?

Yes. Missing trailing equals signs are added before decoding, so a token copied without them still converts. A single leftover character that cannot form a group is rejected rather than silently dropped.