The Volade Ecosystem — Web Tool

Base64 Encoder / Decoder

Encode text, files and URLs to Base64, then decode any Base64 string back to readable text — in real time, with the URL-safe variant, controlled padding, UTF-8, Latin-1 and UTF-16 encodings, file ⇄ Base64 conversion with data URI and byte-by-byte detail. Free, no sign-up and 100 % local: nothing leaves your browser.

5 conversion modes0 byte sent to the server∞ conversions, no size limit
The tool

Your online Base64 encoder decoder

Paste a text or a Base64 string: the conversion updates on every keystroke, with no « Convert » button.

Base64 Encoder / Decoder

Online Development, Code & Data
Sign in
Shortcuts: Ctrl+Enter convert
Ready.
Conversions run as you type · Ctrl+Enter converts the active tab · the URL-safe variant replaces + with - and / with _ · 100 % local, nothing leaves your device.
0,0 0Note All tools
Free or Premium?

The Base64 encoder decoder is free and unlimited: no account, nothing to install, no network request. Premium unlocks the whole Volade ecosystem.

FreeReal-time Text ⇄ Base64, UTF-8, Latin-1 and UTF-16
FreeURL-safe variant, controlled padding, line breaks
FreeFile ⇄ Base64, data URI, byte-by-byte breakdown
PremiumEncrypted cloud sync for history and snippets
PremiumAPI access and scripts shared across ecosystem tools
Unlock Premium
Features

Encode and decode Base64, no limits

One engine covers text, files, URLs and binary analysis — without ever leaving your device.

Real-time Text ⇄ Base64

Paste text, JSON or HTML and get its Base64 version as you type — then the reverse: paste a Base64 string and read the content right away. Six character encodings are supported, the URL-safe variant and padding are toggleable, and the byte-by-byte detail accompanies every decode.

Encode now

File ⇄ Base64 and data URI

Drop a file (image, PDF, archive, font) to get its Base64 representation and, if needed, a data URI ready to paste into CSS, HTML or JSON. The other way around, paste a Base64 string or a full data URI: the tool detects the MIME type, suggests a file name and rebuilds the original file.

Convert a file

Complete privacy

No network request: encoding and decoding run entirely in your browser, even offline. Perfect for passwords, JWT tokens, API keys, HTTP headers and any sensitive content you would not entrust to anyone.

Learn more
How it works

Encode or decode in three steps

No installation, no sign-up: the tool is always ready, on mobile and desktop.

Paste your content

Text, JSON, HTML, password or an already-encoded Base64 string: paste it into the « Encode » or « Decode » tab. A file can be picked in the dedicated tab, and a data URI is recognised automatically.

Set the format

Pick the character encoding, switch to the URL-safe variant, drop the padding or add line breaks depending on the target (JWT, URL, CSS, email, database…). The result updates instantly.

Copy and reuse

Copy the result, download it as .txt, move it between tabs or share the link. The local history keeps your latest conversions so you can reload them in one click.

Quick reference

Base64 at a glance: size, alphabet and variants

What most developers check before encoding — with the interactive alphabet in the « Alphabet & reference » tab.

ContentBytesBase64 charactersPaddingExample
One ASCII character (« A »)14« == »QQ==
Two characters (« AB »)24« = »QUI=
Three characters (« ABC »)34noneQUJD
« Hello » (UTF-8)58« = »SGVsbG8=
« Hello world! » (UTF-8)1824noneQm9uam91ciBsZSBtb25kZSAh
« é » (UTF-8)24nonew6k=
« 日 » (UTF-8)34none5piv
Null byte (0x00)14« == »AA==

What do « encoder » and « decoder » mean in Base64 ?

Encoding to Base64 (« encode base64 ») turns bytes — usually the bytes of UTF-8 encoded text — into a string of 64 allowed characters: the 26 uppercase letters, the 26 lowercase letters, the 10 digits, and then + and /. Decoding Base64 (« decode base64 ») does exactly the reverse: the string is read four characters at a time, each character maps 6 bits, and 24 bits give 3 bytes. This back-and-forth is what most people are after when they type « encode and decode base64 ».

