How to use the Base64 Encoder
- Type or paste the text to encode.
- The Base64 output updates as you type.
- Turn on “URL-safe” for use in URLs, file names or JWTs.
- Copy the result, or switch to decode with one click.
What Base64 is for
Base64 represents any bytes using only 64 safe characters (A–Z a–z 0–9 + /). It is used wherever binary or arbitrary text has to travel through a channel that only accepts plain ASCII: email attachments (MIME), data URIs in HTML and CSS, HTTP Basic Auth headers, and the three parts of a JSON Web Token.
Base64 is not encryption. Anyone can decode it instantly. Never use it to hide a password or secret.
Why UTF-8 matters
The browser’s built-in btoa() throws an error on any character outside Latin-1 — so a single emoji, accented name or Chinese character breaks most quick scripts. This encoder converts text to UTF-8 bytes first, which is what servers, APIs and other languages expect.
| Text | Base64 |
|---|---|
| Hello, World! | SGVsbG8sIFdvcmxkIQ== |
| café | Y2Fmw6k= |
| 👋 | 8J+Riw== |
Base64 output is always about 33% larger than the input: every 3 bytes become 4 characters, with = padding at the end when the length is not a multiple of 3.
Frequently asked questions
What is URL-safe Base64?
Standard Base64 uses + and /, which have special meaning in URLs. The URL-safe variant (RFC 4648 §5) replaces them with - and _ and usually drops the = padding. JWTs use this form.
Is Base64 encryption?
No. It is an encoding, fully reversible by anyone without a key. Use it for transport, never for secrecy.
Is my text sent anywhere?
No. Encoding happens entirely in your browser.