About base64.dev
base64.dev is a fast, no-nonsense Base64 encoder and decoder built for developers who need a tool that just works — no ads, no tracking, no pop-ups, no sign-up.
Why base64.dev?
Every time I needed to encode or decode a Base64 string, the same few sites came up — bloated with ads, full of dark patterns, and slow to load. I wanted something minimal, instant, and private. So I built it.
The entire tool is a single HTML file with zero external dependencies (except the fonts). There is no backend, no database, no analytics that follow you around. All encoding and decoding happens locally in your browser.
Features
Paste anything — the tool detects whether it's plain text or Base64 and converts it automatically.
Drag and drop images or any file to get a Base64 data URI or raw Base64 string instantly.
RFC 4648 compliant URL-safe encoding — replaces +// with -/_ for use in JWTs and URLs.
Full keyboard support — encode, decode, swap, copy, clear, all without touching the mouse.
Follows your preference and remembers it. No flash of wrong theme on load.
Everything runs in your browser. Your data never leaves your machine.
Tech stack
The tool is intentionally minimal: a single HTML file with vanilla JavaScript, no frameworks, no build step, no npm. It's deployed as a static site on Vercel and served globally via CDN.
HTML5 + CSS3 + Vanilla JavaScript Google Fonts (JetBrains Mono, Outfit) Vercel (static hosting + CDN) Vercel Web Analytics
All encoding logic uses the browser's native TextEncoder, TextDecoder, btoa(), atob(), and FileReader APIs. No third-party encoding libraries.
Articles & guides
Beyond the tool itself, base64.dev also hosts practical guides on Base64 for developers — covering every major programming language and common use cases like JWTs, data URIs, and URL-safe encoding. Browse them at base64.dev/articles.
Feedback & issues
Found a bug, have a feature request, or want to say hi? Open an issue on GitHub.