Last active
September 17, 2024 11:03
-
-
Save paulirish/626834 to your computer and use it in GitHub Desktop.
userscript: Drop the UTM params from a URL when the page loads
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ==UserScript== | |
// @name UTM param stripper | |
// @author Paul Irish | |
// @namespace http://github.com/paulirish | |
// @version 1.2 | |
// @description Drop the UTM params from a URL when the page loads. | |
// @extra Cuz you know they're all ugly n shit. | |
// @include http*://* | |
// ==/UserScript== | |
// Update: | |
// In chrome, it's better to just install the UTM stripper chrome extension: | |
// https://chrome.google.com/webstore/detail/google-analytics-paramete/jbgedkkfkohoehhkknnmlodlobbhafge | |
// It is great and open source: github.com/mihaip/utm-stripper | |
// You can also install this greasemonkey script if you really want. | |
// download this script. go to about:extensions. Turn on developer mode and drag and drop | |
// this file onto the window. it'll install it. hopefully. | |
// lastly, if your site / marketing funnel uses these tracking tokens. you can clean up your users URLs | |
// look at the comments below on correct installation to integrate with __gaq.push | |
if (/utm_/.test(location.search) && window.history.replaceState){ | |
// thx @cowboy for the revised hash param magic. | |
var oldUrl = location.href; | |
var newUrl = oldUrl.replace(/\?([^#]*)/, function(_, search) { | |
search = search.split('&').map(function(v) { | |
return !/^utm_/.test(v) && v; | |
}).filter(Boolean).join('&'); // omg filter(Boolean) so dope. | |
return search ? '?' + search : ''; | |
}); | |
if ( newUrl != oldUrl ) { | |
window.history.replaceState({},'', newUrl); | |
} | |
} |
As we all know how Google abuses privacy by Search url tracking, let's put an end to that once n for all:
// ==UserScript==
// @name Cleanup Google Search URLs
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Put an end to Google Search Tracking
// @author VS
// @match http*://*.google.com/search*
// @include /^https?\:\/\/.*.google\..*\/.*$/
// @icon https://www.google.com/s2/favicons?sz=64&domain=google.com
// @grant none
// ==/UserScript==
(function(){
'use strict';
let url = window.location.origin;
let currUrl = window.location.href;
let cleanUrl = currUrl.split('&')[0].split('#')[0];
// let cleanUrl = currUrl.replace(/\(pp_w\d+_h\d+\)/gi, '');
window.history.replaceState({},'', cleanUrl);
// window.history.pushState({page:cleanUrl}, cleanUrl, cleanUrl);
})();
The script does not work with links pasted by the Augmented Steam browser extension. Links like https://steamdb.info/app/.../?utm_source=Steam&utm_medium=Steam&utm_campaign=SteamDB%20Extension and https://pcgamingwiki.com/api/appid.php?appid=...&utm_source=Steam&utm_medium=Steam&utm_campaign=SteamDB%20Extension remain unchanged. Mozilla Firefox 111.0b5 (64-bit), Tampermonkey 4.18.1 (January 17, 2023).
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
If we have a userscript manager installed (such as Tampermonkey), it's quicker to add your script by clicking the Raw button.