URL Parser & Query String Analyzer
About URL Parser
The URL parser breaks an absolute web address into the components defined by the browser URL standard: scheme, credentials, host, hostname, port, pathname, query string, and fragment. It is a quick way to understand a long callback URL, debug an API request, or inspect an unfamiliar link without manually separating ampersands and percent-encoded text.
Query parameters are decoded and shown both as ordered entries and as a grouped object. Keeping the ordered list makes duplicate parameters visible—a detail that is easy to lose when a query string is converted directly to a plain object. You can sort keys for comparison or hide parameters whose values are empty.
Parsing runs entirely in your browser with the platform's native URL implementation. Nothing is fetched from the address and no input is uploaded, so analyzing a private development hostname, signed callback, or URL containing sensitive values does not contact the destination. You should still remove secrets before sharing the generated output with someone else.
How it works
Start with an absolute URL
Enter the full address including a scheme such as https://, http://, ftp://, or another valid protocol. Requiring an absolute URL prevents a relative path from being silently resolved against an invented base domain and makes the reported origin unambiguous.
Separate host, hostname, and port
Host includes the hostname and explicit port, while hostname contains only the domain name or IP literal. The origin combines scheme, host, and port. Default HTTP and HTTPS ports may be normalized by the browser, which is why the analyzer also reports whether the effective connection uses a default port.
Inspect decoded and repeated query values
URLSearchParams applies standard percent decoding and converts plus signs in the query to spaces. Repeated keys remain separate in queryEntries and become arrays in the grouped query object, preserving URLs such as ?tag=json&tag=tools without discarding either value.
Review the path and fragment
The pathname remains available in its canonical URL form and is also split into decoded path segments for quick inspection. The hash is reported without the leading #. A fragment is handled by the browser after navigation and is normally not included in an HTTP request to the server.
Frequently asked questions
Does parsing a URL open it or send a request?
No. The tool only passes the text to the browser's URL parser. It does not navigate to the address, resolve its hostname, download its content, or send the URL to JsonKit servers.
Why must I include https:// or another scheme?
Without a scheme, text such as example.com/path could be interpreted as a relative path. Requiring an absolute address avoids inventing a base URL and ensures the scheme, origin, host, and port are accurate.
How are duplicate query parameters handled?
Every occurrence is retained in queryEntries in source order. In the grouped query object, a key becomes an array when it appears more than once, so no repeated value is overwritten.
Are percent-encoded values decoded?
Yes. Query keys, query values, and the path-segment view are decoded with browser-standard rules. The canonical href and pathname remain available so you can compare the encoded representation with decoded values.
Is it safe to paste a signed or private URL?
Parsing is local and does not contact the URL. However, signed URLs often contain credentials in their query strings, so treat the displayed output as sensitive and avoid copying it into public messages or issue trackers.