🖼️ Image to Base64
Convert images to Base64 data URIs. Supports PNG, JPG, WebP, and GIF. Copy the encoded string or use it directly in HTML/CSS.
Click or drop an image here to convert
PNG, JPG, WebP, GIF supportedAbout the Image to Base64 Converter
This tool converts images into Base64-encoded strings that can be embedded directly into HTML, CSS, or JSON. Select an image file and the tool reads it locally using the FileReader API, then displays the Base64 output. Nothing is uploaded — all encoding happens in your browser.
When to use data URIs
- Inline small images — Embed icons, sprites, or thumbnails directly in HTML or CSS to eliminate extra HTTP requests.
- Email signatures and templates — Some email clients render embedded images more reliably when they are encoded as data URIs.
- Single-file deliverables — Bundle everything into one HTML file for demos, prototypes, or offline documentation.
- JSON payloads — Send image data inside JSON APIs where binary uploads are not convenient.
Pros and cons of Base64 images
Pros: Fewer HTTP requests, self-contained files, no separate asset management, works well for small images.
Cons: Base64 encoding increases file size by about 33%, larger HTML/CSS files take longer to parse, and very large images can hurt performance. Use data URIs mainly for small assets.
Frequently asked questions
What is the difference between a Data URI and Raw Base64? A Data URI includes the data:image/...;base64, prefix and can be used directly in src attributes and CSS url(). Raw Base64 is just the encoded string without the prefix.
What does "Copy as CSS" do? It copies the string as background-image: url('data:image/...;base64,...'); so you can paste it straight into a stylesheet.
Is my image uploaded to a server? No. The conversion happens entirely in your browser using the FileReader API. Your image never leaves your device.
Is there a file size limit? The only limit is your browser's available memory. For best performance, keep images under a few megabytes.