The Difference Between a Click in Programmatic and a Session in Google Analytics - Documentation - JointCommerce

The Difference Between a Click in Programmatic and a Session in Google Analytics

Published on Jan 17, 2025

We’ll delve into the reasons why clicks and sessions don’t always match one-to-one, explore the technical underpinnings of each metric, and provide insights on what marketers should focus on instead.

Marketers, webmasters, and business owners rely on the “click” and the “session” daily to measure the effectiveness of their campaigns, optimize strategies, and ultimately drive revenue. However, anyone who has taken a deeper look at these numbers often discovers a perplexing issue: the number of clicks recorded in a programmatic advertising platform rarely matches perfectly with the number of sessions (or visits) reported in an analytics tool like Google Analytics. At first glance, this discrepancy can be disheartening. After all, shouldn’t each click translate to a user session on your website?

In this article, we’ll delve into the reasons why clicks and sessions don’t always match one-to-one, explore the technical underpinnings of each metric, and provide insights on what marketers should focus on instead. We’ll cover everything from how programmatic advertising platforms track a “click” to how analytics tools like Google Analytics record a “session,” and discuss the role of JavaScript, tag firing, user behavior, and more. By the end, you’ll have a deep understanding of these two fundamental metrics and the confidence to interpret and reconcile your data more effectively.


1. Defining “Click” in Programmatic Advertising

1.1 What Is a Click?

In the simplest terms, a “click” in digital advertising is counted when a user interacts with an ad by clicking on it. Programmatic advertising platforms—such as Google Display & Video 360, The Trade Desk, or other demand-side platforms (DSPs)—register this click the moment the user presses down on a clickable element within the ad. This metric is usually utilized as a sign that the user showed enough interest to take action. It’s a fundamental performance indicator, especially in pay-per-click (PPC) and cost-per-click (CPC) campaigns.

1.2 How Programmatic Platforms Count Clicks

While the concept of a click seems straightforward, the technological process behind it is more intricate. Here’s how it typically works:

  1. Ad Delivery: A user visits a website or app that serves ads through a supply-side platform (SSP). The SSP communicates with various DSPs to find the highest bidder for that impression.
  2. Creative Load: Once the DSP wins, the ad creative loads on the website or app.
  3. User Interaction: If the user finds the ad compelling, they click on it. This action triggers a signal that is sent to the DSP or ad server.
  4. Redirect: The user is often taken through one or more redirect URLs or tracking URLs before arriving on the advertiser’s landing page. Each redirect may be recorded by different tracking providers.
  5. Click Count: The DSP or ad server increments its “click counter” upon receipt of this signal.

1.3 The Role of Click Redirection

Redirection paths can sometimes involve multiple parties: the DSP, third-party tracking providers, or attribution platforms. During this chain of redirections, any single instance of user interaction or a technical glitch could cause multiple “click events” to be recorded, or potentially cause a missed click event if the chain is broken. This leads to complexities in ensuring the accuracy and uniqueness of a click. Despite these challenges, for most programmatic platforms, a click is generally logged server-side as soon as the user triggers the event.


2. Understanding “Session” in Google Analytics

2.1 What Is a Session?

In Google Analytics (GA), a session is a group of interactions that take place on your website within a given timeframe. A single session can encompass multiple pageviews, events, social interactions, e-commerce transactions, and more. By default, sessions in Google Analytics end after 30 minutes of inactivity (though this can be customized) or at midnight, whichever comes first. If a user revisits the site after a session has ended, Google Analytics starts a new session.

2.2 How Google Analytics Tracks Sessions

Google Analytics relies heavily on JavaScript and cookies to track user activity:

  1. Page Load: When a user arrives on a webpage that has the GA tracking code (usually a JavaScript snippet), the code runs automatically on page load.
  2. Cookie Assignment: GA checks for existing cookies on the user’s browser; if none exist, it creates a new unique client ID. This helps GA distinguish new users from returning users.
  3. Hit Generation: As the user navigates through your site, the JavaScript code sends “hits” (pageviews, events, etc.) to GA’s servers.
  4. Session Stitching: GA groups these hits into sessions based on time-based rules. If the user is idle for more than 30 minutes, a new session starts upon the next interaction.

