FileGizmo Developer tools
Encode and decode Base64
Encode text to Base64 or decode Base64 back to text locally, with correct UTF-8 and URL-safe output.
Simple by design
Base64 encoder and decoder in three steps
Base64 turns arbitrary bytes into a limited set of characters that survive systems built for text. That is why it shows up in data URLs, email attachments, API payloads, and JSON Web Tokens: those channels cannot carry raw bytes safely, and Base64 gives them something they can.
It is worth being blunt about what it is not. Base64 is not a security measure. It is reversible by design and takes no key, so a Base64 string is readable to anyone who cares to look. Treat encoded credentials as if they were written in plain text, because effectively they are.
Two details cause most of the trouble people run into elsewhere. The first is character handling: the browser’s built-in encoder only understands Latin-1, so a name with an accent or a line of Japanese comes back corrupted. This tool converts through UTF-8 in both directions, so what goes in comes back out. The second is the alphabet. Standard Base64 uses plus, slash, and equals padding, all of which mean something else inside a URL. The URL-safe option produces the variant used by tokens and query parameters instead.
Decoding accepts either alphabet and tolerates missing padding, since real world strings are frequently trimmed. If the result would be binary rather than text, the tool says so instead of returning unreadable characters.
- 1
Paste text or Base64 into the box
- 2
Choose encode or decode
- 3
Copy the converted result
Good to know
Frequently asked questions
Does Base64 keep my text secret?
No. Base64 is an encoding, not encryption. Anyone can decode it instantly, so it protects nothing on its own.
Why do accented characters and emoji break on other sites?
Many converters use the browser's raw btoa, which only handles Latin-1 and mangles anything outside it. This one encodes through UTF-8, so any language and emoji survive the round trip.
What is the URL-safe option for?
Standard Base64 uses plus and slash, which have meanings inside a URL. The URL-safe alphabet swaps them for minus and underscore and drops the padding, which is the form used in JWTs and query strings.
Is my input sent anywhere?
No. Conversion happens in the page, which matters because Base64 strings pasted into a converter are often tokens or credentials.
Learn more