Base64 Encoder & Decoder
Encode and decode Base64 text instantly, with full UTF-8 support.
Runs entirely in your browser — your input never leaves your deviceAbout this tool
Base64 represents binary or text data using 64 ASCII characters so it can travel safely through systems that expect text — data URIs, JSON fields, email and HTTP headers. This tool encodes and decodes as you type, with full UTF-8 handling so emoji and non-Latin scripts round-trip correctly.
Use the Swap button to flip the input and output, and Copy to grab the result. It all runs locally, so it is safe for secrets and internal data.
Why use it
UTF-8 safe
Encodes and decodes emoji and non-Latin text correctly, not just ASCII.
Live + swap
Convert as you type and flip input/output with one click.
Local only
Nothing you paste is uploaded.
Common use cases
- Encode text for a data URI
- Decode a Base64 string to read it
- Embed small assets inline
- Debug an encoded token or header
Frequently asked questions
Does this support UTF-8 and emoji?
Yes. Text is encoded as UTF-8 before Base64, so accented characters, emoji and non-Latin scripts encode and decode correctly.
Is my text sent to a server?
No. Encoding and decoding run entirely in your browser — nothing you paste leaves your device.
Why do I get an error when decoding?
The input is not valid Base64. Check for missing characters, stray spaces, or that you didn't accidentally paste URL-safe Base64 with - and _ characters.
Can I use this for data URIs?
Yes — encode your text and prefix it with the appropriate data: scheme, e.g. data:text/plain;base64,…