Book a call, become SoftwareSupport customer
Become customer

UTM parameters as a solution to measure the effectiveness of marketing activities

written by

Jarosław Danielak

Freelance Web Developer at SoftwareSupport

UTM (Urchin Tracking Module) indicate what marketing activities generate traffic on the website. Following the principle that a campaign based on the researched effects is a converting campaign. Wisely using the knowledge acquired from indicators helps plan campaigns properly to potential customers' requirements interested in our products or services.

One of the fascinating challenges was to code a large amount of information in a short form of a 16-character tag. With the client, we have developed a solution that makes it quite legible. Details of the developed method based on UTM parameters are described in this article. - Jarosław Danielak, SoftwareSupp Freelancer

Urchin Tracking Module opens up new possibilities for performance analysis

UTM is an indicator used to measure the effectiveness of a campaign. It is a parameter added to the URL that checks the origin of the traffic on the website. The implementation of UTM parameters makes it possible to obtain a large amount of detail about the visitor. Urchin Tracking Module consists of five identifiers:

  1. Source - defines the origin of the traffic. In other words, it indicates where the user came from
  2. Medium - determines the type of traffic, e.g. paid, email, etc
  3. Campaign Name - name campaigns with specific words
  4. Campaign content - specifies the URL that led the user
  5. Term - is used to denote keywords in paid campaigns

The use of the indicator during social media marketing campaigns shows the effectiveness of the posts. In short, it informs you which of the published content generated a new lead on our website. With using Urchin Tracking Module acquiring new customers is easier because it allows us to react appropriately to their presence.

As 33Across research published by Yahoo indicate: as much as 82% of the provided content is shared via copy & paste. Among the materials distributed, there were texts, pictures, and URLs. During this research, the impact of information sharing on website traffic was examined. By implementing UTM, you can check where the traffic is coming from on your website, maybe some users copy and paste content on Instagram or Facebook, and thanks to this, you can observe traffic increases.

Setting up UTM parameters as part of CRM ongoing support

In the initial part of the project, we have effectively implemented a CRM system from scratch and provided ongoing support for technological development. This client is an example of a regular customer. The cooperation began with the implementation and customization of Pipedrive. After it finished, a customer began to report new tasks to us.

Projects second phase scope:

  • Pipedrive support
  • Salesmanago support
  • Dev support

Effect: Refining the implemented Pipedrive system to meet additional customer requirements and developing a traffic tracking solution based on UTM parameters.

Project time: 20h

Client: A company that offers online programming courses.

Jarek is a web developer who is working daily with web applications and the .NET backend. He was responsible for UTM solution development. On the other hand, Paweł was a project manager engaged to contact the client and determine the project's scope.

In order to introduce and outline the topic of the article, I present an example of a tag, based on UTM parameters:
Type: post
Campaign: Free Java lessons


Freelancers tasks:

- Facebook flow corrections
-  CF7 -> CRM flow change
- Leads management and leads analysis: webinars, Vocare, Callcenter
- Zapier for SalesManago and tags
- CRM support
- Development of a Script saving UTM to local storage
- UTM documentation

Wordpress script
Minified script injected into WordPress via a plugin.

Coding UTM parameters- steps to complete one of the project tasks

The first stage of the UTM development focused on preparing a programming solution that captures information about where the traffic originates. The point was to gain knowledge about the user source. Freelancers to complete this task chosen to code in JavaScript. The code checks if the URL contains information about the UTM and a redirect to the landing page. Earlier, a dictionary method was developed with the client that structured the construction of the label. With its use, the collected information is translated into a short, maximum 16-character tag and saved in the browser. In the next step, a tag is sent to CRM. It has been achieved by adding hidden fields to which tags are attached and sent to the forms that provide this information. Then, the values of these fields are used in Zapier to save the details to the CRM.
In other words, the presented solution collects information about the source of traffic coming to the website based on UTM parameters contained in the query string or the domain from which the redirection was made. The collected information is saved in the form of a short tag, which is sent to Zapier together with the Contact Forms (course scopes, contact details, etc.) and the competency test in Zoho Forms.

UTM parameters

When the URL contains parameters such as utm_source, utm_medium, and utm_compaing, the tag consists of:
XXYYZ ... Z, where:
- XX: utm_source parameter (interpreted by the dictionary below). If the value is not contained in the dictionary, parameter is translated as its first letter and the following consonant (TikTok -> TK)

UTM parameter/ source
utm_source parameter

- YY: the value of the utm_medium parameter (interpreted by the dictionary below). If the value is not in the dictionary, it is translated as its first letter and following vowel.

UTM parameter/ medium
utm_medium parameter

- Z… Z: utm_campaign parameter: value devoid of special characters and cut short to the first letters of the words

Special cases. If there is no UTM information in the URL, the tag will be set to:

- DIRECT, if the user has entered the website directly, by entering the address or selecting the page from the tabs,

- ORGANIC, if the user entered the page through a Google search result,

- RF + the first 14 characters of the redirected domain, if the user visits the page from a link on another website.





Visiting the website through an article on will generate the tag:



Adding hidden fields to forms

WordPress Contact Forms: For each form that is to pass UTM information to Zapier, two hidden fields have to be added, named utm0 and utm1: [hidden utm0]  [hidden utm1]

Adding a script to WordPress

The script from the out/UTM-parser.js file from the repository should be used with a plug that allows modifying the <head> tag in the WordPress HTML structure.

1. Install and activate Plug Headers and Footers by WPBeginner (or another plug with the same functionality). and-footers /
2. Copy the entire script from out/UTM-parser.js in the repository.
3. In the plugin settings in the WP admin panel, in the Scripts in Header field, paste the entire copied script, enclosed in the <script> tag.
<script> [file content out / utm-parser.js] </script>
4. Save your changes.

Development of a script saving UTM to local storage

This part of the project consisted of three tasks:

1. Development of a script in JavaScript that creates a tag from UTM information contained in URL and/or HTML document parameters. Each time the website is accessed, this script analyzes several parameters and determines the source of traffic and the collected information. Then, the details are saved in the form of a short tag and can be used for filtering and analyzing data in CRM.

2. Design hidden fields in forms on the WordPress website and create a script that will send the previously generated tag together with the form. A script has been injected into WordPress, which adds tags to specially prepared fields in contact forms.

3. Implementation. After testing the complete solution in the client's test environment, the whole solution was implemented in the production environment. The implementation consisted in injecting the script using a plug-in and adding hidden fields in the Contact Forms configuration.

The client left a great deal of freedom in planning the work. Weekly status meetings were a regular part of my work. However, I was free to divide the entire project into tasks and manage them flexibly- Jarosław Danielak, SoftwareSupp Freelancer

The project was carried out for our regular client. They took advantage of the possibility of implementing the project by several freelancers. The company hired Michał - Project Manager, and Jarek, who implemented the main scope task: implementation of UTM parameters. Freelancers have been assigned so that their skills complement each other. Experts with the client's employees created a team to fulfill all assigned tasks. Freelancers worked on one project board, where the client had access to transparent information on the project progress. Additionally, the customer had the opportunity to stay in touch with the freelancers employed via the built-in communicator.

Share Article

written by

Jarosław Danielak

Freelance Web Developer at SoftwareSupport

Order projects, hire with SoftwareSupport.

Become customer

You might also be interested in these