Base64 Encode / Decode
Encode text to Base64 or decode Base64 back to text, with full Unicode support.
Frequently Asked Questions
Does Base64 encrypt my data?
No. Base64 is an encoding, not encryption. Anyone can decode it back to the original text instantly. Never use Base64 to protect passwords or secrets — use it only to make data safe to transport as text.
Does this handle emoji and non-English characters?
Yes. Input is encoded as UTF-8 before conversion, so accented letters, non-Latin scripts, and emoji all encode and decode correctly without corruption.
Why did decoding fail?
The input was not valid Base64 — for example it contained characters outside the Base64 alphabet or had incorrect padding. Check that you pasted the complete, unmodified string.
Is my input uploaded anywhere?
No. All encoding and decoding happens in your browser using built-in JavaScript. Your data never leaves your device.
What are Base64 data URIs used for?
A data URI embeds a file’s Base64 content directly in HTML or CSS (for example a small image or font), avoiding a separate network request. It is handy for tiny assets but inflates the file size by about a third.
Base64 Encoder & Decoder — Convert Text To and From Base64
Base64 is an encoding scheme that represents binary or text data using a set of 64 printable ASCII characters (A–Z, a–z, 0–9, plus + and /). It was designed so that arbitrary data can travel safely through systems that only reliably handle plain text — email bodies, URLs, JSON payloads, HTML data URIs, and HTTP headers. Encoding does not encrypt or compress the data; it simply repackages it into a text-safe form, and anyone can decode it back to the original.
This tool converts in both directions. In encode mode, it takes your plain text and produces the Base64 representation. In decode mode, it takes a Base64 string and reconstructs the original text. Crucially, it handles the full range of Unicode correctly — accented letters, non-Latin scripts, and emoji all round-trip cleanly. Many naive Base64 tools break on anything outside basic ASCII because the underlying browser functions expect single-byte characters; this tool encodes text as UTF-8 first, so "héllo 🌍" survives a full encode-then-decode cycle unchanged.
Everything happens locally in your browser. Your input is never uploaded, logged, or stored, so it is safe to paste tokens, configuration snippets, or private text. If you paste something that is not valid Base64 into the decoder, the tool tells you rather than producing garbage.
Common uses include: inspecting the payload of a JSON Web Token (JWT), embedding a small image or font directly in CSS or HTML as a data URI, decoding a Base64 blob returned by an API, encoding credentials for a Basic Authentication header, storing binary-ish data inside a text-only configuration file, and learning how Base64 padding and character mapping work. Remember that Base64 offers no security whatsoever — it is trivially reversible — so never use it to hide secrets; use it only to make data safe to transport as text.
How to Use the Base64 Encode / Decode
- Choose Encode to turn plain text into Base64, or Decode to turn Base64 back into text.
- Type or paste your input into the box.
- The converted result appears instantly below.
- If decoding fails, you will see an "invalid Base64" message so you can check the input.
- Click Copy to grab the result.
Related Tools
JSON Validator & Formatter
Validate JSON for errors and format it with custom indentation — all in one tool.
Case Converter
Convert text to UPPERCASE, lowercase, Title Case, camelCase, snake_case, kebab-case and more instantly.
UUID Generator
Generate version 4 UUIDs (Universally Unique Identifiers) instantly. Generate up to 20 at once and copy with one click.