Base64 Encoder & Decoder - Text & File (URL-Safe Supported)

Encode any text or file to Base64 (or a data URL), or decode Base64 back to text — or download it as the original binary file. URL-safe variant supported. Full UTF-8, runs entirely in your browser.

Paste text or Base64 here…

or drop any file

Files are auto-deleted after processingProcessed securely over HTTPS

Frequently Asked Questions

Paste your text or drop any file into the input box, keep the mode on Encode and the Base64 representation appears in the output. For files you get a data URL that can be embedded directly in HTML, CSS or JSON — no upload server in between.

usage

URL-safe Base64 swaps "+" for "-" and "/" for "_" and strips the trailing "=" padding so the encoded value can travel inside URLs, filenames and JWT segments without further escaping. Toggle URL-safe whenever the output ends up in a query string, path segment or HTTP header.

technical

No. Base64 is an encoding, not encryption. Anyone can decode the string in one click, so never use it as a secrecy mechanism. Reach for AES, RSA or libsodium when you need real confidentiality, and use Base64 only to make binary data text-safe.

privacy

Base64 packs three bytes into four characters. When the input length is not a multiple of three, the encoder pads the final block with "=" so the output stays a multiple of four. Standard Base64 keeps the padding; URL-safe Base64 drops it because the length is implicit.

technical

Yes. The encoder reads the input as UTF-8 before encoding, so Arabic, Chinese, Cyrillic and emoji characters round-trip cleanly. The decoded result is rendered back as UTF-8 text, which is what every modern browser, terminal and API expects.

compatibility

Base64 inflates payloads by roughly 33% — three bytes of input become four bytes of output. That is fine for short tokens, small icons and JSON-embedded thumbnails, but for large assets prefer a direct binary upload or a CDN link to keep transfers fast.

technical

No. The encoder runs entirely inside your browser using the standard atob / btoa APIs plus a UTF-8 wrapper, so your text or file never reaches a server. That makes the tool safe for tokens, credentials and proprietary binaries you do not want to expose.

privacy

Switch the mode to Decode, paste your Base64 string, and the original text appears instantly in the output, ready to copy or download as .txt. If the string uses '-' and '_' instead of '+' and '/', turn on URL-safe so it decodes correctly.

usage

Yes. Switch to Decode mode and paste the Base64 or data URL text — if it decodes successfully, a "Download as file" button appears next to the plain Download option. Clicking it writes out the exact original bytes with the extension detected from the embedded MIME type, so a base64-encoded photo or PDF comes back as a real, openable file instead of garbled text.

features

Download always saves the decoded output as a plain .txt file, which is right when the Base64 represents text. Download as file only appears when the decoded bytes are recognized as binary data — like an image or PDF — and it reconstructs the original file with its proper extension instead of dumping raw bytes into a text file that won't open correctly.

usage

How Base64 Encoder/Decoder helps you get it done

Real problems it solves every day — for businesses, creators, and everyday tasks. Find the use case that fits you and start in seconds.

Web & SEO

Embed Images in HTML & CSS as Data URLs

Inline small icons, logos and SVG sprites as Base64 data URLs to save HTTP requests, ship single-file HTML emails and keep prototypes self-contained without external asset hosting

For Developers

API Authentication & Bearer Tokens

Build HTTP Basic auth headers, decode bearer tokens during API debugging and inspect base64-wrapped credentials shared in Postman, curl examples and OpenAPI docs

For Developers

Encoding Files for JSON & GraphQL Payloads

Wrap binary uploads (PDFs, images, audio clips) as Base64 strings so they ride safely inside JSON, GraphQL mutations and webhook bodies that only carry text

Everyday Use

Decoding Email MIME Attachments

Pull base64-encoded attachments out of raw .eml files, SMTP logs or IMAP responses to recover lost invoices, screenshots and documents from email exports

Web & SEO

URL-Safe Tokens for Web Apps

Generate URL-safe base64 strings for password-reset links, email-verification codes, share IDs and short URLs without breaking on "+" or "/" characters in browsers

For Developers

Inspecting JWT Segments by Hand

Decode the header and payload segments of a JSON Web Token during local debugging when you do not have a full JWT decoder installed in your terminal or editor

For Developers

Store Certificates & Keystores in CI/CD Secrets

Encode SSL certificates, Android signing keystores or a GCP service-account JSON file to Base64 so they can be pasted into GitHub Actions, GitLab CI or Vercel environment variables that only accept plain text.

Everyday Use

Rescue Files Shared as Raw Base64 Text

Paste a base64 blob copied from a Slack message, bug report or email into Decode mode and use Download as file to recover the original image or PDF someone sent you as text instead of an attachment.

For Developers

Mock API Responses Without a Backend

Generate base64 placeholder images or binary payloads to drop straight into Postman collections, MSW handlers or Swagger examples while the real backend endpoint is still being built.

For Developers

Debug Webhook Signature Payloads

Inspect the base64-encoded body Stripe, Twilio or another provider sends with a webhook so you can manually verify a signature or replay a payload while building an integration locally.