Base64 & URL Encoder / Decoder
Convert strings between raw text, Base64, and URL-encoded formats client-side. Safe for sensitive tokens.
window.btoa / atob / encodeURIComponent.No data sent over wireFrequently Asked Questions
What is Base64 encoding used for?โผ
Base64 turns bytes into plain text characters so they can travel safely through systems that only handle text, such as JSON, email, data URLs and HTTP headers. It is an encoding, not encryption: anyone can decode it.
What is URL-safe Base64?โผ
It swaps + and / for - and _ and usually drops the = padding, so the result is safe in web addresses and filenames. JSON Web Tokens use this form. Tick the URL-safe option when encoding; decoding accepts both forms automatically.
Why does my decoded Base64 show hex numbers instead of text?โผ
If the decoded bytes are not valid UTF-8 text, such as an image or a compressed file, they are shown as hex instead of as unreadable symbols.
Does it cope with a data: prefix, line breaks or missing padding?โผ
Yes. A leading data:...;base64, prefix, spaces and line breaks are ignored and missing = padding is added. A note tells you what was adjusted.
What is the difference between URL encoding and Base64?โผ
URL (percent) encoding escapes only the characters that are unsafe in a web address, for example a space becomes %20. Base64 re-writes the whole input in a different alphabet and makes it about a third larger.
Does it support emoji and non-English text?โผ
Yes. Text is converted as UTF-8, so accents, emoji and other scripts round-trip correctly.
Is my data sent to a server?โผ
No. The encoder and decoder runs entirely in your browser, so nothing you enter is uploaded, stored or tracked. Once the page has loaded it keeps working without a connection.