2.3 Why Sessions Are Not Always Equal to “People”

It’s important to note that sessions do not equate to unique visitors. A single user can have multiple sessions in a day. Conversely, a single session may involve multiple pageviews, events, or interactions. Therefore, a session is more akin to a “visit”—a continuous experience with a site—rather than a definitive representation of a single user.


3. Where the Discrepancy Comes From: Click vs. Session

3.1 Different Counting Mechanisms

The primary reason clicks and sessions don’t always match is that they are counted by fundamentally different systems with different mechanisms. A click is typically tracked server-side by the programmatic platform when a user presses on an ad. A session is recorded client-side by Google Analytics through JavaScript once the user arrives on the webpage. Because these are two distinct tracking technologies—one server-based and one browser-based—the data captured can (and will) differ.

3.2 Timing and Loading Factors

One key discrepancy lies in how the user actually gets from the ad click to your website:

  • Slow Landing Page Load: If the landing page is slow or there’s a network issue, the user might abandon the page before it finishes loading. The programmatic platform would have counted a click, but Google Analytics might never record a session because its JavaScript tracking code didn’t load completely.
  • User Closes the Browser: Some users click on an ad and then quickly close the browser tab or window before the page loads. This results in a counted click but zero sessions in Google Analytics.
  • Ad Blockers and Script Blockers: Certain users run ad blockers or script blockers, which can prevent Google Analytics (or any analytics script) from firing. Again, the click is registered by the ad platform, but the session tracking never happens.

3.3 Multiple Clicks vs. Single Session

In some cases, a user might click on the same ad multiple times in quick succession, perhaps by accident or out of curiosity. The programmatic platform will count each click separately. However, if the user lands on the same page and doesn’t allow enough time to pass to start a new session in Google Analytics, those multiple clicks may only register as one session.


4. The Technical Side: JavaScript, Tag Managers, and Redirects

4.1 JavaScript Loading and Tag Management

Google Analytics relies on a piece of JavaScript code embedded in your website. Whenever a user accesses a page, this script sends information (hits) to Google’s servers. Modern websites often use tag management systems (TMS) like Google Tag Manager to help deploy, organize, and update various tags without having to modify the website’s code extensively. While convenient, it introduces additional points of failure:

  • Misconfigured Tags: A tag might fail to fire properly if it’s not configured correctly in Google Tag Manager.
  • JavaScript Errors: An error in any script on the page can cause subsequent scripts (like the GA tracking code) to fail, preventing session tracking.
  • Load Timing: If the GA tag fires late or conditionally (e.g., after certain user consent in GDPR regions), the user could exit before the tag has a chance to execute.

4.2 Redirect Chains

Programmatic clicks often go through one or more redirect links. Each redirect is a potential “point of failure”:

  • Tracking URLs: Often used for attribution, campaign management, or third-party verification. If any link in the chain breaks, the user might not arrive on your site.
  • Latency: Each additional redirect adds latency. Even a slight increase in load time can raise bounce rates.
  • Script Execution: Google Analytics only tracks a session once the final landing page loads and the GA script fires. If the user or browser times out mid-redirect, no session is recorded.

4.3 JavaScript Disabled or Blocked

A smaller portion of internet users disable JavaScript entirely or use browsers that block certain scripts by default. Programmatic platforms still record these clicks (server-side), but Google Analytics (which relies on JavaScript) can’t start a session if the script never runs.


5. Why They Rarely Match One-to-One

5.1 Counting Uniqueness

Programmatic platforms focus on counting every click event. In contrast, Google Analytics focuses on grouping visits into sessions. You could have a scenario in which five clicks within 15 minutes from the same user and device lead to only one session. Conversely, you might see a single click result in multiple sessions if the user navigates away and returns after the session timeout.

5.2 Session Timeout Discrepancies

While the default session timeout in Google Analytics is 30 minutes, this can be customized to be shorter or longer. If someone clicks on an ad, leaves, and returns after the session timeout, Google Analytics will start a new session. That means one ad click might lead to multiple sessions if the user returns after stepping away.

