URL parser
Paste a URL to see its protocol, credentials, host, port, path, query string and fragment, with the query parameters listed one per row. Change, add or remove a parameter and copy the rebuilt URL.
Runs in your browser: nothing you enter is sent anywhere.
How to use it
- Paste or type a URL. Without a scheme,
https:// is assumed.
- Read the parts in the table.
- In Query parameters, edit names and values, add a row or remove one. The Rebuilt URL below updates at once; copy it.
How it works
The tool uses the same URL parser as your browser, which follows the WHATWG URL Standard. That means the result matches what the browser would really request: the host is lower-cased, dot segments in the path like /a/../b are resolved, and special characters are percent-encoded.
Example
https://user:pass@example.com:8080/path/to/page?id=42&tag=a&tag=b#section gives protocol https:, username user, password pass, host example.com, port 8080, path /path/to/page, three parameters (id=42, tag=a, tag=b) and hash #section.
Tips
Editing the URL text starts the parameter table over from the new URL. Edit the table only after the address is final. Empty parameter names are skipped when the URL is rebuilt.
Frequently asked questions
What are the parts of a URL?
A URL can have a scheme (https:), credentials (user:pass@), a host (example.com), a port (:8080), a path (/a/b), a query string (?x=1&y=2) and a fragment (#top). Only the scheme and, for web addresses, the host are required.
Why is the port empty?
The port is empty when the URL does not name one, or names the default for its scheme, such as 443 for https or 80 for http. Browsers drop a default port when they normalise the address.
How are query parameters decoded and rebuilt?
Parameters are read with the standard URLSearchParams rules, so %20 and + both become a space and repeated names like tag=a&tag=b stay as separate rows. The rebuilt query writes a space as + and encodes reserved characters, so it can differ in spelling from the original while meaning the same.
What happens to a domain name with non-English letters?
The URL standard converts it to punycode, for example münchen.de becomes xn--mnchen-3ya.de. The table shows that ASCII form, which is what is sent over the network.
Is my URL uploaded anywhere?
No. The page uses the URL API built into your browser and nothing is sent to a server, so it is safe to paste links that contain tokens.