URL Parser & Query String Breakdown
Web & NetworkEverything runs locally in your browser — nothing is uploaded
Split a URL into its scheme, credentials, host, port, path, query string and fragment, plus the normalised address a browser would actually request. Query parameters come out as a table with raw and decoded values side by side, so percent-encoded text and its readable form can never be confused, and neither can a plus sign that means "space" and one that is just a plus sign. Paste an address with no scheme and https:// is added, with a note telling you it was.
Features
- Breaks out scheme, username, password, host, port, path, query string, fragment and origin
- Query parameters as a table: index, name, raw value and decoded value side by side
- Adds https:// when the scheme is missing; protocol-relative //example.com/x gets https:
- host:port inputs such as localhost:3000 are not mistaken for a scheme
- Shows the normalised address — the exact string the browser would send
- Reports the default port for the scheme when none is written
- Never echoes a password in clear text, including inside the normalised address
- A malformed percent sequence does not fail the whole parse; the other parts still come through
How to use
- Paste a URL into the input box
- Adjust the options if you need to: scheme completion, parameter display
- The result appears as you type — no button to press
- Click Copy to take the whole breakdown
FAQ
- Why was a plus sign decoded into a space?
- A + meaning a space comes from application/x-www-form-urlencoded, the convention HTML forms use and the one built-in URLSearchParams follows. In an ordinary URL a + is often a literal plus, as in the timezone offset +08:00, and both readings are defensible. That is why the table shows the raw value and the decoded value together: when you need the literal plus, read the raw column.
- It parsed my input even though I left out the scheme?
- A missing scheme gets https:// prepended, and the result says so rather than letting you believe you pasted a complete URL. If you meant a different protocol (http, ftp), paste the full address. The behaviour can be switched off, and then a missing scheme is reported as an error instead.
- The address in the result is not what I typed?
- Non-ASCII paths, parameters and fragments are normalised into percent-encoding, a default port is dropped and redundant path segments are collapsed — this is the address a browser would actually request. The input box still shows exactly what you typed.
- Why only one URL at a time?
- Input containing a line break is rejected instead of being quietly glued into one malformed address. Joining multiple lines has a very sneaky failure mode: the result looks plausible, but the hostname is wrong.
- Is my URL uploaded anywhere?
- No. Parsing happens entirely in your browser memory, the page makes no network requests, and it keeps working offline.
Related tools
URL Encode
Encoding & CryptoEscape text into %XX form and back again, treating a whole URL and a single parameter value as different jobs. Runs entirely in your browser.
User-Agent Parser
Web & NetworkParse a user agent into browser, version, OS, device type and engine, and see which rules matched. Pattern matching only. Runs entirely in your browser.
HTTP Status Codes
Web & NetworkLook up an HTTP status code for its meaning, 1xx–5xx class, typical uses and common traps. Runs entirely in your browser.
MIME Types
Web & NetworkLook up a MIME type from an extension, or the default extension for a media type. Common types only. Runs entirely in your browser.
.gitignore Generator
Web & NetworkGenerate a .gitignore from language, framework, editor and OS templates. Sections are merged and duplicates removed. Runs entirely in your browser.
Image to Base64
Web & NetworkConvert an image to Base64 or a data URL by dropping, choosing or pasting it. Resize and switch format, all locally — nothing is ever uploaded.