5.3 Click Spam, Bots, and Invalid Traffic

Not every click is from a real user. Bot traffic, click farms, or accidental clicks (e.g., from a thumb slip on mobile) can inflate the click count on a programmatic platform. However, many bots or automated scripts do not execute JavaScript, meaning they won’t register sessions in Google Analytics. Google also employs filtering to exclude known bots from Analytics data, which can further reduce the recorded session count.

5.4 Attribution Windows and Reporting Delays

Programmatic platforms often have real-time or near-real-time click reporting. Google Analytics sessions might have a slight delay, and retrospective data might be processed differently (especially in GA4). Moreover, if you’re using custom attribution models or have changed the default attribution settings, you might see further discrepancies in how sessions are credited versus how clicks are counted.


6. Real-World Examples of Click-Session Gaps

6.1 Scenario 1: High Click Count, Low Sessions

Consider a display campaign that’s getting plenty of clicks—let’s say 1,000 clicks in a day. Yet, Google Analytics only shows 700 sessions from that campaign’s source/medium or UTM parameters. Where might the other 300 sessions have gone?

  • Users Abandon Mid-Load: The landing page might be slow, causing some visitors to leave before the GA tag fires.
  • Ad Blockers: A subset of those clickers use ad/script blockers that prevent GA from recording visits.
  • Bot or Invalid Clicks: Some portion could be bots or automated scripts that never load the final page.

6.2 Scenario 2: Low Click Count, Higher Sessions

Another puzzling scenario is when you see fewer recorded clicks than sessions for a particular campaign. How can that happen?

  • Organic/Direct Visits After Exposure: Some users might click on an ad, but they arrive on your site later by typing your URL directly, or via an organic search result. In analytics, those subsequent visits could be tracked as new sessions, often attributed to “Direct” or “Organic.”
  • Multiple Sessions per Click: If the user revisits after the GA session times out, each revisit counts as a new session in Google Analytics.
  • Attribution Windows: Programmatic might attribute a single click to a campaign for days or weeks, whereas GA might only associate the session to that campaign for a defined window, then revert to a different channel if the user returns later.

7. Implications for Marketers and How to Interpret the Data

7.1 Focus on Trends, Not Absolute Parity

It’s nearly impossible to match clicks and sessions perfectly across different platforms—nor is it necessary. Instead, focus on trends over time. If you see a significant and consistent gap of, say, 20% between clicks and sessions, that may simply be your “normal.” A sudden or dramatic shift in this gap, however, can indicate a technical issue or a change in user behavior.

7.2 Use UTM Parameters and Custom Campaign Tags

To help Google Analytics recognize sessions from specific ads, make sure you’re appending UTM parameters (or equivalent) to your ad URLs. For instance, you might use:

https://www.example.com/landing-page?utm_source=programmatic&utm_medium=display&utm_campaign=summer_promo

This ensures that GA attributes the session to the correct source, medium, and campaign. It won’t solve all discrepancies, but it will provide clearer visibility into which clicks are translating into sessions.

7.3 Employ Server-Side Tracking

One emerging technique is server-side tracking, where you partially move tracking responsibilities from the client (browser) to the server. This can reduce data loss due to ad blockers or JavaScript failures because the tracking happens on your own server before the page fully loads on the client’s browser. Although more complex to implement, it can help bring click and session counts closer together.

7.4 Investigate Landing Page Performance

If your discrepancy is abnormally large, examine your landing page’s performance:

  • Page Speed: A slow page can cause high bounce rates before analytics even loads.
  • Tag Implementation: Check your Google Tag Manager or GA setup for errors in the firing triggers.
  • Mobile Optimization: Mobile users on slow connections may abandon quickly if the page isn’t optimized.

8. The Role of User Behavior and External Factors

8.1 Connection Speed and Device Type

Not everyone has a super-fast internet connection. On mobile devices, especially in areas with weak network coverage, a user might click and abandon the page due to slow load times. Again, the ad platform logs a click, but GA never sees a session if the user doesn’t stay until the JavaScript is fully rendered.

Have a Question? Drop Us a Line

Contact form

Please feel free to message us. We'll get to you as soon as we can!

Sign In to message directly