Base64 is neither compression nor encryption: the text becomes about a third longer, and anyone can read it in a second. Its purpose is to carry bytes over channels that only accept safe ASCII characters — URLs, HTTP headers, config files, JSON, inline SVG, emails, text databases.

How to encode text to Base64

Step 1: the text is first encoded into bytes using the chosen character set — UTF-8 by default, though Latin-1, Windows-1252, ASCII or UTF-16 remain useful for legacy data. Step 2: the bytes are read three at a time, i.e. 24 bits. Step 3: those 24 bits are split into four 6-bit blocks, and each block is replaced by the character at the matching position in the alphabet. Step 4: if the last group is incomplete, it is filled with zero bits and the string is closed with one or two = (the padding).

Step-by-step example: « AB » is 65 then 66 in decimal, i.e. 01000001 01000010. With three bytes and padding: 01000001 01000010 00000000. The four 6-bit groups are 010000 010100 001000 000000 → positions 16, 20, 8, 0 → QUI=. Just type « AB » into the encoder: the result appears before you even release the key.

How to decode Base64 to text

Decoding reads the string in groups of 4 characters after stripping line breaks and any spaces. Each character is replaced by its 6-bit value, the four values are concatenated into 24 bits, then the 24 bits are split into 3 bytes. The = at the end tell how many useful bytes the last group holds: one = means 2 bytes, two = mean 1 byte.

If the string contains - or _, it is the URL-safe variant: the tool converts them to + and / before decoding. If the padding is missing, the « Fix padding » button restores it. If a character is outside the alphabet, a tab sits in the wrong place or the length is not a multiple of 4, the error is shown with the exact reason instead of a bare « invalid ».

URL-safe variant (RFC 4648 §5)

Standard Base64 uses + and /, two characters that cause trouble in a URL: the + is read as a space by most servers, and the / can be mistaken for a path separator. The URL-safe variant replaces them with - and _, which need no escaping. It is required in JWT (the three segments of a token are encoded without padding), in cookies, in identifiers and URL parameters.

Padding « = »: what it is for

Base64 works in groups of 4 characters, but a file size is almost never a multiple of 3 bytes. Padding restores the expected length: 1 byte left over gives ==, 2 bytes left over give =. Some systems drop it (certain APIs, Base64URL); others require it (PHP, older decoders). The encoder's « No padding » option and the decoder's « Fix padding » button cover both cases.

Character encoding: UTF-8, Latin-1, UTF-16

Base64 knows nothing about characters, only bytes. The crucial question is therefore: what do you encode the text with before Base64 ? In UTF-8, « é » is 2 bytes and « 日 » is 3; in Latin-1, « é » fits in 1 byte but « 日 » becomes impossible. UTF-8-decoding a string encoded in Latin-1 produces garbage characters (« mojibake »). If you ask an online tool and the result makes no sense, the starting encoding is almost always different — hence the six options offered here.

Files, data URIs and images in Base64

A data URI has the form data:<MIME type>;base64,<data>. It lets you embed an image directly in CSS, HTML or JSON: background-image:url(data:image/png;base64,iVBOR…). To decode, paste the whole string into the « File ⇄ Base64 » tab: the MIME type is extracted, a name is suggested, then the file is regenerated and downloadable. Mind the size: Base64 adds about 33 % and a data URI is never cached separately.

Base64, URL encoding and why not to mix them up

The percent-encoding (%20, %C3%A9) replaces every disallowed byte with a percentage: it is two to three times longer than Base64 but keeps the original text readable. Base64 produces a compact, uniform string, perfect for blobs, but unreadable. The « URL & data URI » tab offers both conversions side by side to avoid the classic mistake of encoding a URL in Base64 when it needed escaping — or the reverse.

Base64 in everyday formats

Base64 is everywhere: the three segments of a JWT, the src attribute of an inline SVG image, the cert field of a PDF, the attachments MIME parts of emails (RFC 2045), the Authorization: Basic headers of APIs (user:password), the files .pem and SSH keys, the contents of .docx and .xlsx (ZIP), avatars in client-side storage, and the data- attributes of automated tests. Knowing how to encode and decode quickly saves you opening a terminal for a single string.

What Base64 is not

