URL Parser
Enter a URL to break it down into protocol, host, path, query parameters, and fragment. Tracking parameters such as utm_source are automatically detected.
Anatomy of a URL
| Component | Example | Description |
|---|---|---|
| Scheme (protocol) | https: | Indicates the communication method. Web pages use http:/https:, email links use mailto:, and so on — it always appears at the start of a URL. |
| Userinfo | user:pass@ | Username and password used for Basic authentication. Because it is stored in plain text, be careful when sharing a URL that contains it. |
| Hostname | example.com | The domain name or IP address of the destination server. |
| Port | :8080 | The destination port number. It is usually omitted because http defaults to 80 and https defaults to 443. |
| Path | /users/123 | A hierarchical string that identifies the location of a resource on the server. |
| Query string | ?id=123&sort=asc | A set of key=value parameters that follows the "?", with multiple pairs joined by "&". |
| Fragment | #section2 | An identifier pointing to a specific position within the page. Everything after "#" is handled only in the browser and is never sent to the server. |
Common tracking query parameters
| Parameter | Description |
|---|---|
| utm_source | Identifies the traffic source (e.g. newsletter, google, twitter) for tools such as Google Analytics. UTM stands for Urchin Tracking Module. |
| utm_medium | Identifies the marketing medium (e.g. email, cpc, social). Normally used together with utm_source. |
| utm_campaign | Identifies the name of a marketing campaign, used to measure the effectiveness of a specific initiative. |
| utm_term | Identifies the keyword used in a paid search (PPC) ad. |
| utm_content | Distinguishes between multiple links or creatives within the same ad. |
| gclid | A click ID issued by Google Ads, used for conversion tracking. |
| fbclid | A click ID issued by Facebook Ads, used by Meta for ad performance measurement. |
What a URL parser does
A URL parser takes the URL you enter and breaks it into its parts — scheme (protocol), host name, port, path, query parameters and fragment — then lists them out. Rather than following a long URL with your eye and picking it apart by hand, it uses the browser’s built-in URL API to split it accurately, and it also flags tracking parameters such as utm_source, gclid and fbclid on its own.
Everything you enter is handled by JavaScript inside your browser and is never sent to a server. Even a URL carrying credentials — the user:pass@host form — can be examined safely, with nothing leaking outside.
How to use the URL parser
- Paste the URL into the field Enter a complete URL including the scheme (https:// and the like). Relative paths and URLs with the scheme omitted cannot be parsed.
- Read the list of parts Protocol, host name, port, path, fragment and the rest are split out automatically, each on its own row.
- Check the query parameters Key-and-value pairs are listed, and parameters used for tracking, such as utm_source, carry a badge of their own.
- Decide what to strip Look at the parameters with a tracking badge and judge whether they should come off before you share the link.
Tips for getting more out of it
- Before sharing a URL on social media, run it through this tool to check whether it contains tracking parameters such as utm_source. Removing them first gives you a cleaner link to share.
- Every URL you enter is processed entirely in your browser with JavaScript and never sent to the toolbase.cc server, so it is safe to check URLs that contain credentials.
- If the same key appears multiple times in the query string (e.g.
?tag=a&tag=b), each occurrence is listed as its own row. - The fragment (everything after "#") is never sent to the server — it is used only inside the browser for in-page links or single-page-app routing, so it never shows up in server access logs.
- When the port field is blank, it means the default port (80 for http, 443 for https) was omitted from the URL.
Where a URL parser is useful
Checking for tracking before sharing on social media
Before passing a link on, see whether utm_source and its relatives are attached, and share a clean URL with them removed if need be.
Making sense of a long URL
Even a URL with a great many query parameters strung together becomes legible once it is split key by key, so you can see at a glance what each one specifies.
Debugging server-side work
When writing routing or redirect handling, confirm how a real URL breaks down — with the same behaviour as the browser’s own URL API.
Investigating advertising click identifiers
When a link arrives carrying gclid, fbclid or similar, the parameter gives you a clue as to which advertising platform it came through.
Terms for the parts of a URL
- Origin
- The combination of scheme, host name and port. Whether two URLs share an origin is the criterion for the browser’s security controls, CORS among them.
- Query string
- The group of key=value parameters that follows the “?” in a URL. Several can be strung together with “&”.
- Fragment
- The part of a URL after the “#”. It is never sent to the server; it serves for in-page links and for routing in single-page applications.
- Percent-encoding
- The mechanism that converts UTF-8 bytes into the %XX form so that characters outside ASCII can travel in a URL. It also goes by the name URL encoding.
- UTM parameters
- The collective name for the set of query parameters, utm_source among them, by which analytics tools identify where a visit came from.
- Click identifier
- An identifier issued per click by an advertising platform, such as gclid or fbclid. It is used to measure conversions.
FAQ
scheme (such as http://). If you want to check something like localhost:3000/path, prefix it with http:// to get http://localhost:3000/path.
Side Note — Why did URLs end up with so many tracking parameters?
Query parameters like ?utm_source=... trace back to "Urchin Tracking Module," an analytics identifier offered in 2005 by Urchin, the company whose product became the basis for Google Analytics after Google acquired it. That acquisition is why the term "UTM parameter" became an industry standard.
From the 2010s onward, advertising platforms such as Google and Facebook began adding their own tracking parameters (gclid, fbclid, and the like), so a single URL can now carry several tracking parameters stacked on top of each other. Links shared on social media often look unusually long for exactly this reason.
Some browsers and privacy-focused tools now strip these parameters automatically. Still, the underlying measurement purpose is genuinely useful for many legitimate sites, so it is not simply "bad" — the debate over balancing marketing analytics with personal privacy continues today.