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.

Tips

  • 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.

FAQ

In most cases, yes — removing them does not affect how the page displays or behaves, since they are mainly used for analytics and rarely affect server-side routing. That said, a small number of sites do use query parameters for conditional logic, so it is worth checking the link still works before sharing it.

This is called percent-encoding (URL encoding) — since URLs cannot directly contain non-ASCII characters, UTF-8 byte sequences are represented as %XX codes. This tool automatically decodes them for display using URLSearchParams.

This tool relies on the browser's native URL API, which can only parse a complete URL that includes a scheme (such as http://). If you want to check something like localhost:3000/path, prefix it with http:// to get http://localhost:3000/path.

No, it does not. The fragment is processed by the browser after the page has loaded and is never included in the HTTP request itself, so it never reaches the server. It is used for in-page links and single-page-app routing.

These are click IDs issued by advertising platforms. The destination site uses that ID to report to Google or Meta which ad drove the visit, which is used for conversion tracking. It is not personal information by itself, but it does let the ad platform trace the referring ad.
ツールくん

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.