WordPress Plugin: Capturing & Tracking UTM and GCLID variables

By Haktan Suren, PhD
In Blog
Dec 5th, 2015

I am proud to announce that I have recently published a plugin in WordPress plugin repository called “HandL UTM Grabber / Tracker“. As its name indicates clearly, this plugin captures UTM and GCLID variables from URL, tracks the leads through entire journey and let you put it anywhere in your WordPress installs via shortcodes to capture them for downstream (CRM, conversion analysis etc.).

As a blogger myself, I always wonder where my website gets the most traffic. Is it from Twitter or Facebook?. If it is from Google, what people searched to land on my website. If I am running a promo or campaign, what is the revenue performance, how many clicks I have for a certain campaign and many questions like this. Most of those questions can be answered by simply looking the Google Analytics report. However, Google Analytics does not relate the data with user since it is against their terms.

As it is well known, many online businesses take advantage of the email marketing to reach out people and the key for the success is sending the right email to right person. In order to accomplish this difficult task, you need to be able to group people based on their interest. Either you can have a form asking them about their interest (a.k.a optin form) which is not really efficient due to the low turnout or you can track their habit by capturing UTM data seamlessly (100% turnout rate).


To address the issues mentioned above, I have created the “HandL UTM Grabber” WordPress plugin which you can download from WordPress for FREE. I have created the shortcodes for each UTM variables and GCLID explicitly to let you use them as you wish. The plugin captures UTM variables 100% accurately as it uses user’s COOKIE to save as soon as it recognizes UTM and GCLID variables in URL. This method ensures to capture UTMs even though the same user re-visit your webpage without UTM variables.

If you are using email marketing tools such as ActiveCampaign, Mandrill, or Interspire, you can safely pass UTM variables by simply using shortcodes.

The plugin is written very efficiently that it uses very less resources than average WordPress plugins. So long story short, it is very useful plugin and it is FREE. You are welcome to download it from here. Feel free to drop a line or two about your usage of the plugin. I am looking forward to answering all the comments.

About the Author

Haktan Suren, PhD
- Webguru, Programmer, Web developer, and Father :)

27 Responses to “WordPress Plugin: Capturing & Tracking UTM and GCLID variables”

  1. Roman says:

    Hello! Thanks for this plugin! but I have problem:
    When I use “mysite.com/?utm_source=1” it’s ok! But when I use “mysite.com/?utm_source=1_1” i see in the links “[utm_source]” and when I use “mysite.com/?utm_source=1-1” i see in the links “0”
    Can You help me?

  2. Hong says:

    Hi there,

    Will this work with Caldera Forms? I am not sure if I can use shortcode while setting up the form.

    My goal is to capture GCLID from url.

    Source: https://support.google.com/adwords/answer/7012522?co=ADWORDS.IsAWNCustomer%3Dfalse&hl=en

  3. Sandeep Jain says:

    Is it possible to store all utm fields data in my database table ? or can you let me how can i use your shortcode for track utm and where i have to placed it.


    • Haktan Suren, PhD Haktan Suren says:

      Plugin does not provide you the option for storing UTMs in db as of now. But you can hire a developer to implement this as a pipeline. Can you give us detail about how you want to implement UTM tracking, so i can help better.

  4. roshan says:

    i installed this plugin in our site but there is no any variable store in contact form database. Please tell me how store source, medium and campaign in contact form database. We use variables in contact form.

  5. roshan says:

    We are using this plugin in contact formn7. UTM parameters do not store in contact form7 database and do not going to the mail. Please reply me fast and tell me how resolve it.

  6. Jason T says:


    I installed the plugin, and am having a problem with the email showing all the items as blank. It’s hosted by Godaddy WordPress. There is no caching plugin on the site. This is what I place in the Form:

    Your First Name (required)
    [text* your-firstname]

    Your Last Name (required)
    [text* your-lastname]

    Your Email (required)
    [email* your-email]

    Phone Number (required)
    [text* your-phone-number]

    Commission Plan
    [select CommissionPlan “Standard” “Trade at Cost”]







    [submit “Send”]

    This is what I placed in the email:

    Campaign Name:

    Campaign Source:

    Campaign Medium:

    Campaign Term:

    Campaign Content:


    Here is the sample URL I’m using with UTM Parameters:

    Can you kindly let me know what I’m doing wrong?

  7. Jason T says:

    I seemed to have followed everything clearing and all I see is blank UTM parameters. I don’t have any caching plug-ins and it’s hosted by GoDaddy WordPress.

    This is what I’m using as the URL address:


    Can you kindly help please? I’ll definitely compensate for your time.

  8. Alex says:

    Hey mate,

    Can I use this with Google Ads and collecting the gclid? I have the visitors going to a landing page, where I have a button with a forwarding link to an affiliate.

    • Haktan Suren, PhD Haktan Suren says:

      Yes absolutely, gclid is one of the parameters available as a shortcode in HandL UTM Grabber. Let me know more about your implementation so i can help you better if you need it.

  9. Jose says:

    hello. Haktan.

    what is the shortcode to get utm_keyword?

    I tried [utm_medium] but isn’t working.


  10. Hi,
    I’m glad to find this plugin but so far has not worked for me. I need all the landing pages of my Google Adwords to carry the GCLID to the URL of my form page. So when people click on other landing page ads and from there click on the form page, the URL of the form page still has the GCLID. I’m using Nex form and I created a hidden field that captures URI.

  11. […] Recogiendo GCLID mediante plugin wordpress. Existen herramientas que ya han tenido en cuenta estos supuestos. Por ejemplo “HandL UTM Grabber“ en WordPress. https://www.haktansuren.com/wordpress-plugin-capturing-utm-and-gclid-variables/ […]

Wrap your code in <code class="{language}"></code> tags to embed!

Leave a Reply

E-mail address is required for commenting. However, it won't be visible to other users.

Loading Facebook Comments ...
Loading Disqus Comments ...