redzilla
All tools
Security

Base64 / Hex / URL Encoder

Paste text or an encoded value and I convert instantly between Base64, Base64URL, Base32, hexadecimal, URL and HTML (encode and decode), with proper UTF-8 handling. Nothing is sent to any server.

Mode

Text is treated as UTF-8: accents and emoji travel intact.

redzilla.cl — encode
 
Base64
Base64URL
Base32
Hexadecimal
URL
HTML

All formats

FormatResult

Encoding the input text to each format.

How it works · Base64, Base32, hex, URL and HTML

1. Text is first encoded to bytes as UTF-8. That way accents and emoji are preserved regardless of the output format.

2. Base64 groups bytes three at a time (24 bits → 4 symbols). Base64URL uses - and _ instead of + and / and drops the = padding, so it fits in a URL or a JWT.

3. Base32 (RFC 4648, alphabet A–Z 2–7) packs 5 bits per symbol. Hex writes each byte as 2 digits.

4. URL uses encodeURIComponent (escapes spaces, &, ?…). HTML turns & < > " ' into their entities so you can insert text safely into a page.

5. Everything happens in your browser: nothing is uploaded to any server.

Runs locally in your browser · no sign-up · nothing leaves your browser

How it works

The tool encodes and decodes text across six everyday formats: Base64, Base64URL, Base32 (RFC 4648, A–Z 2–7 alphabet), hexadecimal, URL (percent-encoding) and HTML entities. In encode mode it shows the text converted to all six formats at once; in decode mode it interprets the pasted value, recovers the original text and re-exposes it in every format, which lets you convert between encodings in a single step.

Before encoding, the text is converted to bytes as UTF-8 using TextEncoder, so accents and emoji survive the round trip. Base64 packs bytes in groups of 3 (24 bits into 4 symbols), Base64URL replaces + and / with - and _ and drops the = padding, Base32 uses 5 bits per symbol, hex writes each byte as two digits, URL applies encodeURIComponent and HTML turns & < > and quotes into their entities.

Example: encoding the word Hello

  1. In UTF-8, Hello takes 5 bytes: 48 65 6c 6c 6f (that is directly its hexadecimal form).
  2. Base64 groups those 5 bytes in blocks of 3 and produces SGVsbG8=; the trailing = is padding because 5 is not a multiple of 3.
  3. Base32 packs 5 bits per symbol and yields JBSWY3DP. Any of the three values, pasted in decode mode, returns exactly Hello.

Frequently asked questions

What is the difference between Base64 and Base64URL?
The alphabet. Standard Base64 uses + and /, which clash with URLs and file names; Base64URL replaces them with - and _ and usually omits the = padding. It is the format used by JWTs and many API tokens. The tool accepts both and restores the padding automatically when decoding.
Can Base64 encrypt or protect a password?
No. Base64 is an encoding, not encryption: anyone can reverse it instantly, with no key. It exists to carry bytes over text channels (email, JSON, URLs), not to hide information. To protect secrets you need real encryption (AES, TLS) or salted hashing for passwords.
What happens to accents and emoji when encoding?
They are preserved intact, because the text is first converted to UTF-8 bytes. For example héllo takes 6 bytes (the é uses 2) and encodes in Base64 as aMOpbGxv; decoding returns exactly the same text. Tools that call btoa directly on the string tend to break here.
Is it safe to paste tokens or sensitive data into the tool?
The conversion happens entirely in your browser: nothing is sent to any server or stored. Even so, apply the usual judgement with production secrets: best practice is to rotate any token that has passed through third-party tools you do not control.
Was this tool useful?
Disclaimer We take great care to keep every tool accurate and review it thoroughly; even so, we can't guarantee it is free of errors or take responsibility for how the results are used. We recommend double-checking anything critical.
Found an error? Let us know →