Base64 to Image
Decode a Base64 image or data URI back into a file. Paste the string, preview, download. The inverse of our image-to-Base64 tool.
🔒 Everything happens in your browser — no upload, no server, no tracking.
No image yet.
What is this for?
This tool is the inverse of the image-to-Base64 encoder: it takes a data: URI (or a raw Base64 payload) and decodes it back into a viewable, downloadable image. It auto-detects the format from the MIME type in the URI, or — if you pass just the raw Base64 — sniffs the first few bytes (PNG signature, JPEG SOI marker, GIF8 header, RIFF…WEBP, SVG markup) to identify the image type. Everything runs in the browser via atob and an <img> data URI.
When to use it
- Recovering the original image when you've only got a data URI copied out of CSS, HTML, or a Markdown file.
- Inspecting a Base64 string from an API response or JWT-like token to check what it actually contains.
- Debugging a Base64 image that won't render somewhere — round-trip it through this tool to confirm the payload is valid.
- Pulling an embedded asset out of a single-file HTML demo or self-contained email.
Common gotchas
- Both forms are accepted. A full
data:image/png;base64,iVBORw0…or just the rawiVBORw0…payload — but if you pass raw Base64 of a format we can't sniff, the download will be tagged as.bin. - URL-safe Base64 isn't quite the same. Standard Base64 uses
+ /; URL-safe Base64 uses- _. JWT payloads use URL-safe — replace the chars before pasting here. - Whitespace inside the payload is OK. The decoder strips line breaks and spaces, so multi-line strings work.
- Browsers won't render a corrupted image — if the preview is blank but the decode succeeded, the bytes are valid Base64 but probably not a real image (or the format isn't supported).