Skip to main content

Base64 Encode / Decode

Encode text or files to Base64 — and decode back — UTF-8 safe, with a URL-safe option.

100% freeRuns in your browserNo signup, no watermark

Base64 turns binary data into plain ASCII text, which is why it shows up everywhere in development: data URIs for inline images, Basic Auth headers, email attachments, webhook payloads, and config secrets. Paste text to encode or decode it live as you type, or drop a file to get its Base64 representation ready for embedding.

The encoder is UTF-8 safe, so emoji and accented characters survive the round trip — a classic failure in naive btoa-based tools. A URL-safe toggle swaps + and / for - and _ and strips padding, matching the alphabet JWTs and many APIs use. Everything runs locally in your browser, so tokens, credentials, and files are never transmitted to a server.

How to encode or decode Base64

  1. 1

    Choose Encode or Decode, then paste your text (or drop a file to encode).

  2. 2

    Toggle URL-safe output if you need the -_ alphabet without padding.

  3. 3

    Copy the result or download it as a file.

Why use Nofolo’s base64 encode / decode?

UTF-8 safe

Emoji, accents, and any Unicode text encode and decode correctly — not just ASCII.

URL-safe variant

One toggle outputs - and _ instead of + and / and strips = padding, ready for URLs and tokens.

File to Base64

Drop any file to encode it — handy for data URIs, test fixtures, and email attachments.

Live conversion

Output updates as you type in either direction — no button pressing.

Clear decode errors

Invalid input tells you exactly what is wrong — stray characters or impossible length — instead of emitting garbage.

Private by design

Encoding and decoding happen in your browser. Secrets and files never leave your device.

Frequently asked questions

Is my data uploaded when I use this Base64 tool?

No. Encoding and decoding run entirely in your browser using native Web APIs. Text, tokens, and files are never sent to a server, so it is safe for credentials and internal payloads.

Why do emoji or accented characters break in some Base64 tools?

Plain btoa() only handles single-byte characters. This tool first encodes text as UTF-8 bytes and then Base64-encodes those bytes, so multi-byte characters like é, ₦, or emoji round-trip correctly.

What is URL-safe Base64?

Standard Base64 uses + and /, which have special meanings in URLs. The URL-safe variant (RFC 4648) replaces them with - and _ and usually drops the = padding. It is what JWTs and many APIs use — the decoder here accepts both alphabets automatically.

Is Base64 encryption?

No. Base64 is an encoding, not encryption — anyone can decode it instantly. Never use it to protect secrets; use it only to represent binary data as text.

Why is Base64 output about 33% larger than the input?

Base64 represents every 3 bytes of data with 4 ASCII characters, so output is roughly 4/3 the size of the input, plus up to two = padding characters.

Related tools