How to clean a URL
- Paste a link into the box above.
- Copy the cleaned version. The tool removes UTM tags, platform click IDs, and other tracking parameters as you type.
- Use bulk mode if you have a list of URLs. Paste one per line and copy them back clean.
What gets stripped
The cleaner removes known tracking parameters from these groups:
- Campaign tags. Every UTM parameter (utm_source, utm_medium, utm_campaign, utm_term, utm_content) and the newer utm_id, utm_source_platform, utm_creative_format, and utm_marketing_tactic.
- Ad click IDs. gclid, gbraid, wbraid, dclid (Google), fbclid (Meta), msclkid (Microsoft), twclid (X), ttclid (TikTok), li_fat_id (LinkedIn), yclid (Yandex).
- Analytics handshakes. _ga and _gl (cross-domain Google Analytics), _openstat, and the Matomo / Piwik pk_ series.
- Email campaign tokens. mc_cid and mc_eid from Mailchimp, _hsenc, _hsmi, __hssc, __hstc, __hsfp, and hsCtaTracking from HubSpot, mkt_tok from Marketo and Eloqua, plus Vero, Klaviyo (_kx), and Omeda tokens.
- Platform share tokens. igshid and igsh from Instagram, ref_src and ref_url, and the per-host share IDs below.
Host-specific tracking
Some parameters are only tracking on certain platforms. The cleaner handles these by host so it does not accidentally strip them from unrelated sites:
- X (Twitter): removes ?s= and ?t= on x.com and twitter.com. These are added when you use the native Share button and only exist for attribution.
- YouTube: removes ?si=, ?feature=, and ?pp= on youtube.com, youtu.be, m.youtube.com, and music.youtube.com. The video plays the same without them.
- Spotify: removes ?si= from open.spotify.com, which is the share attribution token Spotify appends in-app.
- TikTok: removes _r, _t, checksum, sec_uid, and sec_user_id from tiktok.com share links.
- LinkedIn: removes trackingId, refId, midToken, and midSig from linkedin.com URLs.
What the cleaner leaves alone
- The protocol, host, port, and full path.
- Every query parameter that is not on the tracking list.
- The fragment (anything after #), including text fragments.
- The order of the remaining query parameters.
If you paste a link without a protocol (like example.com/page?utm_source=x), the cleaner assumes HTTPS so it can parse the URL. Paste the full protocol if you need HTTP.
Frequently asked questions
What is a URL cleaner?
A URL cleaner strips the tracking parameters from a link so the URL you keep, share, or bookmark is the shortest canonical version. Marketing teams append campaign tags like utm_source and utm_medium, ad platforms attach click IDs like gclid and fbclid, and social apps bolt on share tokens like igshid, twclid, and si. None of these change which page you land on, so removing them gives you a stable link.
Why should I remove tracking parameters from URLs?
Three reasons. First, clean URLs deduplicate in a bookmark manager or read-later app so you are not saving the same article ten times with different campaign tags. Second, a tracker-free link does not leak which email, newsletter, or post you were reading when you shared it. Third, shorter URLs are easier to read and paste into Notion, Obsidian, Slack, or a notes app.
Which parameters does this tool strip?
All standard UTM parameters (utm_source, utm_medium, utm_campaign, utm_term, utm_content and variants), Google Analytics and Ads click IDs (gclid, gbraid, wbraid, dclid, _ga, _gl), Meta and Facebook IDs (fbclid, fb_action_ids and friends), the click IDs from Microsoft Advertising (msclkid), TikTok (ttclid), LinkedIn (li_fat_id), and Yandex (yclid), Mailchimp and HubSpot campaign tokens (mc_cid, mc_eid, _hsenc, _hsmi), and common share tokens including igshid (Instagram), ref_src, and mkt_tok. On top of that it removes host-specific tracking like ?si= on YouTube and Spotify, ?s= and ?t= on X (Twitter), and LinkedIn tracking IDs, without touching those parameters on sites where they carry real meaning.
Will the cleaner break my link?
Not for supported parameters. The tool only deletes parameters from a known tracking allowlist. Every other query parameter, the path, the fragment, and the protocol are preserved exactly. If a site happens to use a parameter name that overlaps with a tracker (for example a search page that uses ?s=), we scope those to the host so they are only stripped on the platforms where they are tracking.
What about x.com share links with ?s=20&t=xyz?
Those are removed. When you tap Share on a tweet, X appends ?s=20 and a random ?t= token so it can attribute the click back to the share session. Neither parameter is needed to view the tweet, so the cleaner drops them for x.com and twitter.com only. Other sites that use ?s= or ?t= as real query parameters are untouched.
Does it remove the ?si= parameter from YouTube and Spotify?
Yes. YouTube and Spotify both add a ?si= share identifier when you copy a link from the app. It tracks which user shared the link, and the video or track loads the same without it. The cleaner removes si, feature, and pp on YouTube hosts and si on Spotify.
Can I clean a lot of URLs at once?
Yes. Switch to bulk mode and paste one URL per line. The tool processes every line, keeps blank lines, and reports how many parameters were removed in total. Use this for cleaning a Raindrop or Pocket export, a Notion link database, or a text file of saved links before importing them somewhere else.
Is anything I paste sent to a server?
No. The URL cleaner runs entirely in your browser using the built-in URL parser. The page does not make any network requests when you paste, clean, or copy. You can turn off your Wi-Fi and it still works.
Does it remove tracking parameters from the fragment (#)?
No. Fragments are almost always used for anchors and in-page state, not tracking, so the cleaner leaves them alone. If a site you care about puts tracking in the fragment, let us know and we can add host-specific handling.
Save clean links in Keep
Keep saves the links you care about as clean, searchable Markdown, so your bookmark library stays short, deduplicated, and useful. Strip the tracking, keep the article.