Base64 Encode / Decode
Encode any text to Base64 or decode a Base64 string back to plain text. Full UTF-8 support and a URL-safe (base64url) mode make it reliable for tokens, data URIs, and HTTP headers.
About the Base64 Encode / Decode
Base64 encodes arbitrary binary data using only 64 printable ASCII characters, so it can travel safely through systems built for text — email, JSON, HTTP headers, and data URIs. It is an encoding, not encryption: anyone can decode it, so it provides no confidentiality on its own.
The URL-safe variant (base64url) swaps the + and / characters for - and _ so the result can sit inside a URL or filename without escaping. JWTs, OAuth tokens, and many web APIs use this variant, which is why having both modes in one tool is handy.
How to use it
- 1Paste plain text to encode it, or a Base64 string to decode it.
- 2Toggle URL-safe mode if you are working with base64url tokens.
- 3Copy the converted output with a single click.
Features
- Encode and decode in one place, switching instantly
- Correct UTF-8 handling for emoji and non-ASCII text
- URL-safe base64url variant (-/_ instead of +/) for tokens and URLs
- One-click copy of the result
Frequently asked questions
Is Base64 encryption?
No. Base64 is reversible encoding, not encryption. Anyone can decode it, so never use it to protect secrets — use real encryption for that.
What is the difference between Base64 and base64url?
base64url is a URL-safe variant that replaces the + and / characters with - and _ and usually drops padding, so the value is safe inside URLs and filenames. JWTs use base64url.
Does it support UTF-8 and emoji?
Yes. The tool encodes text as UTF-8 before Base64, so non-ASCII characters and emoji round-trip correctly.
Is my data private?
Yes. Encoding and decoding happen entirely in your browser; nothing is sent to a server.