I'm reading that links with UTM tracking code are considered as separate links from Google's point of view and can be recognized as duplicated content.

(1) I know NOINDEX, FOLLOW can solve the duplicated content issue, but my concern is that will it cause the actual link (without UTM tracking parameters) to not being indexed by Google as well?

Here's my situation:

A Wordpress driven site, where posts are paginated.



I'm already using rel="prev", rel="next", and rel="canonical" accordingly for the above URLs.

What I'm trying to do is to add UTM parameters to links (first page of the post) being shared to social media or mobile app.



(2) In this case, will Google treat the above URL separately and dilute the link juice?

Or will search engine ended up displaying the above URL instead of the original URL (without the UTM tracking parameters)?

My idea is to programmingly inject NOINDEX, FOLLOW meta tags to the UTM tracking URL when the matching Query String is presented.

I want to avoid the UTM tracking URL showing up in the search result and pass the social sharing link juice back to the original URL.

(3) In the end, my question is, what's the best practice and approach to tackle the situation above?


  • Your example of a forum is a good one. One or more of my sites is purely parameter driven. These are all seen as separate pages. Links within the link index are another thing entirely. I will have to rethink my thoughts on this and go back to some of my research. I am withdrawing my answer until I am sure. I prefer to be right than wrong and steer you in a bad direction. I would use NOINDEX in your parameter link if it is at all possible. Cheers!!
    – closetnoc
    Aug 15, 2016 at 4:52
  • @closetnoc I do want the original page URL to be indexed. Just not sure if adding NOINDEX meta to a UTM tracking URL will result my actual URL without the UTM tracking disappear from the SERP, this is the least I want to see. I read that using a hash tag # to replace the ? can bypass the issue, but since I'm using a plugin to perform the task, and I don't really want to modify and mess with modifying the hardcoded code. Do you know if rel="canonical" will make search engine bypass indexing the UTM tracking URL?
    – KDX
    Aug 15, 2016 at 5:17
  • Huh. I just thought of this... Perhaps you do not want to use NOINDEX as much as NOFOLLOW for links with params. Still foggy. Need more coffee.
    – closetnoc
    Aug 15, 2016 at 14:57
  • @closetnoc Currently in my implementation, I didn't put NOINDEX nor NOFOLLOW, not sure how it's going to work out. Hopefully Google is smart enough to bypass UTM parameters.
    – KDX
    Aug 15, 2016 at 22:12
  • I am sure someone here has an idea how Google handles these things, it may take time. Cheers!!
    – closetnoc
    Aug 15, 2016 at 23:11

2 Answers 2


use something like this, for Apache, to set all urls with certain parameter to noindex:

<IfModule mod_rewrite.c>
RewriteCond %{QUERY_STRING} ^utm_source*)$
RewriteRule .* - [E=NOINDEX_HEADER:1] 

<IfModule mod_headers.c>
Header set X-Robots-Tag "noindex, follow" env=NOINDEX_HEADER

for nginx:

location ~*  {
if ($args != utm_source) {
add_header X-Robots-Tag noindex;

if NOINDEX for URL with UTM parameters will affect the original URL of its indexability

surely no.

  • Do you know if NOINDEX for URL with UTM parameters will affect the original URL of its indexability? Also, my hosting is not using Apache, do you have an example for Nginx?
    – KDX
    Aug 17, 2016 at 2:46
  • @KDX answer edited
    – Evgeniy
    Aug 17, 2016 at 16:24
  • How about the follow part? What's the correct syntax to append it using your example? Does it matter where I put this location ~* block? Should I place it at the top or bottom of the configuration? before or after the location / or location ~ .*\.php$ block?
    – KDX
    Aug 18, 2016 at 2:19

I would say the best solution is use the canonical tag. Noindex and follow is a solution but you have to use noindex and follow tag on every page that is running with query string, so better to use a canonical tag.

  • I'm already using canonical meta tag on every page, including the one with UTM parameters. If I understand correctly, canonical tag doesn't prevent the page to get indexed right? I just don't want the link with parameters to get indexed causing link dilution, while keeping the link juice coming from user sharing.
    – KDX
    Aug 19, 2016 at 5:53
  • yes you are right, use the actual page url in canonical tag for parameter pages like if your website url is www.abc.com/ and parameter page is www.abc.com/?u=b, then use www.abc.com url as canonocal tag in both pages Aug 20, 2016 at 13:23
  • If someone post my shared link, www.abc.com/?utm_campaign=share on another website, with canonical meta tag in place, will Google still index this page and causing link dilution.
    – KDX
    Aug 20, 2016 at 14:20
  • 1
    the link juice will be passed but Google will not index the shared link Aug 22, 2016 at 11:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.