Base64 encrypts nothing: an encoded string is recovered in one line of code. Never use it to protect a password, an API key or personal data. It is not compression either: always budget 33 % extra size. Finally, Base64 suits already dense compressed binary (PNG, ZIP) poorly beyond a few megabytes, where the memory cost becomes a penalty.

Performance and best practices

In the browser, TextEncoder and TextDecoder process several megabytes per second; the Base64 algorithm itself is linear, with no recursion and no per-character allocation. Files over 5 MB can slow the interface: for bigger batches, prefer a Web Worker or server-side processing. Always keep the original encoding documented next to the string, and test the round trip (encode then decode) before storing a result in a database.

Recommended for

Back-end and front-end developers (tokens, data URI, HTTP headers), integrators and technical writers (inline SVG, background images), system administrators and DevOps (certificates, keys, dumps), testers and pentesters (Authorization Basic, parameter fuzzing), students (understanding bytes, ASCII and UTF-8), and anyone who needs a base64 encoder decoder online fast, complete and private.

FAQ

Frequently asked questions about the Base64 encoder decoder

Everything you want to know before you encode or decode.

How do I encode text to Base64?

Paste your text in the « Encode » tab: it is turned into bytes (UTF-8 by default), then into four Base64 characters for every group of three bytes. The result appears instantly, with the input size, the character count and the roughly 33 % overhead. Click « Copy Base64 » to use it.

How do I decode a Base64 string to text?

Paste the string in the « Decode » tab: the tool strips spaces and line breaks, detects the standard or URL-safe variant, restores the padding if needed and shows the decoded text along with the byte-by-byte detail. If the result is unreadable, change the « Text decoding » option — the original encoding is probably not UTF-8.

What is the difference between standard and URL-safe Base64?

The standard variant (RFC 4648 §4) uses + and /, which break URLs and are misread as spaces in parameters. The URL-safe variant (RFC 4648 §5) replaces them with - and _. Both carry exactly the same information: the tool converts between the two automatically when decoding, and the « URL-safe variant » checkbox directly outputs the format expected by JWTs and cookies.

Why does my Base64 string end with « = »?

Padding completes the last group when the byte count is not a multiple of three: one = means two useful bytes, two = mean one useful byte. It is required by most classic decoders but dropped by Base64URL. Use « No padding » to encode without =, or « Fix padding » to restore it before decoding.

Does Base64 encrypt data?

No. Base64 is a plain transport encoding: it protects nothing and decodes in a single operation. It only serves to move bytes through text channels (URLs, JSON, emails, headers). To protect a password, a key or personal data, use real encryption or salted hashing.

How many characters does Base64 add?

Exactly 4 characters for every group of 3 bytes, a constant overhead of about 33 % — the formula is 4 × ⌈number of bytes ÷ 3⌉, padding included. The table in the « Alphabet & reference » tab gives the most common mappings, and the encoder statistics show the real overhead of your content.

Can I encode a file or an image in Base64?

Yes: open the « File ⇄ Base64 » tab, select a file and its Base64 version is generated with its size and, on request, a full data URI. The other way around, paste a Base64 string or a full data URI such as data:image/png;base64,… to rebuild the file: the MIME type is detected, a file name is suggested, then the download starts.

Does the tool send my data to a server?

No: everything runs in your browser, with no network request and no account. You can use it offline, with passwords, JWT tokens, API keys or confidential code snippets. The history stays in your device's local storage and can be cleared in one click.

100 % local Base64 encoder decoder: your data never leaves your computer

Unlike typical online Base64 encoders, nothing is transmitted: encoding, decoding and file conversion run entirely in your browser. That is what lets you encode a password, a token, a certificate or an internal code snippet safely, even in airplane mode or on a public network. History and your last input are kept locally (localStorage) and stay on your device.

The Volade Premium license adds an optional, encrypted cloud sync that works independently of the tool — everything else stays free and unlimited, with no sign-up.

One premium license, all your web tools

Base64 encoder decoder, JSON formatter, generators, PDF editors and dozens of free tools — plus the whole Volade ecosystem under a single license.

One licence, the whole premium ecosystem Browser · CMS · Desktop · Mobile · Scripts · API · Tools · Database
One licence, the whole ecosystem Go premium Log in