URL Parser
Break any URL into protocol, host, port, path, query parameters, and hash. Decode percent-encoding, parse query strings as JSON with array support, and rebuild URLs from components — everything runs in your browser.
About this tool
The URL Parser is a developer utility for inspecting, debugging, and constructing URLs. Every URL is a structured object — a protocol, an authority, a path, a query string, and an optional fragment. When debugging an OAuth callback, an API redirect, or a tracking link with twenty UTM parameters, you need to see those parts cleanly separated and properly decoded.
What gets parsed
- Origin components — protocol, username, password, hostname, port, and full origin string
- Path — full pathname plus segment-by-segment breakdown for REST routes
- Query string — both raw and decoded forms, parsed into a JSON object with array support
- Fragment — the part after
#, useful for SPA routes and document anchors
Query parsing modes
Different backends serialize arrays differently. Toggle between four interpretations to match how your server expects to receive parameters:
- Auto — repeated keys (
?tag=red&tag=blue) become arrays automatically - Bracket — only
key[]=valuenotation produces arrays (PHP, Rails) - Indexed —
key[0]=a&key[1]=bnotation, preserves explicit indices - Raw — every key/value pair listed individually, no grouping
URL builder
The Build tab works in reverse: enter components in separate fields and the tool produces a properly encoded URL. Special characters in usernames, passwords, and query values are percent-encoded automatically per RFC 3986. Add or remove query parameters dynamically — perfect for constructing API requests or share links.
Bulk analysis
Paste a list of URLs into the Bulk tab to extract protocol, host, port, path, and parameter count for each one in a sortable table. Useful for auditing a sitemap, comparing redirect chains, or quickly spotting hostname inconsistencies across a list. Export results to CSV for further analysis.
Privacy
Everything runs locally in your browser using the native URL API plus a custom query parser. No URLs are sent to a server, logged, or cached anywhere. Safe to use with URLs containing OAuth tokens, signed S3 links, session IDs, or any other sensitive data.
FAQ
What does a URL parser do?
It breaks a URL into its structural components — protocol, hostname, port, path, query parameters, and fragment — so each piece can be inspected, copied, or modified independently. Useful for debugging API calls, analyzing redirects, or auditing tracking links.
How are duplicate query parameters handled?
Repeated keys like ?tag=red&tag=blue are grouped into an array by default (Auto mode). Switch to Bracket mode to require explicit key[] notation, Indexed mode for key[0]=v, or Raw mode to keep every entry separate.
Does it decode percent-encoded characters?
Yes. Each component is shown twice — the raw encoded form (%20, %2F) and the human-readable decoded form (space, slash). This makes encoding bugs immediately visible.
Can I rebuild a URL from individual parts?
Yes — switch to the Build tab, fill in protocol, host, path, and parameters separately, and the tool assembles a properly encoded URL in real time. Special characters get percent-encoded automatically.
Does the parser handle URLs with credentials?
Yes. URLs like https://user:[email protected] are split into separate username and password fields, with percent-encoding decoded so you can read the actual credentials.
Is my URL data sent to any server?
No. All parsing runs entirely in your browser using the native URL API plus a custom query parser. Nothing leaves your device — safe for URLs containing tokens, signatures, or private parameters.