Encode
Turns text (UTF-8) into Base64 — a format safe for email, data: URLs and JSON.
Encode and decode text to and from Base64 — with full UTF-8 support and a URL-safe variant. Everything runs in your browser.
Turns text (UTF-8) into Base64 — a format safe for email, data: URLs and JSON.
Recovers the original text from a Base64 string, with a clear message on invalid input.
The base64url variant uses - and _ instead of + and /, without padding — for URLs and tokens.
Base64 is an encoding scheme that represents binary data as text using 64 safe ASCII characters (A–Z, a–z, 0–9, + and /). It is used to carry data through text-only channels — e.g. email (MIME), data: URLs and JSON.
Yes. The tool encodes text as UTF-8 before converting to Base64, so Cyrillic, emoji and any Unicode characters are handled correctly (unlike raw btoa, which breaks on non-Latin1 characters).
A variant where + and / are replaced with - and _, and the = padding is removed, so the result is safe to use in URLs and file names. Enable the "URL-safe" option to produce this format.
No. Base64 is encoding, not encryption — anyone can decode it back. Do not use it to protect passwords or sensitive data; it only makes data transport-safe as text.
No. All encoding and decoding happens locally in your browser via JavaScript — nothing is sent to a server.
The input is not valid Base64 — e.g. it contains invalid characters or incomplete padding. Check that you pasted the whole string and that the "URL-safe" option matches the format.