Base64 Decoder & Encoder
Base64 Decoder turns Base64 back into text, images or files (and encodes text or files to Base64) in your browser, including data: URIs and URL-safe Base64.
At a glance
- Accepts
- Base64 text (plain, URL-safe or a data: URI), or any text or file to encode
- Outputs
- Decoded text, an image preview, or a file download with the right extension; or Base64 text to copy
- Where it runs
- Entirely in your browser, on your device
- What leaves your device
- Nothing - what you type stays in this tab
- Limits
- No size or count cap; bounded by your device's memory; files to encode are capped at 50 MB
- Account
- Not required - there is no sign-up
- Price
- Free, with no watermark and no usage cap
- Made by
- Visrut
- Last updated
- 11 October 2026
Base64 turns any bytes into plain letters and digits, so images, files and binary data can travel inside JSON, emails, URLs and HTML. This page reverses it: paste Base64 and get back the text, or the image or file it holds, ready to preview and download. It also works the other way, encoding text or a file you pick. Everything happens in your browser.
How to use it
- Decode: paste Base64 (a
data:...;base64,prefix, line breaks and URL-safe characters are all fine). Text appears straight away; an image shows a preview; any file can be downloaded. - Encode: switch to Encode, then type text or pick a file. Tick URL-safe for JWT-style output, or data URI to paste straight into HTML or CSS.
Frequently asked questions
Is what I paste sent to a server?
No. Decoding and encoding run in your browser with its built-in Base64 functions. Nothing you paste or pick leaves this tab.
How do I turn Base64 into an image?
Paste the Base64 (with or without the "data:image/png;base64," prefix). The decoder recognises PNG, JPEG, GIF, WebP, SVG, BMP and ICO from the first bytes, shows a preview, and lets you download it with the right file extension.
What is URL-safe Base64?
A variant that uses - and _ instead of + and /, often without = padding, so it can sit in URLs and JWTs. The decoder accepts both automatically; when encoding, tick URL-safe to produce it.
Why does it say my Base64 is invalid?
Base64 only uses A-Z, a-z, 0-9, + and / (or - and _), with = only at the end. The error names the first character that doesn't fit and where it is. A length that can't be Base64 usually means part of it was cut off when copying. Spaces and line breaks are ignored.
Can it decode a JWT?
Each JWT part is URL-safe Base64, so paste the middle part (between the two dots) to read the payload JSON. It doesn't verify the signature.
Is Base64 encryption?
No. It's an encoding: anyone can decode it, with no key. Don't use it to hide passwords or secrets.