LinkClean

Do cleaned links still work?

Short answer: yes. Tracking parameters are read by analytics scripts after the page loads — the page itself doesn't need them. Here's why, with exceptions.

How a URL is actually used

A URL has two halves: the path (the part before the ?) and the query string (the part after). When you click a link, your browser asks a server for the path. The server returns a page based on the path. The query string is along for the ride — the server may or may not look at it.

Tracking parameters live in the query string. They're not part of the path, they're not used for routing, they're not used to authenticate, and they're not used to choose what the server returns. They exist so that *after* the page has loaded, an analytics script in the page can read them and report back where the click came from. Stripping them changes nothing about what the page does.

The two-second test

Take any link with a long tail of utm_*-style parameters. Delete everything from the ? onward. Refresh. Did you land on the same page? Almost always yes — the tail was tracking. The few exceptions are obvious by behavior: a YouTube link without ?t= starts at zero instead of the time you wanted; a Wikipedia link without ?q= shows the search box empty.

LinkClean is built around exactly this distinction. Vendor-specific tracker names (utm_source, fbclid, gclid, …) are stripped by default. Generic names that double as functional keys (t, q, ref, source) are off by default — and the ones that LinkClean does strip are host-scoped to the sites where they're trackers (e.g. si= on YouTube but not elsewhere).

The exceptions worth knowing

Some query parameters do matter. They're rare on shared links — usually they're added by you, on purpose, when you wanted a specific state. The big ones to recognize:

  • Timestamps. YouTube's ?t=120 (start at 2:00), Vimeo's #t=2m0s, Twitch's ?t=01h00m. Strip them and the video starts from the beginning.
  • Search / filter state. Wikipedia's ?q=, Amazon's ?k=, Reddit's ?sort=. Strip them and the page loads in its default state.
  • Anchors / deep-link tokens for SPAs. Some apps store routing state in the query string (e.g. ?view=details). Strip them and the page might land on the wrong tab.
  • Embedded credentials. Rare but real — magic-link login URLs, password-reset URLs. Strip them and the link stops authenticating.

Why a hand-trim isn't a substitute for a catalog

“Delete everything after the ?” works for utm_* tags, but tracking links often mix functional and tracking parameters in one tail. Strip them all and you lose the timestamp. Strip none and you've leaked tracking metadata.

LinkClean's catalog is curated for exactly this distinction. utm_source, fbclid, gclid — stripped everywhere. Generic words that are sometimes trackers (e.g. ref, source) — off by default, opt-in per site. Host-scoped rules (si= on YouTube, tag= on Amazon) — applied only where they're actually trackers, never on hosts where the same name is functional. The whole catalog is ~80 default-on entries plus more behind opt-in toggles.

What if I share a cleaned link and the recipient says it doesn't work?

Almost never happens, but when it does, paste the cleaned link into LinkClean — the History view will show the original alongside it. You can re-share the original if needed, then submit feedback so the rule can be tightened (host-scoped, or turned off by default for that vendor). That's the same iteration loop the iOS app's parameter-telemetry pipeline feeds — catalog gaps are the part of the product the user audits over time.

Frequently asked

What about login or magic-link URLs?

Those carry credentials in the query string and should never be stripped. They're also extremely rare on the kinds of links you'd share publicly. If you're forwarding a login link, you probably shouldn't be — that's a separate problem from tracking parameters.

Does LinkClean ever break a video timestamp?

No. t=, t=1m20s, and #t= variants are preserved on every host. LinkClean's YouTube cleaning is host-scoped to youtube.com and youtu.be, and it strips si= (share identifier) while leaving t= (timestamp) intact.

What about Amazon product links?

Amazon-specific tracking keys (tag=, ref_=, pf_rd_*) are host-scoped to Amazon storefronts in LinkClean's catalog. The product ID, search query, and storefront language are preserved. The affiliate-credit and click-attribution tail is removed.

Are there any sites where this strategy fails?

A small number of SPAs (single-page apps) store deep-link state in the query string — strip it and you might land on the wrong tab. LinkClean errs toward preserving generic names by default and scopes the aggressive rules to hosts where they're known trackers. If you find a site where cleaning breaks something, the report flow inside the iOS app surfaces exactly which parameter was at fault.

Get LinkClean.

On-device URL cleaning for iPhone — from the share sheet, the app, Shortcuts, or a widget.

Download on the App Store