Skip to content
iyziTool

URL Parser

Paste a URL to see each component and a table of decoded query parameters, plus a JSON representation you can copy.

protocol
https:
username
user
password
pass
hostname
www.example.com
port
8443
pathname
/path/to/page.html
search
?q=search+term&page=2&tags=a&tags=b
hash
#section-1
origin
https://www.example.com:8443
Query parameters
qsearch term
page2
tagsa
tagsb
JSON
{ "href": "https://user:[email protected]:8443/path/to/page.html?q=search+term&page=2&tags=a&tags=b#section-1", "protocol": "https:", "username": "user", "password": "pass", "hostname": "www.example.com", "port": "8443", "pathname": "/path/to/page.html", "search": "?q=search+term&page=2&tags=a&tags=b", "hash": "#section-1", "origin": "https://www.example.com:8443", "query": { "q": "search term", "page": "2", "tags": "b" } }

About this tool

Long tracking links, OAuth redirects and API calls pack a lot into one line. A parser shows what is really there: which host answers, whether a port or credentials are embedded, what the path is, and each query parameter decoded from its percent-encoding — including repeated keys and plus signs standing for spaces.

Parsing uses the browser's WHATWG URL implementation, the same one that decides where a link actually goes, so edge cases like missing schemes, IPv6 hosts and internationalised domain names behave exactly as in a real navigation. Nothing is sent to a server.

Frequently asked questions

Why does it add https:// to my input?
A URL needs a scheme to be parsed. If none is present, https:// is assumed so that bare domains still work.
Are query values decoded?
Yes. %20 and + become spaces and other escapes are decoded in the parameter table.
What is the origin?
Scheme plus host plus port — the boundary browsers use for the same-origin policy.

Related tools