Base64 Encoder / Decoder
Encodes and decodes Base64 for text and files.
Percent-encode text so it is safe to put in a URL, or decode an encoded URL back to readable text. This URL encoder and decoder supports full UTF-8.
Text is converted to UTF-8 bytes. Each byte that isn't allowed is written as % followed by two hex digits.
A-Z a-z 0-9 - _ . ~. It works like encodeURIComponent and is the right choice for a single query value.: / ? # [ ] @ ! $ & ' ( ) * + , ; =, so the structure of the address survives. It works like encodeURI.+. When decoding, + is turned into a space before the rest is decoded.hello world & more = hello%20world%20%26%20more.caf%C3%A9 = café.https://example.com/search?q=café & tea = https://example.com/search?q=caf%C3%A9%20&%20tea. The & is kept, which is why query values should be encoded in Component mode.| Character | Encoded | Why |
|---|---|---|
| Space | %20 | Not allowed in URLs |
& | %26 | Separates query parameters |
= | %3D | Separates a name from its value |
? | %3F | Starts the query string |
# | %23 | Starts the fragment |
/ | %2F | Separates path segments |
+ | %2B | Means a space in form data |
% | %25 | Starts an encoded character |
Letters, digits, and - _ . ~ never need encoding.
% sequence, such as %E0%A4%A, gives an error that points to its position.% in it returns the text unchanged, with a note.& or = belong to a value. Encode each value in Component mode before building the URL.It replaces characters that aren't allowed in URLs with % followed by two hex digits. For example, a space becomes %20.
Use Component for a single value, such as a search term in a query string. Use Full URL when you have a complete address and want to keep its structure.
HTML forms encode spaces as + in query strings. Both mean a space in that context.
Yes. Text is encoded as UTF-8, so any language and emoji work.
Often used together with the URL Encoder / Decoder.
Encodes and decodes Base64 for text and files.
Beautifies or minifies JSON.
Code points or text to UTF-8 bytes, and back.