Encoding Tools
Base64, Base32, hex, URL encoding, HTML entities, data URIs — convert between every common encoding scheme the web uses.
6 tools in this category
Base32 Encode / Decode
Encode and decode Base32 strings in your browser — RFC 4648, RFC 4648-hex, and Crockford alphabets.
Base64 Encode / Decode
Encode and decode Base64 strings in your browser — UTF-8 safe, privately.
Data URL Parser & Builder
Parse, build, and inspect RFC 2397 data URLs — inline images, fonts, and text in your browser.
Hex Encoder / Decoder
Convert between text and hexadecimal in your browser — UTF-8 safe, privately.
HTML Entities Encode / Decode
Encode and decode HTML entities in your browser — privately.
URL Encode / Decode
Percent-encode and decode URLs, query params, and form values — in your browser.
Encoding tools translate between different byte-level representations of text. When an API returns Base64 or a shell command wants percent-encoded URLs, you need a fast way to flip between representations. These utilities handle the standard algorithms plus common variants (URL-safe Base64, Crockford Base32, RFC 2397 data URIs) without touching the network.
Which encoding is right for what?
Base64 is the universal choice for binary-in-text: email attachments, JWT payloads, inline images in CSS. Base32 trades density (8 chars per 5 bytes vs Base64's 4 per 3) for case-insensitivity and a smaller alphabet — ideal for voice-friendly IDs and TOTP secrets. Hex is the humane format for hashes, memory dumps, and cryptographic keys. URL encoding (aka percent-encoding) is for query strings and path segments. HTML entities escape characters that would otherwise be parsed as markup. Data URLs inline small assets into HTML and CSS so you save a round-trip.
Common pitfalls
URL encoding has two flavors: encodeURI (leaves ?&=# intact, for whole URLs) and encodeURIComponent (escapes everything, for parameter values). Using the wrong one is a frequent source of double-encoding bugs. Base64 has a standard alphabet and a URL-safe variant that swaps +/ for -_; do not mix them. HTML entities require you to decide whether to encode only the five XML-required chars or everything above ASCII — the former is usually correct.
UTF-8 handling
All encoding tools here treat input as UTF-8. Base64 of the string résumé will round-trip cleanly because we encode the UTF-8 byte sequence, not the raw code points. If you need a specific legacy encoding (Latin-1, Windows-1252) you will need a dedicated tool — this suite is deliberately modern-web-only.
Frequently asked questions
What's the difference between Base64 and Base64 URL-safe?
Standard Base64 uses `+` and `/` which are unsafe in URLs (the `/` becomes a path separator, `+` becomes a space in query strings). URL-safe Base64 swaps them for `-` and `_` and omits padding `=`. Both are RFC 4648-compliant.
Can I encode binary files?
Yes — the Data URL tool accepts file uploads and emits a Base64 data URI with auto-detected MIME type. Everything runs client-side; the file never leaves your browser.
Why does my Base64 end with `=` signs?
Base64 encodes 3 bytes at a time into 4 characters. When your input length isn't a multiple of 3, the encoder pads the output with `=` to keep it a multiple of 4 characters. One `=` means one byte of padding, two `=` means two bytes. It's cosmetic and usually strippable.
Is Crockford Base32 the same as RFC 4648 Base32?
No. Crockford excludes I, L, O, U (visually ambiguous) and folds I→1, L→1, O→0 on decode. It's designed for humans reading values aloud — think account IDs and license keys. RFC 4648 uses A–Z + 2–7 and is the standard for protocol-level encoding.