Your data is never sent to a server or stored anywhere. All processing happens in your browser.

URL Parser — Protocol, Host, Path, Query Components

Protocol
https
Username
user
Password
pass
Hostname
example.com
Port
8080
Host (host:port)
example.com:8080
Path
/path/to/page
Query string
q=hello&lang=en
Fragment
section-2
Origin
https://example.com:8080

Path segments

  1. path
  2. to
  3. page

Query parameters

q
hello
lang
en

How to Use


Paste a URL into the input field and the tool breaks it into components (protocol, host, port, path, query parameters, fragment) instantly. Query parameters are also shown as decoded key-value pairs.

URL Structure


A URL has the form `protocol://username:password@hostname:port/path?query#fragment`. Each part plays a distinct role: server access (protocol + host + port), resource selection (path), additional context (query parameters), and within-page location (fragment). The tool uses the browser's built-in URL API for accurate parsing.

Use Cases


  • Pull out just the query parameters from a complex URL (OAuth callbacks, tracking-laden share links)
  • Check whether credentials (user:pass) appear in a URL
  • Visually distinguish the fragment (after #) from the search string (after ?)
  • Compare URL normalization before and after (trailing slashes, etc.)
  • Sanity-check your own URL validation logic

Privacy


URL parsing is done entirely with the browser's URL API; the input never leaves your device. Even credentials embedded in URLs stay local — though you should still avoid pasting them while screen-sharing.

FAQ


What's the difference between the query string and the query parameters view?

The query string shows the raw text after ? exactly as written (e.g. ?q=hello%20world&page=2). The query parameters view splits it into individual key=value pairs and decodes them, so percent-encoded values are shown in human-readable form.

Is it safe to paste a URL that contains credentials?

Yes. Parsing relies only on the browser's built-in URL API, and the URL you enter is never sent to a server. A URL with user:pass stays entirely on your device — just be careful pasting it while screen-sharing.

How are URLs with an omitted port or username displayed?

Following the URL API's behavior, any component that isn't explicitly present is shown as empty. For example, when the default https port 443 is omitted, the port field stays blank.

Can it parse relative URLs or special schemes like mailto:?

It expects an absolute URL that the browser's URL constructor accepts, so a relative URL with no scheme will error. Schemes like mailto: or tel: can be parsed, but their host and path are represented differently than ordinary http(s) URLs.

What happens when a query parameter name appears more than once?

Repeated keys such as ?tag=a&tag=b are each listed as separate pairs, so no value is dropped or merged away.