URL Parser
Paste any URL and see protocol, host, port, path, hash and every query parameter in a clean table. Relative URLs are resolved against a configurable base. Nothing is sent anywhere.
What is parsed?
Uses the standard URL API: scheme, auth (if present), hostname, port, path segments, query pairs (multi-value keys repeated in order), fragment/hash, and the origin. IPv6 hosts, percent-encoded paths and unicode query values are all handled. Invalid URLs get a precise reason (missing scheme or invalid characters, for example).
How to use URL Parser
Paste a full URL and every part lands in its own row: protocol, host, port, path, hash — and each query parameter separately parsed and decoded. The parser handles real-world messiness, IPv6 hosts in brackets included, and flags an implicit default port rather than pretending it is explicit.
It is the fastest way to sanity-check tracking URLs: every UTM parameter appears, decoded, with the values it actually carries. Also useful for inspecting redirect targets before clicking unfamiliar links, and for comparing two addresses that look identical but differ in encoding.
Frequently asked questions
What parts of a URL does the parser break down?
Protocol, credentials, host with port, path segments, query parameters as a key-value table and the fragment. Non-standard or invalid URLs are flagged with the exact reason.
How are query parameters decoded?
Each key and value is percent-decoded individually, so plus signs and reserved characters inside parameters display correctly instead of %20 sequences.
Does the parser handle IPv6 hosts?
Yes. Bracketed hosts like [::1]:8080 split into host and port per WHATWG URL rules, matching what browsers and Node actually accept.
What is the fragment used for in modern apps?
Beyond page anchors, hash-based routing stores client views in the fragment. The parser isolates it, which makes router debugging a copy-paste job.