Base64 Encode / Decode
Convert text to and from Base64 with UTF-8 safety — entirely on your device.
How to use Base64
Free Base64 encoder and decoder with UTF-8 safety. Encode text or decode Base64 locally.
Open Base64 on toolpermarket, then enter the values you want to work with.
In the Input field, type or paste the text you want to encode or decode. Switch the mode toggle between Encode and Decode depending on the direction you need.
In the Mode field, pick Encode to turn text into base64, or Decode to reverse it. Decoding garbage that was never base64 returns an error rather than silent junk.
Press Encode to compute the result. The output appears immediately below the form. Tweak any field and run it again to check a different scenario.
Read the result and use it as needed. If the number looks off, re-check your inputs and run it again — the math is deterministic, so the same entries always return the same answer.
Worked example. Encoding the word Hello returns SGVsbG8=, and decoding that string returns Hello exactly.
Tips for accurate results.
Base64 is encoding, not encryption — do not use it to hide secrets.
Stripping line breaks from decoded output when pasting into code.
Remember the = padding at the end is normal and required for decoding.
When to use Base64. Embedding small binaries in data URIs or config. Passing binary-safe text through systems that hate control chars. Decoding tokens or fixtures during debugging.
When you actually reach for this
- You need to embed binary-ish data (an image, a token, a cert) inside a text-only channel like JSON, CSS url(), or an email header.
- A service returns a Base64 string and you want to confirm what it actually decodes to before trusting it.
Where this tool stops being accurate
- Base64 inflates size by about a third, so never use it as a space-saving format — it is encoding, not compression.
- It carries no integrity check: a single flipped character decodes to garbage with no error.
Frequently asked questions
Is base64 the same as encryption?
No. Base64 is an encoding that represents binary data using only printable characters; it provides no confidentiality. Anyone can decode it instantly. Use it to move data through text-only pipes, never to protect a password or secret — for that you need real encryption.
What is the = at the end for?
Base64 works in groups of three bytes, and the = padding marks when the final group is short. The padding is required for correct decoding, so leave it in place. Some systems strip it, but keeping it avoids off-by-one decode errors.
Can it handle non-English characters?
Yes, but the input is treated as UTF-8 text first. Accented or non-Latin characters encode correctly as long as your editor saved the text in UTF-8; the tool reads the bytes of that encoding before base64-ing them.
Why does my decoded Base64 have an equals sign or weird padding at the end?
The = characters are padding so the length is a multiple of 4; they are normal and should be kept when re-encoding. Trailing garbage after decoding usually means the input was truncated or concatenated from more than one blob.
Is Base64 a safe way to store passwords?
No. It is reversible encoding, not hashing — anyone who sees the string can decode it instantly. Use a password hash like bcrypt or argon2 instead.