Input

Result

Encoded Base64 will appear here

Supports UTF-8, multi-byte characters, and large text

Session History

No history yet

Conversions will appear here

Instant Processing

Real-time encoding and decoding as you type. Web Worker for large files.

100% Private

All processing happens in your browser. No data is ever sent to a server.

Smart History

Session history with one-click restore. Auto-detects Base64 input.

What Is Base64 Encoder / Decoder?

Base64 is a binary-to-text encoding scheme that represents binary data as an ASCII string. ToolRunner's Base64 Encoder / Decoder converts text and files to and from Base64 format instantly in your browser — no data ever leaves your device.

Key Features

  • Real-time encoding and decoding as you type with debounced updates
  • Multi-byte character support (UTF-8) — correctly handles Korean, Japanese, Chinese, emoji, and other Unicode text
  • File-to-Base64 conversion with drag-and-drop upload (up to 50MB)
  • Base64-to-File decoding with preview and download
  • Data URI generation for embedding images and files in HTML/CSS
  • Smart auto-detection of Base64 input with one-click mode switching
  • Session history with restore and storage usage tracking
  • Web Worker processing for large inputs (10MB+) to keep the UI responsive

How to Use

For text: Type or paste your text and the Base64 result appears instantly. Click DECODE to convert Base64 back to text. Use the Swap button to exchange input and output. For files: Switch to the File Converter tab, drag-and-drop or select a file to get its Data URI. To decode, paste a Base64 string or Data URI and click Decode to File.

Why Use a Browser-Based Base64 Tool?

Base64-encoded data often contains sensitive content such as API tokens, images, certificates, or configuration payloads. Online tools that send your data to a server expose this information to third parties. ToolRunner processes everything client-side with JavaScript, so your data never leaves your machine. It also works offline after the first page load.

Common Use Cases

  • Encoding images to Data URIs for inline embedding in HTML or CSS
  • Decoding Base64-encoded API responses or JWT payloads
  • Preparing binary data for JSON or XML transport
  • Converting files to Base64 for email attachments (MIME encoding)
  • Debugging encoded configuration values in environment variables
  • Encoding multi-byte text (Korean, Chinese, Japanese) for safe ASCII transport

Frequently Asked Questions

What is Base64 encoding?
Base64 is an encoding scheme that converts binary data into a set of 64 ASCII characters (A-Z, a-z, 0-9, +, /). It is commonly used to embed binary data in text-based formats like JSON, XML, HTML, and email (MIME). The encoded output is roughly 33% larger than the original binary data.
How are multi-byte characters (Korean, emoji) handled?
Text is first converted to its UTF-8 byte sequence using the TextEncoder API, then each byte is Base64-encoded. This ensures that all Unicode characters — including Korean, Chinese, Japanese, and emoji — are correctly preserved during round-trip encoding and decoding.
Is my data sent to any server?
No. All encoding and decoding happens entirely in your browser using JavaScript. Your data never leaves your device.
What is the maximum file size supported?
The File Converter supports files up to 50MB. For text input larger than 10MB, processing is offloaded to a Web Worker to keep the UI responsive.
What is a Data URI?
A Data URI is a scheme that allows you to embed file data directly in a URL string, formatted as data:[mediatype];base64,[data]. It is commonly used to inline small images in HTML or CSS without requiring a separate HTTP request.