Base64 encode & decode
Encode and decode Base64, including files, right in your browser. Nothing is uploaded.
Files are processed in your browser and never uploaded.
How to use Base64 encode & decode
Add your text
Type or paste your text into the input box. Everything is handled by your own browser, so nothing is sent to a server.
Set the options
Choose URL-safe (-_ , no padding). The options are visible from the start, not hidden until you paste something.
Read it and keep a copy
The output updates as you type, so there is nothing to submit and nothing to wait for. Copy result, Don puts the result on your clipboard.
What this tool does
Encode and decode Base64
Switch between Encode and Decode with the toggle. What you type in one box appears converted in the other as you type, and Copy result puts it on the clipboard.
Full Unicode (UTF-8) support
Text is encoded as UTF-8 first, so accents, emoji and non-Latin scripts survive the round trip instead of coming back as question marks.
URL-safe variant
URL-safe swaps + and / for - and _ and drops the padding, which is the form you need in a query string, a JWT or a filename.
Encode any file to Base64
Choose a file instead of typing and you get its Base64, ready for a data URI, an email attachment or an API that expects text.
Works offline, no sign-up
The conversion runs in your browser, so the text or file is never uploaded and the page keeps working with no connection.
Frequently asked questions
Is my data uploaded anywhere?
No. Encoding and decoding run entirely in your browser, including files you choose, so nothing is uploaded. It works offline once loaded.
Does it handle emojis and non-English text?
Yes. Text is treated as UTF-8 before encoding, so emojis, accents and any language encode and decode correctly.
What is URL-safe Base64?
It replaces the + and / characters with - and _ and removes the trailing = padding, so the result can be used safely in URLs and filenames.
Can I Base64-encode a file?
Yes. Choose a file and it is read in your browser and encoded to Base64. This is handy for data URLs and embedding small assets.
Why does decoding sometimes fail?
Base64 has a specific alphabet and length. If the input has stray characters or is truncated, it cannot be decoded, and a clear message is shown.
Last updated: