↑↓ to move ↵ to open Esc to close Browse all tools

URL Parser

Paste a URL to see its scheme, host, port, path, query parameters and fragment. Edit the parameters, strip tracking tags and copy the clean link.

Mode
Paste a full URL. Without a scheme, like example.com/page, it is read as https://.

Parsed in your browser. Your URLs are not sent anywhere.

Hand-checked listFree Email Marketing ToolsNewsletter and email marketing services with a free plan, with subscriber, sending and branding limits from each pricing page.

URL Parser by Freebiefy, free online tools · Privacy · Legal notice

Embed this tool on your site

Paste this code into your page. The tool runs in the visitor's browser, free and without signup. The height adjusts to the content. All tools you can embed

What the URL parser shows

This tool splits a web address into its parts and shows each one decoded, with a copy button. Query parameters appear in an editable table: change a name or value, add a row, move rows or delete them, and the rebuilt URL updates as you type. Known tracking parameters are marked, and one click removes them all. In the Many URLs mode you paste a list and download a CSV file with the parts of every URL.

Parsing uses the URL class built into your browser, which follows the WHATWG URL Standard. The URL Standard defines how the web platform parses URLs, and the URL class applies its rules, so what you see here is what your browser makes of the URL.

Anatomy of a URL

Take https://jane@shop.example.com:8443/en/books?id=42&sort=new#reviews. It has these parts:

PartIn the exampleWhat it does
SchemehttpsHow to fetch the resource. http, https, ws, wss, ftp and file are the special schemes of the URL Standard.
Username and passwordjaneOptional credentials before an @. Rarely used and best avoided.
Hostshop.example.comA domain name, an IPv4 address or an IPv6 address in square brackets.
Port8443Left out when it is the default: 80 for http and ws, 443 for https and wss, 21 for ftp.
Path/en/booksSegments separated by slashes, read by the server.
Queryid=42&sort=newName and value pairs after the ?, separated by &.
FragmentreviewsThe part after #, used by the browser to jump to a place in the page.

International domain names are stored in an ASCII form called Punycode (RFC 3492), with the prefix xn--. The URL Standard gives ☕.example, which becomes xn--53h.example. The tool shows both forms.

Percent-encoding

RFC 3986, section 2 lists the characters a URL may hold as they are: letters, digits and - . _ ~, plus reserved characters like / ? # & = that separate the parts. Everything else is written as UTF-8 bytes in %XX form, so a space becomes %20 and ü becomes %C3%BC. This parser decodes those escapes for display and keeps the encoded form in the URL. A broken escape such as %zz stays as it is. To encode or decode text by hand, use the URL encoder and decoder.

Query strings

The browser's URLSearchParams interface reads a query as form data. The URL Standard's rules for that format, application/x-www-form-urlencoded, say to replace each + with a space before decoding, so color=dark+blue means "dark blue". The same name may appear more than once, and the order can matter, which is why the table keeps duplicates and lets you move rows. Parameters you do not touch keep their original encoding; edited ones are encoded again with %20 for spaces.

Fragments stay in the browser

The fragment is not part of the request. MDN's page on URI fragments says the fragment is not sent to the server and is processed by the client after the resource is retrieved, and RFC 3986, section 3.5 says it is separated from the rest of the URI before a dereference. Scripts on the page can still read it, so it is not a safe place for secrets.

Tracking parameters and privacy

Ad and analytics tools add parameters to links so a visit can be tied to a campaign or a single ad click. The tool flags these, each with the page that documents it:

ParameterWhat it isDocumented by
utm_*Campaign tags (source, medium, campaign, term, content and others)Google Analytics: URL builders: Collect campaign data with custom URLs
gclidGoogle Click Identifier, added by Google Ads auto-taggingGoogle Ads: About auto-tagging
gbraid, wbraidGoogle Ads click parameters for iOS app and web conversionsGoogle Ads: Updates to iOS 14 campaign measurement
dclidClick ID appended by Campaign Manager 360Google Campaign Manager 360: Enhanced attribution
fbclidClick ID passed when someone clicks an ad on Facebook or InstagramMeta: ClickID and the fbp and fbc Parameters
msclkidMicrosoft Click ID, unique for each ad clickMicrosoft Advertising: AccountProperty, MSCLKIDAutoTaggingEnabled
ttclidTikTok Click ID, appended when someone clicks an ad on TikTokTikTok: About TikTok Click ID

Any parameter that starts with utm_ is flagged; Google Analytics documents nine of them. Other tools use their own names, and those are only listed here once we can link to their documentation. To build tagged links for your own campaigns, use the UTM builder.

URL Standard and RFC 3986

RFC 3986 defines the generic syntax of URIs. The URL Standard has the goal to align RFC 3986 and RFC 3987 with what browsers do and to replace them. In practice the browser parser is more forgiving. It removes spaces and control characters at the start and end and tabs and line breaks inside, reads a backslash as a slash in http and https URLs, accepts short and hexadecimal IPv4 forms like 127.1 or 0x7f.1, and converts international domain names with Unicode IDNA Compatibility Processing instead of IDNA2008. RFC 3986 rejects or treats most of these differently. A server or library that follows RFC 3986 may therefore see another host or path than the browser, which matters when you check redirects or allow lists.

Usernames and passwords

RFC 3986, section 3.2.1 deprecates the user:password form, and the URL Standard notes that a username or password cannot be part of a valid URL string. Browsers still parse them, so the tool shows them with a warning.

How to use the URL parser

  1. 1Paste a URL. The parts appear right away, with a note for anything the parser changed.
  2. 2Edit, add, move or delete query parameters, or press Remove tracking parameters.
  3. 3Copy the rebuilt URL or any single part.
  4. 4For a list, switch to Many URLs and download the CSV file.

To turn a title into a clean path segment, use the slug generator. When URLs change, the redirect generator writes the server rules.

Sources

Frequently asked questions

Is the URL sent anywhere?

No. The URL is parsed by the URL class built into your browser, and nothing is uploaded. Copy link shares only the mode, never the URL, because URLs often hold tokens, email addresses or session IDs.

Why does the parsed URL look different from what I pasted?

The URL API returns the URL in its standard form. It lowercases the host, removes a port that is the default for the scheme, resolves /./ and /../ in the path, turns backslashes into slashes for http and https, and percent-encodes spaces and characters outside ASCII. The box under the input lists every change it made to your URL.

Should a space in a query be + or %20?

Both are read as a space when the query is treated as form data (application/x-www-form-urlencoded), as the browser's URLSearchParams interface does. This tool shows + as a space in the decoded values. When you edit a value, it writes a space as %20, which also works in a path, where + stays a plus sign.

Is it safe to remove tracking parameters?

For a link you share or bookmark, usually yes: the page loads the same, and the site cannot tie your visit to a campaign or an ad click. A few sites use a parameter like utm_source for their own logic, so test the cleaned link once. Do not strip these parameters from your own ad landing pages, because the ad platforms use them to count conversions.

Why is a password in a URL a problem?

Anything in a URL can end up in browser history, server logs, analytics tools and screenshots. RFC 3986 deprecates the user:password form, and the URL Standard does not count a URL with a username or password as valid, although browsers still parse it. Send credentials another way.

What does the batch mode export?

One row per line you paste: whether it parsed, the full URL, scheme, username, whether a password is present, host in ASCII and Unicode, port, decoded path, query, fragment, the tracking parameters found and the URL without them. Empty lines are skipped. The file opens in any spreadsheet program.