Convert text to and from Base64 instantly — UTF-8 safe, all in your browser.
Base64 is a way of representing arbitrary text or binary data using only 64 printable characters, so it can travel safely through systems that expect plain text. This tool encodes what you type into Base64, or decodes Base64 back into readable text, using your browser's built-in functions. Crucially, it is UTF-8 safe: accents, emoji and non-Latin scripts are handled correctly, unlike a naive encoder. Everything runs locally, so your data is never uploaded.
Type or paste your text and press Encode to get the Base64 string, or paste a Base64 string and press Decode to recover the original text. The result appears in the lower box, ready to copy. Because the tool decodes through a real parser, it will tell you if the input isn't valid Base64 rather than producing garbled output. Whitespace in pasted Base64 is ignored, so line-wrapped values decode fine.
Standard Base64 uses the characters + and /, which have special meanings in URLs and filenames. Tick the URL-safe option to produce a variant that uses - and _ instead and drops the trailing padding, which is common in JWTs, query parameters and tokens. Decoding accepts both variants automatically, so you can paste either kind without changing the setting.
No. Base64 is an encoding, not encryption — anyone can decode it. Never use it to protect secrets; it only makes data safe to transport as text.
Yes. Text is encoded as UTF-8 first, so emoji, accented letters and non-Latin scripts round-trip correctly.
No. Encoding and decoding happen entirely in your browser, and nothing you enter leaves your device.