URL Encoder and Decoder
Encode a query value or a whole URL with percent-encoding, or decode %20 and %C5%BE back into readable text. Choose between component mode for single values and full-URL mode that keeps the address readable.
- Free
- No upload
- No sign-up
CSV to JSON and JSON to CSV
Quoted fields, line breaks inside cells, semicolon CSV from Excel and JSON Lines are handled.
Base64 encoder and decoder
UTF-8 safe for accents and emoji. Decoding ignores line breaks and missing padding.
Color converter: HEX, RGB and HSL
Type or paste a color in any field, or use the picker. All formats update together.
WCAG contrast
AA needs 4.5:1 for normal text and 3:1 for large text (24px, or 19px bold). AAA needs 7:1 and 4.5:1.
Number base converter
Binary, octal, decimal and hexadecimal. Very large and negative whole numbers are supported.
Spaces and underscores are ignored, and the prefixes 0b, 0o and 0x are accepted. Negative numbers keep a minus sign; for values that fit in 8 to 128 bits the two’s complement form is shown too.
Text case converter
Accented letters such as á, ž and ľ are kept, and ß becomes ẞ in capitals. Code cases are applied line by line.
URL encoder and decoder
Percent-encode text for links and query strings, or decode %20-style text back.
Component encodes every reserved character (/ ? & = #), for a single query value or path part. Full URL keeps the URL structure readable.
Unix timestamp converter
Seconds or milliseconds are detected automatically from the number of digits.
Current Unix time: —
Without Z or an offset such as +02:00, the date is read in your time zone (local).
- Unix time (seconds)
—- Unix time (milliseconds)
—- ISO 8601, UTC
—- ISO 8601, your time zone
—- Readable, your time zone
—- Relative
—
Runs entirely in your browser. Your data, files and text are never uploaded.
Component or full URL?
Component mode encodes every character with a special meaning in a URL, including / ? & = and #. Use it for one piece of a URL, such as a search term placed after ?q=, so that an & inside the value cannot split it into two parameters.
Full-URL mode leaves the structure of an address alone and only encodes what is not allowed, such as spaces and non-ASCII letters. "https://example.com/žltý kôň" becomes "https://example.com/%C5%BElt%C3%BD%20k%C3%B4%C5%88", which still works as a link.
Decoding reverses either mode. Form submissions and many query strings write spaces as +, so turn on "Treat + as a space" for them. Malformed sequences such as a lone % or an incomplete UTF-8 byte are pointed out instead of silently producing broken text.
How to use the URL Encoder and Decoder
- Choose Encode or Decode, and Component or Full URL.
- Type or paste the text or URL into the input; the result updates as you type.
- When decoding form data or query strings, switch on "Treat + as a space".
- Copy the result, or use it as the new input to encode or decode again.
Frequently asked questions
What is percent-encoding?
A way to write characters that are not allowed in URLs as % followed by two hexadecimal digits for each UTF-8 byte. A space becomes %20 and the letter ž becomes %C5%BE.
Should a space be %20 or +?
Both mean a space in query strings submitted by HTML forms. In paths and in most APIs only %20 is correct, so the encoder always writes %20; the decoder can read + as a space when you ask it to.
Why does decoding show an error?
The input contains a % that is not followed by two hex digits, or bytes that do not form valid UTF-8. The message tells you where the problem is.
Is this the same as encodeURIComponent?
Component mode gives the same result as JavaScript's encodeURIComponent, and Full URL matches encodeURI, so you can check what your code will produce.
More conversions
Code & data
Other categories
