Base64 Encode / Decode
Convert text to and from Base64.
Base64 Encode / Decode at a glance
Base64 Encode / Decode is a free online developer tool you can use right now to convert text to and from Base64 โ no account, no install and no usage limit. It runs entirely inside your browser, so whatever you enter stays on your own device.
- Price
- Free โ no trial, no paid tier, no watermark
- Sign-up
- Not required
- Where it runs
- In your browser โ nothing is uploaded to a server
- Works on
- Chrome, Safari, Firefox and Edge โ desktop, tablet and phone
- Category
- Developer Tools
About Base64 Encode / Decode
Base64 Encode / Decode converts text and binary data to and from Base64, the encoding used whenever binary content has to travel through a text-only channel โ data URIs in CSS, email attachments, JSON payloads, JWT segments and HTTP basic auth headers.
The scheme is defined in RFC 4648. It maps every 3 bytes onto 4 printable ASCII characters, which is why encoded output is always about 33% larger than the input, and why you often see one or two '=' characters padding the end when the input length isn't a multiple of three.
One thing worth being clear about, because it's a genuinely common and costly misunderstanding: Base64 is an encoding, not encryption. It's trivially reversible by anyone, offers no security whatsoever, and must never be used to protect passwords, tokens or personal data.
How to use Base64 Encode / Decode
- Enter or paste your input.
- Pick the format you want to convert to.
- Copy the converted result instantly.
Frequently asked questions
Is Base64 a form of encryption?
No. It's a reversible encoding with no key and no secrecy โ anyone can decode it instantly. Never use it to protect sensitive data; use real encryption for that.
Why is my encoded string longer than the original?
Base64 represents every 3 bytes as 4 ASCII characters, so output is roughly 133% of the input size. That overhead is the cost of making binary data safe for text-only transport.
What are the '=' characters at the end?
Padding. When the input length isn't a multiple of 3, one or two '=' characters are appended so the output length is a multiple of 4.
Does it handle Unicode and emoji?
Yes โ text is converted to UTF-8 bytes before encoding, so accented characters, non-Latin scripts and emoji all round-trip correctly.