Free URL tools that run entirely in your browser
18 tools for cleaning, inspecting and building URLs. Everything runs as JavaScript on the page you are reading — nothing you paste is uploaded, logged or seen by us. Free to use, no sign-up required, no limits, no paywall.
Start here
- Text fragment link builderLink to an exact sentence on any page with #:~:text=. Paste the passage, get a link that scrolls to it and highlights it — no anchor needed on the page.
- Tracking parameter removerStrip utm_*, fbclid, gclid, mc_eid, igshid and 60 more tracking parameters from a URL. See exactly what was removed and which platform put it there.
Clean
- Tracking parameter removerStrip utm_*, fbclid, gclid, mc_eid, igshid and 60 more tracking parameters from a URL. See exactly what was removed and which platform put it there.
- URL normalizerPut a URL in canonical form: default ports, percent-encoding, trailing slashes, parameter order and www. Choose a lossless or a comparison-grade normalization.
Inspect
- URL parser and validatorBreak a URL into scheme, host, port, path, query and fragment, and see why an invalid one is invalid. Handles IDN hosts, repeated parameters and odd schemes.
- URL diffCompare two URLs component by component. Reordered query parameters are reported as a reorder, not as a wall of changes, and path segments are aligned.
Build
- Text fragment link builderLink to an exact sentence on any page with #:~:text=. Paste the passage, get a link that scrolls to it and highlights it — no anchor needed on the page.
- Query parameter editorEdit URL query parameters in a table. Repeated keys stay repeated — ?a=1&a=2 is two rows, not one, which is where most other editors quietly lose data.
- Slug generatorTurn a title into a clean URL slug. Accents decompose, ß becomes ss, & becomes and, and you choose the separator, the length cap and whether to keep Unicode.
- UTM builderBuild campaign URLs with saved presets and a naming convention that locks itself in, so two people tagging the same campaign produce the same parameters.
- QR code generatorGenerate a QR code as SVG or PNG, with a chosen error-correction level and an optional centre logo. Everything runs in your browser; nothing is uploaded.
- mailto: link generatorBuild a mailto: link with recipients, cc, bcc, subject and a multi-line body. Spaces encode as %20 and newlines as %0A — not as the + that shows up literally.
- tel: and sms: link generatorBuild click-to-call and click-to-text links. Numbers are normalized to the RFC 3966 form, with phone-context added where a local-form number needs it.
- WiFi QR code generatorGenerate a QR code that joins a WiFi network. Semicolons and commas in the SSID or password are escaped properly, which is where hand-written payloads break.
- geo: link generatorBuild a geo: link from coordinates or a pasted map URL, with an uncertainty radius and a label. Coordinates are range-checked and trimmed to useful precision.
Convert
- URL encoder and decoderPercent-encode and decode text, with the component-vs-full-URI distinction made explicit — the difference that decides whether your slashes and ampersands survive.
- URL-safe Base64 encoderEncode and decode URL-safe Base64 (RFC 4648 §5): -_ instead of +/, no padding. Handles emoji and every other character atob() refuses outright.
- Punycode and IDN converterConvert an internationalized domain to its xn-- punycode form and back. Shows each label separately, so you can see which part of the host is encoded.
Bulk
- Bulk URL dedupe and sortPaste thousands of URLs: deduplicate them by meaning rather than by string, sort them, and filter by domain. Runs in chunks, so a huge list will not lock the tab.
- Bulk tracking parameter stripStrip tracking parameters across an entire list of URLs at once, with a count of what was removed from each and the option to include ambiguous parameters.
Why these run in your browser
A URL is often the most sensitive thing you handle in a day: a password reset link, an internal dashboard, a document share, a WiFi credential. Sending it to someone else's server to have a query parameter removed is a strange trade.
None of these tools have a backend. Share links keep their state in the URL #fragment, which browsers never transmit — so "we never see your URLs" is a fact about how HTTP works rather than a promise we are asking you to take on trust.