Developer Tools
Convert UTF-8 text or arbitrary files to Base64, decode Base64 back to text, or download decoded binary data.
Mode
Simple workflow
How to use Base64 Encoder & Decoder
- 1Choose text or file mode.
- 2Enter data and encode or decode.
- 3Copy the result or download decoded bytes.
Good to know
Frequently asked questions
Does Base64 protect or encrypt data?
No. Base64 is a reversible byte-to-text encoding. Anyone who receives the encoded value can decode it, so it must not be used as confidentiality or access control.
Are text or file bytes uploaded for conversion?
No. UTF-8 text conversion runs in this tab, and file conversion runs in a local Web Worker. Inputs and decoded bytes are not sent to UtilSprout or an external API.
Practical guide
Move between bytes and standard Base64 without confusing it with encryption
Base64 maps binary bytes to a restricted printable alphabet. It makes binary data convenient to place in text-oriented formats, but it provides no confidentiality, integrity or authenticity. Anyone who receives the encoded value can decode it.
Text mode first converts the input to UTF-8 bytes. Decode to text performs the reverse operation and reports an error when the decoded bytes are not valid UTF-8. File mode treats the file as raw bytes and uses a dedicated browser worker for encoding or decoding.
Worked example
See UTF-8 and padding in one example
- Start with
- Enter café in text mode.
- Choose
- Select Encode text, then decode the result Y2Fmw6k= back to text.
- You get
- The accented letter is represented by its UTF-8 bytes before Base64 encoding, and the trailing equals sign pads the final four-character block. Decoding returns café.
Tips for a useful result
- Binary files and decoded results are limited to 10 MB for mobile reliability.
- Use Decode to file for arbitrary binary data. Decode to text is appropriate only when the original bytes represent UTF-8 text.
- Text, file bytes and results remain on the device and are not sent to UtilSprout, analytics or an external conversion API.
Standard Base64, padding and Base64URL
RFC 4648 Base64 processes bytes in 24-bit groups and writes four encoded characters per group. If the final group contains only one or two bytes, equals signs pad the output to a multiple of four characters. This encoder writes standard padded Base64; the decoder ignores whitespace but requires a valid four-character grouping and valid padding.
Base64URL is a related alphabet intended for URL and filename contexts. It uses - and _ instead of + and /, and some protocols omit equals padding when the byte length is known. This tool's Base64 decoder does not silently treat Base64URL as standard Base64. JWT segments, for example, use Base64URL and belong in the JWT Decoder.
Common uses and mistakes
Useful cases include embedding small binary values in JSON, inspecting an encoded text field, or reconstructing a downloaded byte sequence. Base64 normally increases size because four text characters represent each three-byte group. It is not a password hash, cipher, signature or permission check, and encoding a secret does not make that secret safe to publish.
Authoritative external sources
- RFC 4648: Base-N Encodings (external)
The IETF specification for Base64, padding and the separate URL-safe Base64 alphabet.
Understand the details
Related reference guide
Keep going