Free Base64 Encoder & Decoder
Encode any text to Base64 or decode it back again. Handles accents and emoji correctly through proper UTF-8 conversion, and runs entirely in your browser.
What is the base64 encoder & decoder?
Base64 is a way of representing any data using only 64 safe characters — letters, digits, plus and slash. It exists because some systems can only carry plain text reliably: email attachments, data URIs in CSS, JSON web tokens and some API headers all use it. Encoding to Base64 makes data safe to travel through those channels; decoding turns it back. It is emphatically not encryption — anyone can decode Base64 instantly, so it offers no security whatsoever. Slashit's converter handles Unicode properly by routing through UTF-8, which is where many browser-based tools fail and mangle emoji or accented characters, and it runs entirely on your device.
How our free base64 encoder & decoder works
Choose a direction
Encode plain text to Base64, or decode Base64 back to readable text.
Paste your input
Type or paste — the result appears immediately below.
Copy the result
One click copies the output ready to paste wherever you need it.
Who uses our free base64 encoder & decoder?
Developers
Decode JWT payloads, build data URIs and inspect encoded API values.
Support engineers
Read Base64 blobs attached to bug reports and log entries.
Email and marketing teams
Work with encoded attachments and embedded assets.
Anyone handed an encoded string
Find out what a block of Base64 actually says.
Why use the base64 encoder & decoder?
Unicode-safe
Emoji and accented characters survive the round trip, which many simple tools break.
Both directions
Encode and decode in the same place with one toggle.
Runs locally
Nothing is uploaded, so encoded tokens and payloads stay private.
What Base64 does and doesn't do
Base64 is an encoding, not encryption. It exists to move binary data safely through channels that only handle text — the table below is the practical summary of what that means for you.
| Question | Answer | What it means in practice |
|---|---|---|
| Is it encryption? | No | Anyone can decode it in one click — never use it to hide a password or key |
| Size change | About +33% | 3 bytes become 4 characters, so a 1 MB image becomes roughly 1.33 MB |
| Character set | A–Z a–z 0–9 + / | Safe in JSON, email headers and HTML attributes |
| Padding | = or == | Pads the last group to 4 characters; a missing = is the usual cause of a decode error |
| URL-safe variant | - and _ replace + and / | Needed for tokens in a URL, because + and / are reserved there |
| Line breaks | Allowed in email | MIME wraps at 76 characters; most decoders ignore the breaks |
Tips for getting the best results
Base64 is not security
It's an encoding, not encryption. Never use it to hide passwords or sensitive data — decoding takes one click.
Expect it to grow
Base64 makes data roughly a third larger. That's the cost of using only safe characters.
Watch for URL-safe variants
Some systems swap + and / for - and _. If decoding fails on a token, that's often why.
Padding matters
The trailing = signs are part of the format. Stripping them can break decoding in strict parsers.
Common problems and how to fix them
"Invalid character" when I decode
Usually a stray space or a line break pasted in from an email. Strip whitespace first — or the string is URL-safe Base64, where - and _ need converting back to + and /.
The decoded text is unreadable symbols
You decoded binary, not text. A PDF or image decodes to bytes, not letters — that output belongs in a file, not a text field.
My data URI won't display
Check the prefix matches the content, for example data:image/png;base64, — a PNG served as image/jpeg silently fails to render.
Is it safe to paste sensitive data here?
Encoding runs entirely in your browser and nothing is uploaded. But remember the output itself is not protected — it is one click from being read.
Frequently asked questions
What is Base64 used for?
Carrying binary or unusual data through channels that only handle plain text — email attachments, data URIs in CSS and HTML, JWTs, and some API headers.
Is Base64 encryption?
No. It's an encoding with no key and no secrecy — anyone can decode it instantly. Never use it to protect sensitive information.
Does it work with emoji and accented characters?
Yes. The text is converted through UTF-8 first, so emoji, accents and non-Latin scripts encode and decode correctly.
Why did my decode fail?
Usually the string is truncated, has had its = padding removed, or uses the URL-safe variant with - and _ instead of + and /.
Is my data sent anywhere?
No. Encoding and decoding happen entirely in your browser.