Base64 Encoder & Decoder — Free, Browser-Based
Encode or decode anything to/from Base64. Plain text, UTF-8 strings, binary files, image data URLs — all in your browser, no upload.
How to encode and decode Base64 in your browser
- Pick a mode. Choose Encode (turn text or a file into a Base64 string) or Decode (turn a Base64 string back into text or a file).
- Paste text or drop a file. Paste raw text into the editor, or drag a file (image, PDF, binary) into the drop zone. UTF-8 is handled correctly for non-ASCII characters.
- Pick output format. For encoding: plain Base64 string, or full image data URL (data:image/png;base64,...) — ready to paste into HTML or CSS.
- Copy the result. One-click copy. Or for decoded binary output, click Download to save the original file with the correct extension.
Frequently Asked Questions
- Is my data uploaded to a server?
- No. Encoding and decoding run entirely in your browser. Your text and files never leave your device.
- Is there a file size limit?
- Up to ~50 MB encodes smoothly. Larger files may slow the browser. Note that Base64 always increases size by ~33%, so a 50 MB file becomes a ~67 MB string.
- What is Base64?
- Base64 is an encoding that represents binary data using only 64 printable ASCII characters (A-Z, a-z, 0-9, +, /). It is safe to embed in text-only contexts like JSON, URLs, HTML, CSS, or email headers.
- Why would I use Base64?
- Common uses: embedding images directly in HTML/CSS as data URLs (no extra HTTP request), encoding API keys or credentials for transmission, encoding binary attachments in JSON APIs, embedding SVG icons in CSS.
- What format is an image data URL?
- It looks like data:image/png;base64,iVBORw0KGgoAAAANS... — the MIME type, then base64,, then the encoded payload. You can paste it directly into an <img src> attribute or CSS background-image: url(...).
- Should I use line breaks or a single line?
- Single line is standard for modern web use (HTML, JSON, URLs). Line-wrapped (76 chars) is the historical MIME format used in email. Toggle between them with the line-wrap option.
Use Cases
- Embed an image inline in HTML or CSS as a data URL (no separate HTTP request)
- Decode a JWT payload to inspect its claims
- Encode an API key or credential for safe transmission in headers
- Debug a Base64 string from logs or API responses
- Embed an SVG icon directly in CSS without a separate HTTP request