This video series will show you exactly how to track which Ad, Ad Group, and Campaign a contact comes from directly inside Infusionsoft if you are using Google Adwords.  Not sure about spending the time watching it? Skim through the content below.

This video series will show you how to track which ad’s your contacts are coming from when using Google Adwords. The video series is broken up into these parts:

Part 1 – Overview of Adwords + Infusionsoft + Tracking (2 min 18 sec)

Part 2 – Why UTM Tracking and Best Practices (5 min 52 sec)

Part 3 – Adwords Tracking Template and Custom Parameters (9 min 16 sec)

Part 4 – Ad Level Tracking and Value Track Parameters (8 min 2 sec)

Part 5 – More Value Track Parameters (7 min 32 sec)

Part 6 – Getting Tracking Data Into Infusionsoft (9 min 31 sec)

If you are already familiar with UTM parameters and know what values you would like to set, then you can probably skip down to Part 3 and learn about Adwords Tracking Templates and Custom Parameters.

What are UTM parameters?

These are standard tracking parameters that Google Analytics uses. Originally called Urchin Tracking Module (UTM) , these parameters are stored directly inside Google Analytics. You normally set the values of these parameters so that later you can capture this data and store it inside your CRM for tracking.

Here is an example of how Gamestop is using UTM parameters to track their adwords efforts.

I went over to Google and searched for a “brand new xbox”

And these are the paid advertisement slots that showed up for an Adwords shopping campaign.

Notice that I’m hovering over the “Gamestop” advertisement so let’s look at the actual URL that would appear in my browser after clicking on the Advertisement.  I’ve zoomed into the last part of the URL that contains the actual tracking parameters that they will be collecting if a new lead comes through.

If I ended up clicking on the Gamestop advertisement and made a purchase, then Chad V. is going to be one happy guy knowing that his “chadv_google” feed campaign is working out pretty well for him. But unfortunately, that didn’t happen.

So the take-away here is that using UTM Parameters is industry standard and commonly used among other companies.

What are Adwords Tracking Templates?

Google Adwords introduced tracking templates and they are very useful for setting up your UTM parameters. You can setup tracking templates at several levels of your Adwords Account. In the video series, we recommend setting up just one tracking template at the account level so that it’s very easy to manage. If you need to over-ride the global tracking template, then you can always define a template at a lower level.

Without a Tracking Template (Destination Url – The old way of doing things inside Adwords):{keyword}

Example Tracking Template (The preferred way of doing things inside Adwords):


Let’s break this down:

  • {lpurl} =
    • this is the “Landing Page URL” that your Ad uses
  • utm_medium = adwords
    • this is a hard coded value that will not change
  • utm_campaign = {_campaign}
    • this is a custom parameter we will define at the campaign level
  • utm_source = {_adgroup}
    • this is a custom parameter we will define at the adgroup level
  • utm_content = {_ad}
    • this is a custom parameter we will define at the ad level
  • utm_term = {keyword}
    • this is a value track parameter we will use

The idea here is that we will dynamically populate the custom parameters that we defined in our tracking template and adwords will dynamically populate the value track parameters that we use. This sounds complicated but I promise you that it’s not.

Setting up the Adwords Tracking Template

Here is exactly how we would do this.

Inside Adwords, navigate to the “Account Settings” and add a tracking template. The one we are using is pretty basic. Using the parameters above will allow us to track all the way down to the Ad level and also allow us to capture the keyword that triggered the ad. This is the keyword we are bidding on, not the keyword the user typed in. There is no possible way we can capture the exact keyword the user enters, it’s no longer possible due to an update Google made a while back.

Setting up the Custom Parameters for the Template

Then at the Campaign Level, we will add a {_campaign} custom parameter and set the value to whatever you want to capture.

Then at the AdGroup Level, we will add a {_adgroup} custom parameter and set the values.

Then at the Ad Level, we will add a {_ad} custom parameter. Before you touch anything at the Ad Level, just know that your stats will get reset and your ad will get triggered for a review. So at this point, you might not want to touch anything, but if you don’t care, then go ahead and add the custom parameter so we can track all the way down to the specific ad.

Testing the Adwords Tracking Template

Now that we have our tracking template defined and all of our custom parameters setup up, let’s do a quick test.

Go to the Account Settings and click “Test” next to the tracking template you added from earlier. This will grab 8 random ads or so and check that the landing page is found. If you hover over the “Landing page found” text, then a popup will come up where you can check which parameters are being set and from where they are being set. The final “Click URL” is also displayed. It’s good to click that URL to make sure your tracking parameters are making it to your website. Sometimes a redirect might occur which could drop your tracking parameters from the query string. This all depends on your website and how it’s setup.

Capturing UTM Tracking Parameters Inside Infusionsoft

Hopefully at this point all of your Ad’s are good to go and you are successfully passing tracking data from Google Adwords to your Website / Landing Page. Once a new lead comes through you will have to capture this data and store it inside Infusionsoft.

This is where iTracker360 can help. For the given parameters below, we’ll store this data inside Infusionsoft using the Leadsource, Custom Fields, and also Tags.


For the Leadsource, we are using “medium-campaign-source-content” to form the Leadsource value. So the resulting Leadsource allows us to identify all the way down to the Ad level where this new lead came from.

Set the Leadsource for a Contact Record

Set the Custom Tracking Fields

If you need to capture the Google Client ID or the Google Click ID (gclid parameter) then iTracker360 can do that too:

Capture Geo IP Tracking Information

As a bonus, you can also capture the contacts Time Zone, City, State, Postal Code, Country for each contact record using the built-in GeoIP lookup feature that utilizes the API provided by

Apply Tracking Tags

For reporting purposes or if you need to dynamically trigger a campaign inside Infusionsoft using a tag, then you can enable tracking tags inside iTracker360.