URL Parser

Scan to open this page

Break down any URL into protocol, credentials, hostname (with Unicode alongside punycode for international domains), port, path, hash, and every query parameter — including every occurrence of a repeated key, not just the last one.

How it works

  1. Paste a URL — every component is broken out instantly
  2. International domains show both the punycode form your browser actually uses and the readable Unicode form
  3. Repeated query keys (?tags=a&tags=b) each show as their own row, in order

Frequently asked questions

How are internationalized domains (like münchen.de) shown?

Both forms — the punycode (xn--...) your browser actually uses for DNS, and the readable Unicode form.

What happens with duplicate query parameter keys?

Each occurrence shows as its own row, in order. A common shortcut (Object.fromEntries on the parsed params) silently keeps only the last value for a repeated key — this tool doesn't do that.

Does it warn me if a URL has embedded credentials?

Yes — if the URL includes a username or password (the user:pass@host form), a warning is shown since anyone who sees the URL can see them.

Is the URL sent to a server?

No — parsing runs entirely in your browser using the native URL API.

#UrlParser#UrlParserQueryParamsDuplicateKeys#PunycodeIdnDomainDecoder#UrlParserUserinfoCredentials#ParseUrlOnlineNoAds

Related tools

From the blog

Update history

  • 2026-08-30 Added: a cover image (a URL string breaking apart into abstract puzzle-piece blocks, with a key-and-padlock icon signaling embedded credentials and globe icons signaling international domains) — used as the card thumbnail, social share image, and blog title image.
  • 2026-08-30 Launched: live URL parser (no button) — full component breakdown including punycode/Unicode hostname display, order-preserving duplicate query key handling, and an embedded-credentials warning. Entirely client-side.