YamlBox

Web & encoding

URL Encoder & Decoder

Encode a value for a query string, decode a percent-encoded URL, or break a query string into readable key/value pairs. Both encodeURIComponent and encodeURI semantics available.

Options

Text, URL or query string

Examples: Query value · Encoded URL to decode · Query breakdown — ⌘/Ctrl + Enter converts · drop a file to load it · processed locally

Encoded / decoded output

Output is read-only. Use Copy, Download or Share to move it out.

How to use the url encoder / decoder tool

  1. Paste text, URL or query string

    The tool works in both directions — encoding plain text and decoding percent-escapes.

  2. Choose component or URI mode

    encodeURIComponent is right for query values (it escapes & = ? /). encodeURI preserves URL structure — use it for whole URLs.

  3. Or break down a query string

    Switch to query mode to parse a query string into a table of decoded key/value pairs.

What makes this one different

  • encodeURIComponent and encodeURI semantics, both directions
  • Query-string parsing into decoded key/value pairs, + treated as space
  • Correct UTF-8 percent-encoding (café → caf%C3%A9), not broken latin-1
  • Clear errors for malformed escape sequences
  • Offline and private, like every tool here

Privacy by architecture: this page contains no analytics that receive your input, and the conversion code runs in your tab. You can disconnect from the network after loading and keep working.

URL Encoder / Decoder — frequently asked questions

encodeURI vs encodeURIComponent — which do I need?

Use encodeURIComponent for a value you are placing inside a query parameter (?q=…): it escapes &, =, ?, / and # so the value cannot break the URL’s structure. Use encodeURI for a complete URL you want kept intact, which leaves :, / and ? alone.

Why does a space become %20 or +?

In a path or fragment, space must be %20. In application/x-www-form-urlencoded data — the body of a classic HTML form — space is +. The query parser here treats + as a space, which is the correct behaviour for form-encoded strings.

Why is my URL double-encoded?

Because it was encoded twice — often a framework encoding an already-encoded value. Decode once here; if the result still contains %-sequences, decode again, then fix the pipeline so it encodes exactly once.

Does it handle non-Latin characters?

Yes. Text is encoded as UTF-8 bytes and then percent-escaped, so Japanese, Arabic, Cyrillic and emoji all produce correct, interoperable URLs.

Searching for “url decode online”, “percent encoding tool”, “encode uri component”? You are in the right place — browse all 19 tools.

Deeper reading

Blog · 5 min read URL encoding: when to escape, and when you are breaking things URL encode and decode correctly — reserved characters, plus versus %20, encodeURI versus encodeURIComponent, and the double-encoding bugs behind broken links. Read the guide →