Understanding Tracking URLs and How to Use Them Effectively

By Daniel J. Murphy

A URL, or Uniform Resource Locator, a.k.a “a link” is a powerful marketing tool for digital marketers. However, it’s really easy to overlook using URLs appropriately (and to your advantage).

For details on URLs and components of URLs see this article. That’s a great resource (even if you’re a seasoned marketer).

A Tracking URL looks something like this:


Here are the components of the URL:

Base URL or Page URL


This is the page address. If you delete everything from the question mark on and execute that URL in your browser, the page will still load the same as it would if you included the tracking parameters.

The Tracking Parameter Strings


This is the tracking code attached to the Page URL which specifies campaign, term, medium, content and/or source. These are Urchin Traffic Monitor parameters (read more about UTM parameters here). This part of the URL helps marketers track their efforts. In systems like Google Analytics and HubSpot, marketers can analyze performance of campaigns using Tracking URLs because those systems attribute site traffic based on UTM parameters.

(jump below to read how to measure performance of Tracking URLs with Google Analytics or HubSpot)

Within the Tracking Parameter Strings…



As a marketer you set the campaign. A campaign could be a single email blast with a co-marketing partner, or a series of social media posts geared towards nurturing leads. Whatever the type of activity, you can use this parameter in your URL to attribute traffic to a campaign.



The content parameter can be used in many different ways. It is intended to be used for attributing traffic to a specific content offer, such as an eBook, which might be one of many pieces of content within a Campaign.

At my startup I use the content parameter with some of our co-marketing emails to indicate a specific link within one email. For each email I set up a campaign. And within that email there may be 2-3 links. For each link (to a landing page offer) I provide a different content label such as hyperlink, button or image. This is especially useful in co-marketing where you don’t have access to email performance data (such as which links recipients click in the email) since a partner might be sending the email on your behalf.



Source is perhaps the most obvious parameter to understand. This parameter indicates the source of the traffic. For instance, in the example of an email, the source would be labeled email. If you were running a campaign on Facebook your parameter would be utm_source=facebook

But there’s also…

This parameter is used in paid search (Google AdWords). You cannot adjust this parameter in HubSpot.

Similar to the source parameter, this parameter allows you to group together traffic (you can use it to subgroup traffic within a source as well).


In HubSpot…

With HubSpot it’s pretty easy to track the success of any Tracking URL. Simply navigate to the Report tab and select Sources. If you’re thinking Sources is synonymous with the utm_sources parameter, you are correct.

Within Sources you can drill down within any source to check a Campaign’s performance. For instance, if you created this Tracking URL https://www.example.com/landing-page?utm_campaign=ExampleCampaign1&utm_content=EmailA&utm_source=email this is the path you’d follow to check the performance of this Tracking URL:

Select “Email Marketing” on your Sources dashboard (because of utm_source=email) HubSpot Sources

Under Campaign find “ExampleCampaign1” (because of utm_campaign=ExampleCampaign1) click it

HubSpot Campaign

Under Email find “EmailA” (because of utm_content=EmailA) and you’ll see the performance of that email with visits, contacts and your conversion rate.

HubSpot Email

What happens if you have spaces between words in Campaign, Content or Medium names?

One thing to note is that if you were to set up your Campaign, Content or Medium parameter with a space between words, it still works, but in the URL you’ll see %20 between the words. For example Email A would be utm_content=Email%20A in the Tracking URL.

HubSpot has a Tracking URL Builder you can find under "Report Home" on the left hand side. The builder is quite intuitive and looks like this:

HubSpot Tracking URL Builder

In Google Analytics…

Enter your Google Analytics portal and on the left hand navigation bar, open “Acquisition” and find “Campaigns”

Google Analytics Campaigns

From there in your dashboard you can select and refine your search to view other parameters.

Google Analytics URL Parameters


One more fun and useful URL parameter hack: auto-populating forms.

Using a similar URL string formula you can auto-populate a form (this is possible in HubSpot and many other CMS platforms) simply by adding some information within the URL.

Here’s an auto-population URL:


All you need to know is the internal name for the contact property associated with the field (in HubSpot). For instance when you see “First Name” on a form the internal name for that contact property is “firstname” which is what you use in the URL parameter. You can find the internal name for any contact property under Contact Settings in your HubSpot portal.

There are many ways where auto-population can be useful. I covered that in another post (as well as detailed step-by-step directions on auto-population).

I hope this post was helpful. Below are a few additional resources for you. Please comment and let me know what you think.

Additional resources:





Measure Your Blog’s Growth With A Startup Marketer’s Blog Growth Template
No CMS platform does it quite right. Measuring your blog growth, month-to-month is a vital top level data point for reviewing your marketing performance.
I want this template!