Skip to content

Instantly share code, notes, and snippets.

@lambtron
Last active October 12, 2015 07:40
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lambtron/59da63860d79d7682c40 to your computer and use it in GitHub Desktop.
Save lambtron/59da63860d79d7682c40 to your computer and use it in GitHub Desktop.
Tracking last_touch with UTM params
<script type="text/javascript">
function getQueryParam(url, param) {
param = param.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regexS = "[\\?&]" + param + "=([^&#]*)",
regex = new RegExp(regexS),
results = regex.exec(url);
if (results === null || (results && typeof(results[1]) !== 'string' && results[1].length)) {
return '';
} else {
return decodeURIComponent(results[1]).replace(/\+/g, ' ');
}
};
function campaignParams() {
var campaign_keywords = 'utm_source,utm_medium,utm_campaign,utm_content,utm_term'.split(',');
var kw = '';
var params = {};
var index;
for (index = 0; index < campaign_keywords.length; ++index) {
kw = getQueryParam(document.URL, campaign_keywords[index]);
if (kw.length) params[campaign_keywords[index] + ' [last touch]'] = kw;
}
analytics.identify(params);
}
</script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment