Skip to content
Kordu Tools
Developer Tools Runs in browser Updated 30 Mar 2026

Base64 Encoder/Decoder

Encode text or files to Base64 or decode Base64 strings back to plain text — real-time, fully in your browser.

Loading rating…

How to use Base64 Encoder/Decoder

  1. Choose your direction

    Select Encode to convert text or a file to Base64, or Decode to convert a Base64 string back to plain text.

  2. Enter or paste your input

    Type or paste your text into the input panel. The output updates in real time as you type — no button click needed.

  3. Switch encoding mode if needed

    Toggle URL-safe Base64 to replace + with - and / with _ — required for Base64 used in URLs, JWT tokens, or query strings.

  4. Upload a file for Base64 output

    Drop any file onto the input area to encode it as Base64. Useful for embedding images in CSS or HTML data URIs.

  5. Copy the result

    Click Copy to copy the encoded or decoded output to your clipboard with one click.

Base64 Encoder/Decoder FAQ

What is Base64 encoding used for?

Base64 encodes binary data as ASCII text so it can be safely transmitted over text-based channels such as email (MIME), JSON API payloads, HTML data URIs, and HTTP headers. It is not encryption — it is purely a text-safe encoding.

Does this support Unicode and emoji?

Yes. The tool uses TextEncoder and TextDecoder to handle the full UTF-8 character set, including accented Latin characters, CJK text, Arabic, and emoji. Many simpler tools break on non-ASCII input.

What is URL-safe Base64?

URL-safe Base64 replaces + with - and / with _ so the encoded string can appear in URLs and file names without percent-encoding. It is used in JWT tokens, OAuth parameters, and URL-based APIs.

Is my data uploaded anywhere?

No. All encoding and decoding runs entirely in your browser using native JavaScript APIs. Nothing is sent to a server, and no data is stored or logged.

What happens if I paste invalid Base64?

The tool displays a clear error message. Invalid characters or incorrect padding are flagged immediately so you can locate and fix the problem.

Can I encode a file to Base64?

Yes. Drop any file onto the upload area and the tool will read it using the File API and output its Base64 representation. Useful for embedding fonts, images, or binary assets in code.

Can I use this to decode JWT tokens?

You can decode individual parts of a JWT (header and payload are Base64url encoded) but for a complete JWT inspection — with claims, expiry status, and formatted output — use the JWT Decoder tool instead.

What is the difference between Base64 and Base64url?

Standard Base64 uses + and / as the 62nd and 63rd characters. Base64url replaces these with - and _ to make the output safe for use in URLs and filenames. Both can be decoded back to the same bytes.

Is there a size limit for encoding?

There is no enforced limit. Very large inputs (multi-megabyte files) are processed in your browser's memory, so performance depends on your device. For most use cases, encoding is instant.

Background

Base64 Encoder & Decoder handles both directions instantly. Encode any plain text, Unicode string, or binary file to standard or URL-safe Base64, or decode a Base64 string back to its original form. Full UTF-8 support via TextEncoder and TextDecoder means emoji, accented characters, CJK scripts, and other non-ASCII text are handled correctly — no mojibake, no surprises.

Switch between standard Base64 (RFC 4648) and URL-safe Base64 (replaces + with - and / with _) with a single toggle. Paste text directly or drop a file to get its Base64 representation for embedding in HTML, CSS, JSON payloads, or data URIs. The output updates in real time as you type — no button clicks required.

All encoding and decoding runs client-side using native browser APIs. Nothing is uploaded, logged, or transmitted. Ideal for inspecting JWTs, building data URIs, encoding email attachments, or debugging API payloads that use Base64 encoding.

Learn more