Free base64 encoder and decoder. Convert any text to base64 or decode base64 back to text, with full Unicode support — runs entirely in your browser.
A Unicode-safe base64 encoder/decoder that converts text to base64 (UTF-8 aware, so Hindi, emoji and ₹ work) and decodes base64 back to text — with the understanding that base64 is an encoding, not encryption.
Base64 turns any data into a string made only of letters, digits, + / and = — characters that survive every text-based system unchanged. That's why it shows up everywhere in technical work: HTTP Basic authentication headers, email attachments, data: URLs embedding images in CSS, API payloads carrying binary content, JWT tokens, configuration secrets in Kubernetes and .env files. Sooner or later you need to encode something into base64 or peek inside a base64 blob, and this tool does both instantly.
This implementation is Unicode-safe, which cheap converters aren't. The naive JavaScript btoa() call fails on anything outside Latin-1 — Hindi, Tamil, emoji, the ₹ symbol — with a cryptic character-out-of-range error. Here the text is first encoded as UTF-8 bytes and then base64'd, the standard used by virtually all real systems, so "नमस्ते" and "₹500" round-trip perfectly. Decoding tolerates surrounding whitespace and reports clearly when the input isn't valid base64 (usually missing = padding or a stray character from a partial copy-paste).
One thing base64 is not: encryption. It's a reversible transport encoding — anyone can decode it, as you're about to prove with this tool. Never treat base64'd credentials as secured; if you can decode it here, so can anyone else. Everything runs locally in your browser, making it safe to decode tokens and secrets without them touching a server.
Free while in beta. No card, no sales call, no onboarding call you didn't ask for.
Base64 = 6-bit chunks of the input's UTF-8 bytes mapped to A–Z a–z 0–9 + /, padded to groups of 3 bytes with one or two = characters.No — it's an encoding, fully reversible by anyone. It protects data from being mangled in transit, not from being read. Use real encryption for secrets.
Plain btoa() only handles Latin-1 characters. This tool encodes text as UTF-8 bytes first — the standard approach — so Unicode text like Hindi, emoji or ₹ works correctly.
Padding. Base64 works in 3-byte groups; when the input isn't a multiple of 3 bytes, one or two = characters pad the final group. Decoders need them (this one restores missing padding automatically).
The tool runs entirely in your browser, so it can handle large strings easily. However, massive files might cause the browser to slow down.
Standard base64 includes '+' and '/' characters, which have special meaning in URLs. For URLs, you should use a 'base64url' variant, which replaces them with '-' and '_'.
Business software from the team behind these free tools.
A CRM and project workspace for growing businesses.
Visit Avexora AI CRMWhatsApp Business API platform for broadcasts, chatbots and automation.
Visit AvexWAFrom a blank page to a live funnel in minutes.
Visit Avexora AI EBOSEnterprise-grade AI systems for operations and growth.
Visit Avexora AIYour business phone, answered by AI in every language, every hour.
Visit Avexora AI Voice AgentsAI-powered OMR scanning and exam management for schools.
Visit Avexora ExamOSFree URL encoder and decoder. Percent-encode text for query strings or decode %20-style URLs back to readable text — with component and full-URI modes.
JWT Decoder→Free JWT decoder. Paste a JSON Web Token to see its header and payload as formatted JSON, with issued-at and expiry timestamps translated to readable dates.
Hash Generator→Free SHA hash generator. Compute SHA-1, SHA-256 and SHA-512 hex digests of any text instantly in your browser — nothing is ever uploaded.
HTML Entity Encoder / Decoder→Free HTML entity encoder and decoder. Escape <, >, & and quotes for safe HTML display, or decode named and numeric entities back into readable text.