Base64 Encoder & Decoder
Encode text to Base64 or decode it back, instantly and entirely in your browser. Full UTF-8 support, so accented letters, CJK text and emoji survive the round trip.
Uses - and _ instead of + and / and drops the = padding. Safe inside URLs, file names and JWT segments.
0 chars · 0 bytes · 0 lines
Result
0 chars · 0 bytes · 0 lines
What this tool handles
Unicode done right
Text is converted to UTF-8 bytes before encoding, so 中文, café and 🔒 round-trip correctly instead of throwing an error.
Forgiving decoder
Line breaks, stray whitespace, missing = padding and the URL-safe alphabet are all accepted without any clean-up on your side.
Nothing leaves the tab
Encoding runs in JavaScript on your device. Tokens, credentials and payloads are never sent anywhere.
Frequently asked questions
Is Base64 a form of encryption?
No. Base64 is an encoding, not encryption — anyone can decode it in seconds. Use it to move binary-ish data through text-only channels, never to protect secrets.
Why do other tools fail on Chinese text or emoji?
They call btoa() directly, which only accepts Latin-1 characters and throws on anything else. This tool encodes to UTF-8 bytes first, so any character works.
When should I use the URL-safe alphabet?
When the result goes into a URL, a query parameter, a file name or a JWT. Standard Base64 uses + and / which have special meaning in those places.
Can I decode a Base64 image or file?
You can decode any Base64 string, but binary data such as an image will show up as unreadable characters because the result is displayed as text.