URL Parser

Split a URL into its parts: scheme, host, port, path, query parameters, and fragment. Edit the parameters in a table and get the rebuilt URL straight away.

Updated
Runs in your browser. Your data is not uploaded.
URL parts
PartValue
Query parameters
Rebuilt URL
–
Parsed with your browser's WHATWG URL parser.

How to use the URL Parser

  1. Paste the address into URL. For a relative link such as ../img/logo.png, also fill in Base URL.
  2. Read the parts table. Percent-encoded values are shown decoded.
  3. Change, add, remove, or reorder Query parameters, then copy the Rebuilt URL.

How it works

The URL is parsed with your browser's WHATWG URL parser, the same rules browsers use to follow links:

scheme://user:password@host:port/path?query#fragment
  • International host names are shown in Unicode, with the ASCII Punycode form (xn--...) that DNS uses next to them.
  • When the port is left out, the scheme's default is shown: 80 for http, 443 for https.
  • Query parameters are read with URLSearchParams, so + means a space and repeated names such as tags=a&tags=b are kept as separate rows.
  • The rebuilt URL encodes the parameters again the standard way.

Examples

https://user:pass@münchen.example.de:8443/shop/items/42?sort=price&tags=a&tags=b#reviews:

  • Scheme https, host münchen.example.de (Punycode xn--mnchen-3ya.example.de), port 8443.
  • Path /shop/items/42, 3 segments.
  • Parameters: sort=price, tags=a, tags=b. Fragment reviews.

../img/logo.png with base https://example.com/docs/guide/ resolves to https://example.com/docs/img/logo.png.

Limitations

  • The fragment (after #) is never sent to the server; it only matters in the browser.
  • Credentials in URLs are deprecated and often blocked by browsers. They are shown so you can find and remove them.
  • Rebuilding re-encodes the query, so a hand-made query with unusual encoding may come back written differently but with the same meaning.

Frequently asked questions

What are the parts of a URL?

Scheme (https), host (example.com), optional port, path (/page), query string (?a=1), and fragment (#section). Some URLs also have a username and password before the host.

What is Punycode?

The ASCII form of an international domain name, starting with xn--. DNS only handles ASCII, so münchen.de is looked up as xn--mnchen-3ya.de.

Why is my URL invalid?

Usually the scheme is missing (add https://), the port isn't a number from 0 to 65535, or the host contains a space or another character hosts can't have.

Is the URL sent to your server?

No. It is parsed in your browser, and the address is never requested.

Often used together with the URL Parser.