Free online tool. All processing is client-side. No signup needed.
A Base64 File Converter encodes any file (image, PDF, audio, document) into a Base64 data URI string, or decodes a Base64 string back to its original file. Base64 file encoding is the foundation of: embedding images directly in HTML/CSS (data:image/png;base64,...), sending file attachments through text-only APIs (JSON, XML), storing binary data in text-only databases, and inlining small assets to reduce HTTP requests. This tool handles files of any type with instant preview for common formats.
Upload a file or paste a Base64 string. For encoding: the file's binary data is read, converted to Base64, and wrapped in a data URI with the correct MIME type (data:[mime];base64,[data]). For decoding: the Base64 string (with or without the data URI prefix) is parsed and the original file is reconstructed — download it with the correct filename and extension. Common file types (images, PDFs, text) show a preview.
Encode File → Base64 Data URI:\n\ndata:[<mime type>];base64,<base64-encoded-data>\n\nExample (1-pixel red PNG):\ndata:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8/5+hHgAHggJ/PchI7wAAAABJRU5ErkJggg==\n\nSize Calculation:\nBase64 size = Ceil(original bytes × 4/3)\nPadding = 0, 1, or 2 '=' characters\nOverhead = ~33% size increase\n\nFor CSS: background-image: url(data:image/png;base64,...)\nFor HTML: <img src=\
Browser-based encoding works up to ~50MB before memory becomes a concern. Beyond that, use a streaming encoder. The output will be ~33% larger — a 50MB file produces ~67MB of Base64 text.
Large files (>100KB), files that need caching (external URLs cache better), files you'll update frequently (data URIs require updating everywhere), and email attachments (use standard MIME attachment encoding instead).
Free online Base64 File Converter — no signup, 100% client-side processing. All data stays in your browser.