πŸ”₯ FireTools

How to Encode and Decode Base64: A Complete Guide

By FireTools Team Β· Updated 2026-08-27

Quick Answer

Base64 encoding converts binary data into text using 64 printable characters (A-Z, a-z, 0-9, +, /). Use our free Base64 Encoder to encode text, and the Base64 Decoder to decode it back. All processing happens in your browser β€” no data is uploaded.

Introduction

Base64 is a binary-to-text encoding scheme that converts binary data into an ASCII string representation. It is commonly used to encode data that needs to be transmitted over media designed to handle text, such as email or JSON. Base64 is not encryption β€” it is a reversible encoding that anyone can decode.

Step by Step

  1. Choose your input

    Enter the text or data you want to encode into the input field of the Base64 Encoder tool. Any text content works β€” strings, JSON, URLs, etc.

  2. Encode to Base64

    The tool automatically encodes your input using the browser's built-in btoa() function. The result appears in the output field instantly.

  3. Copy or use the result

    Click the Copy button to copy the Base64-encoded string to your clipboard. You can now use it in your application, API call, or data transfer.

  4. Decode back to original

    To decode, paste the Base64 string into the Base64 Decoder tool. The original text appears instantly. Use the Copy button to copy the decoded result.

Examples

Encode plain text

Input: Hello, World!

Output: SGVsbG8sIFdvcmxkIQ==

Encode JSON data

Input: {"name":"FireTools","free":true}

Output: eyJuYW1lIjoiRmlyZVRvb2xzIiwiZnJlZSI6dHJ1ZX0=

Decode Base64

Input: SGVsbG8gV29ybGQ=

Output: Hello World

Common Problems

  • Non-ASCII characters may produce unexpected results β€” use encodeURIComponent() before encoding if your text contains Unicode characters.
  • Base64 encoding increases data size by approximately 33% β€” a 3-byte input becomes 4 Base64 characters.
  • Padding (= or ==) at the end is part of the encoding and should not be removed.
  • Base64 is not encryption β€” anyone can decode it. Never use it to store sensitive data like passwords.

Tips

  • Use Base64 for data URLs, email attachments, and embedding images in HTML/CSS.
  • For Unicode text, use TextEncoder + btoa(unescape(encodeURIComponent(text))) in JavaScript.
  • Always validate decoded output before using it in your application.
  • Use our Base64 Encoder and Decoder tools for instant, private encoding/decoding in your browser.

Related Tools

Related Guides

References