URL Parser

Break any URL into its protocol, host, path, port, query parameters, and fragment — with a live interactive breakdown. Zero server calls.

Runs locally

What does a URL consist of?

A URL (Uniform Resource Locator) is a structured string that tells a browser or HTTP client exactly where to find a resource and how to request it. It has up to eight distinct components: protocol (http:, https:), optional username and password for basic auth, hostname, optional port, pathname, query string (everything after ?), query parameters (key=value pairs), and fragment (the # anchor). Parsing a URL correctly matters because percent-encoding, default ports, and parameter ordering all affect how servers interpret the request.

How to use this tool

  1. 1 Paste any URL into the input field — it parses automatically as you type.
  2. 2 The URL Components table shows every field extracted by the browser-native URL parser.
  3. 3 If the URL has query parameters, they appear in a separate Query Parameters table with keys and values broken out.
  4. 4 Click the copy icon next to any field to grab that individual component.

Frequently asked questions

What URL formats are supported?

Any URL the browser's built-in URL constructor accepts: http, https, ftp, ws, wss, and custom schemes. Relative URLs (without a host) are not supported because they require a base URL context.

What is the difference between hostname and host?

hostname is just the domain or IP address (example.com). host includes the port if it is non-default (example.com:8080). origin is protocol + host (https://example.com:8080).

What is the fragment (#) used for?

The fragment is processed entirely by the browser — it is never sent to the server. It typically scrolls the page to an element with a matching id, but JavaScript can also read it to implement client-side routing.

How are duplicate query parameters handled?

The URL spec allows the same key multiple times (?tag=a&tag=b). This tool shows each key-value pair as its own row, so duplicate keys appear as multiple rows with the same key name.

Is my URL sent anywhere?

No. Parsing uses the browser-native new URL() constructor which runs entirely locally. Your URL never leaves your device.