URL Tools

Inspect URLs, edit query parameters and encode or decode components.

On your device. Your input is not uploaded or saved.

Inspect detects URLs and query strings automatically. Encode / Decode converts the entire input as a single URL component, including any URL separators. Nothing is opened or fetched.

Advanced options

Applies to Encode / Decode only. By default, spaces encode as %20 and decoding keeps + literal. When enabled, spaces encode as + and + decodes to a space. Query editing always uses form encoding.

To inspect a query with a bare key, prefix it with ? (for example, ?flag). To inspect an ambiguous relative path, prefix it with ./ (for example, ./key=value). A leading ? is always treated as a query string.

Up to 100,000 characters per input or output and 200 query parameters. Editing the input clears the result; inspect or convert again to update it.

How to encode or decode a URL

  1. Paste a URL, a query string or any text into Input.
  2. Press Encode to percent-encode the whole input as one URL component, or Decode to turn %20 and other escapes back into text.
  3. Press Inspect to split a URL into its components and list its query parameters in an editable table.
  4. Edit, add or remove parameters, then copy the rebuilt URL from the result.
  5. For a relative path such as /search?q=1, enter a base URL when the tool asks for one.

encodeURIComponent vs encodeURI

JavaScript has two encoding functions. encodeURI is meant for a complete URL and leaves characters such as : / ? # & = untouched. encodeURIComponent is meant for a single piece, such as a query value or a path segment, and escapes those characters too, so a value containing & or = cannot break the URL around it.

Encode in this tool works like encodeURIComponent on the entire input. That is what you need for a value you are about to insert into a URL, such as a redirect address passed as ?next=. If you encode a full URL, its slashes and question mark are encoded too; to work with a full URL, use Inspect instead.

Spaces: %20 or +?

By default, Encode turns a space into %20, and Decode leaves + unchanged. HTML forms and the application/x-www-form-urlencoded format use + for spaces instead. Turn on Use form / query-value encoding under Advanced options to encode spaces as + and decode + as a space. Query editing after Inspect always uses form encoding.

Inspect and edit query parameters

Inspect shows the scheme, origin, hostname, port, username, password, path and fragment, and decodes each query parameter into a key and a value. Duplicate keys, empty values and parameter order are kept, so you can remove tracking parameters or change one value without disturbing the rest. Up to 200 parameters and 100,000 characters are supported.

The rebuilt URL follows the browser's normalization, so it is not always identical to the original: default ports may be dropped and a literal + becomes %2B. Signed URLs, such as pre-signed storage links, may stop working after any change.

Where does my data go?

Parsing and encoding use the browser's built-in URL functions. The tool never opens or fetches the URL, and it does not upload or save anything you enter.

Like the rest of the site, this page uses Google Analytics and Yandex Metrica, including Metrica session replay. Tool events report only that the tool was opened or used.

The tool area is marked so that Metrica masks what you type and the results in its session recordings.

Also useful

No third-party trackers on JZR Tools. We count anonymous visits with country, referring site and device type only.