Base64 to file.
Paste Base64 and get the file back. The tool decodes the bytes in your browser, tells you what they look like, shows an image when it is one, and downloads under the name you choose.
Base64 to file.
Need the UI around it? With Pro, your AI agent builds the form, the result card and the rest of the page from a prompt.
Get ProHow it works
3 steps, no account. It runs in your browser and nothing is uploaded.
Paste the Base64
Paste the Base64, or drop a text file that holds it; the bytes are decoded as you type.
See what the bytes are
The result says how many bytes there are and what format they start like, with a preview when it's an image.
Name the file and download it
The name is guessed from the bytes; change it if you know better, then press Download.
Related tools
More encoders and decoders. Every one free, in the browser.
Pricing
Build it with Pro
The tool is free. Pro adds 6,000+ blocks, premium templates and the MCP server, so your AI editor builds the product around it.
4.9/5 out of 5 · 150+ reviewsfrom 150+ founders and developers.
- Secure checkout via Stripe
- Code lives in your repo
- Keep what you've shipped if you cancel
- License terms
Questions and answers
Before you trust the result: what to know about the format, the limits, your data and the tools next to it.
Base64 writes binary data with 64 printable characters: A to Z, a to z, 0 to 9, + and /, with = as padding. It dates from the PEM mail standard of 1987, was fixed in MIME in 1993 and is specified in RFC 4648. It exists so that bytes can travel through systems built for text, such as email and JSON.
Three bytes are 24 bits, split into four groups of six bits, each written as one of the 64 characters. The output is a third larger than the input. When the input isn't a multiple of three bytes, the last group is padded with one or two = characters so the length is a multiple of four.
Email attachments (MIME), data URLs in HTML and CSS, JSON Web Tokens, HTTP Basic authentication headers, images inlined in stylesheets, binary fields in JSON and XML, and the SSH and PEM key files on every developer's machine.
Not the standard alphabet: + and / have meanings in a URL and = is reserved, so they have to be percent-encoded. The URL-safe variant from RFC 4648 §5 swaps them for - and _ and usually drops the padding; JWTs and most web APIs use it. The encoder here offers both.
It is the default for a reason: a third larger than the bytes, where hex doubles them and Base85 adds a quarter; built into every language and browser (btoa, atob, Buffer); and understood by every protocol. Pick Base32 when case can't be trusted, Base58 for things people copy by hand, Base85 only where PDF or PostScript asks for it.
No. Base64 is an encoding, not encryption: it changes how bytes are written, not who can read them, and anyone can decode it with no key. Encrypt first (AES, age, a library's sealed box) when the content needs protecting, then encode the ciphertext if it has to travel as text.
Paste the Base64 into the input, or drop a text file that holds it. The tool decodes the bytes, says what they look like and how many there are, and shows the image when they are one. Check the file name, which is guessed from the bytes, and press Download.
From the first bytes. Most formats start with a signature, 89 50 4E 47 for PNG, %PDF for PDF, PK for ZIP, and the tool knows the common images, documents, archives, fonts and media, and tells text from the rest. It is a guess for the file name only; if you know what the bytes are, rename the file and it downloads under that name.
Usually the Base64 was cut short or carries something extra. Copy the whole value, including its end; leave out quotes and commas from the surrounding code; a data URL's data:…;base64, prefix is fine, the tool drops it. If the status line says the bytes look like text when you expected an image, the value wasn't the file's Base64 to begin with.
Nothing leaves your browser. The text is read into memory on your machine and the encoding is computed there, in plain JavaScript; the page makes no request with it. Load the page, go offline and it keeps working.
No. The "Base64 to file" tool is free and opens without a sign-in, an account or an install.
Nothing. The "Base64 to file" tool holds your input in the page's memory, so closing or reloading the tab clears it, and it saves nothing in this browser.
Yes: you can rename it before downloading. The default name is decoded plus the extension the format suggests, such as decoded.png.
When the bytes start like a PNG, JPEG, GIF, WebP, AVIF, ICO, BMP or SVG image, the page shows a preview before you download it. Other types show their size and the name of the format they start like.
The decoder takes the standard and the URL-safe alphabet, with or without = padding, ignores spaces and line breaks, and drops a data:...;base64, prefix.
Closest to the "Base64 to file" tool: File to Base64, Base64 decoder, Base64 encoder, Base32 to file. Each opens on its own page, free and in the browser.
The "Base64 to file" tool is one of 32 in its group. The group's page, /tools/encoding, lists them all.
The tool is free. Its interface is built from shadcn.io's own components (Button, Input, Slider and the rest of the registry under /ui), which come in React, Vue, Svelte and Solid. Pro adds the blocks and templates for the product around it.
4.9 out of 5 from 150+ developers
Build the product around it
Every block, template and icon, installed by your AI agent in your theme. The tools stay free.
Get Pro





