Skip to the tool
URLExtractor

URL Cleaner

Strip utm_ and other tracking parameters, fragments, or parameters you name, from a whole list at once — with a before-and-after view of every address that changed.

You provide
A list of URLs, one per line.
You receive
The cleaned list, with a before/after view of every address that changed.
Use it when
Use it before sharing links, publishing a reference list, or importing URLs that carry campaign parameters.

Separate with spaces or commas. Names are matched exactly.

Your list is processed in this browser tab. We never open or expand the addresses you paste.

Paste a list and choose Clean URLs to see a before and after for every address.

What this tool cannot do

  • Parameter names are matched exactly, never by prefix, so ref_id survives a rule that removes ref_.
  • Removing the whole query string can change what a link opens. The option says so, and warns again in the results.
  • Percent-encoding and case in paths and query values are preserved exactly.
  • Nothing is fetched. We never open or expand the addresses you paste, so a shortened link stays shortened.
  • Lines that cannot be parsed as a URL are passed through untouched and counted.

What gets removed

The tracking preset covers four groups, matched by exact parameter name:

  • UTM campaign tagsutm_source, utm_medium, utm_campaign, utm_term, utm_content, utm_id and their relatives.
  • Ad-platform click idsgclid, gbraid, wbraid, fbclid, msclkid, twclid, ttclid, li_fat_id, igshid and others.
  • Email and referral tagsmc_cid, mc_eid, mkt_tok, _hsenc, _hsmi, ref_src and similar.
  • Marketplace and social tagsspm, scm, srsltid, pd_rd_r and similar.

Every other parameter is left alone. You can add your own names in the box below the preset.

Exact matching, and why it matters

Parameter names are compared exactly. A rule that removes ref_ removes the parameter named ref_ — it does not remove ref_id, ref_source or referrer.

Prefix matching would be convenient and occasionally destructive: plenty of sites use ref_id as a genuine identifier, and silently deleting it would break the link while looking like it worked.

The dangerous option, labelled as such

"Remove the entire query string" is available because sometimes it is exactly right — a list of article addresses where every parameter is noise. It is also the one option that can turn a working link into a different page: ?id=42, ?page=2 and ?q=search+terms are not decoration.

The checkbox says so, and the results panel warns again while it is on.

What it never does

It never fetches anything. Pasting a list here does not cause a single request to any of those addresses — no expanding shortened links, no checking whether they work, no preview. Cleaning is a text transformation, and keeping it that way is what makes it safe to paste a list of links you would rather not announce to anyone.

Duplicate URL RemoverCleaning often reveals duplicates. Remove them next.

Frequently asked questions

Will cleaning break my links?

Removing tracking parameters is safe in almost every case — they exist for analytics, not for choosing what to show. Removing the whole query string is different and can absolutely change what a link opens, which is why it is a separate, clearly labelled option. The before/after view shows you every change before you copy anything.

Does it expand shortened links?

No. Nothing is fetched. A bit.ly address stays a bit.ly address. Expanding links would mean contacting every one of them, which is not something a cleaning tool should do to a list you pasted.

Why did my link change case?

Only if you turned on “Lowercase the hostname”, and only the hostname changes. Paths and query values keep their capitalisation, because they are case-sensitive on most servers.

Can I undo it?

Your original list is still in the input box, untouched. “Reset to originals” clears the rules and re-runs, and the CSV export contains both the before and after values for every row.

Related tools

Guides for this tool

Share this pageWhatsAppXLinkedInFacebook