URL encode and decode
Percent-encode text for links, and turn encoded URLs back into readable text.
Report a problem with this tool
How to use URL encode / decode
Choose Encode or Decode
Encode makes text safe to put in a URL. Decode turns %20 and other codes back into text.
Paste your text or link
The result updates as you type. Pick whether you’re encoding one part of a URL or a whole one.
Copy the result
Copy or download it. For a link with a query string, each parameter is listed below, decoded.
Why use Utils365
Every language and emoji
Text is encoded as UTF-8, so accents, Chinese and emoji survive the round trip exactly.
Read tracking links
Paste a long link and see each query parameter, such as utm_source, on its own line with its value decoded.
Clear errors
A broken % code is named with its position, so you can find it in a long URL.
Private by design
Encoding and decoding happen in your browser, so links with tokens or personal details are never uploaded.
Frequently asked questions
What is URL encoding?
Also called percent-encoding, it writes characters that aren’t allowed in a URL as % followed by two hex digits. A space becomes %20 and € becomes %E2%82%AC.
Should I encode a URL part or a whole URL?
Encode a part, such as a search term or a value in a query string, so characters like & and = don’t break the link. Encode a whole URL only to fix spaces and accents while keeping : / ? & = # working.
Is a space %20 or +?
Both are used. %20 works everywhere in a URL. + means a space only in query strings and form data. Tick Spaces as + to encode the way HTML forms do.
Why does decoding say a % code is invalid?
A % must be followed by two hex digits, and the codes together must make valid UTF-8. A lone % or a cut-off code like %E2%82 can’t be decoded. A real percent sign is written %25.
Is this the same as encodeURIComponent?
Yes. Text for a URL part uses encodeURIComponent and A whole URL uses encodeURI, so the results match JavaScript exactly.