I recently completed a project for a client where I needed to track the effectiveness of the various marketing channels they have in play.

They wanted to understand which ones were generating the most revenue, and therefore which ones they should focus their efforts on. They have a YouTube channel, Facebook page, Podcast, Pintrest and blog.

As a bonus, I wanted to be able to tell them which individual assets were performing, and which ones weren’t. For example, by understanding which individual YouTube videos were doing well, they’d have a greater appreciation for which type of YouTube video they should make.

In order to do this, I used UTM parameters in the links from the various 3rd party sites to the website. I could then record the UTM data against each contract record in their email automation tool (ConvertKit) and then pass it on to a centralised dashboard. So I needed to be able to record UTM data from a variety of sources.

In some cases, this is easy. For example, Thrive Leads has a built in mechanism to record UTM data. But in some cases, it wasn’t easy at all. The client used a combination of Learndash, WooCommerce and CartFlows to sell courses. These three tools do not natively support UTM parameters.

So I needed to either do some custom plugin development, or find a plugin that could do the job.

The potential plugins

I found two plugins that would enable WooCommerce to store UTM data.

The former is a free plugin and the later is a premium one.

UTM Tracker (the free plugin) hadn’t been updated in a while and had a warning that it didn’t necessarily support the latest version of WordPress.

AFL UTM Tracker is up to date, well supported and stated that is supports Learndash, Cartflows and Zapier, as well as WooCommerce itself. Exactly what I needed.

AFL UTM Tracker

AFL UTM Tracker stores the data in a cookie when the visitor first lands on your website. It’s able to store the attribution data even if the user visits other pages on the website.

The data it can report on includes:

  • initial landing page
  • last touch page
  • first visit date
  • conversion date
  • UTM variables: source, medium, campaign, term, content

AFL UTM Tracker features

The AFL UTM Tracker plugin has the following features:

  • Stores UTM data in WooCommerce
  • Supports CartFlows and Learndash
  • Supports Zapier: can pass UTM data to other applications via Zapier


No plugin is perfect, and I did find one issue with AFL UTM Tracker.

When you use CartFlows with Learndash, you have the option to link to the CartFlows page, or the Learndash page directly. If you link to the Learndash page directly, it will redirect the user to the CartFlows page.

When this redirect happens, the UTM parameter is removed from the URL bar. So when the user lands on the CartFlows page, there is no UTM data. And AFL UTM Tracker doesn’t store it from the Learndash page.

The remedy for this is to link directly to the CartFlows page. Which is fine in most cases.

Rich data in WordPress

In addition to capturing UMT data for the analytics dashboard I built, the AFL UTM Tracker plugin also adds rich data in WooCommerce. This means you get all the attribution data for each order, in your WordPress admin interface.

For each order, you’ll be able to see:

  • UTM data – for both first touch and last touch (see below for the difference)
    • URL URL
    • UTM Source
    • UTM Medium
    • UTM Campaign
    • UTM Term
    • UTM Content
  • First Visited Date – the data the person who made the order first visited the site
  • Conversion Date – the date the person purchased the product
  • Conversion Lag – the number of days been the first visited date and the conversion rate
  • First Landing Page – the page the person first landed on
  • First Website Referrer – the website that the person was on before visiting your site

You may be wondering what is the difference between first touch and last touch?

  • First touch: first visit by the person who took the order
  • Last touch: the last visit before they converted

Wrapping up

One of the things I love about WordPress is the availability of great commercial plugins that solve a very real need. And the AFL UTM Tracker is one of those plugins. It does exactly what I needed for storing UTM data with WooCommerce, LearnDash and CartFlows and is regularly updated and well supported.

Check out AFL UTM Tracker