Non-Interaction Events in Google Analytics Explained

In this article, I am going to talk about non-interaction events in Google Analytics. 

We will see why we need to pass non-interaction events in Google Analytics, how we can set them using different methods, and also how to debug them.

Introduction to non-interaction events

When it comes to Google Analytics events, you can track each and every activity that a user performs on the website. But what about the events that are system generated (events defined by you that don’t need a user interaction, such as click or scroll)? This is where the concept of non-interaction events comes into the picture. 

Let’s take an example. Suppose you run an ecommerce website and you have lots of promotions displayed on the web page. You would definitely like to see how many times the promotional banner was displayed to users (to check the performance of internal promotion campaigns) and you would set up an event for this. 

Since displaying a promotion banner is not a user initiated interaction, these events are called non-interaction events. Long story short, non-interaction events are the events which you would like to track but are not initiated by the user on the website. 

While setting up the events in Google Analytics, you get an option to select the non-interaction hit parameter to ‘true’ or ‘false’. 

If the non-interaction hit parameter is set to ‘true’ then Google Analytics will consider that the corresponding event is not initiated by the user and it will not affect the bounce rate metric in Google Analytics. 

If the non-interaction hit parameter is set to ‘false’, Google Analytics will consider such events as being initiated by the user on the website, and will set that particular page’s bounce rate to zero for the corresponding session.

Why you need non-interaction events

In order to understand the need for non-interaction events in Google Analytics, you must be familiar with the concept of bounce rate

Bounce rate is the percentage of single page visits (or sessions) in which a person leaves your website from the landing page without browsing any further or performing any action. 

A high bounce rate is not always bad, and sometimes even a very low bounce rate can be bad. For example, it is common for blogs to have a high bounce rate as people read the blog post and then leave the website. In other words, a bounce is defined as a session containing only one interaction hit. 

If the bounce rate of your website is very low, for example 10%, then that must be because of some technical issues. There could be some issue with your tracking code implementation or maybe some other website events which are resulting in more than one interaction hit request being sent to GA server in a single page web session. This implies that by default, every event hit is considered as an interaction hit, even if such an event is not initiated by the user. 

Now if your page contains any such events which are not initiated by the users you would need to set the non-interaction hit to ‘true’, which will not affect bounce rate of the page.  

Let’s look at the below image to understand it more. The image is divided into three sections explaining each section by the activities.

non interaction events

Section 1: Here, user A lands on page A of the website and exits without browsing any further or performing any action. This will be counted as a bounce for page A in Google Analytics.

Section 2 with non-interaction event: Here, user A lands on page A of the website and a non-interaction event is fired. Then user A exits without browsing any further or performing any action. This will be also counted as a bounce for page A in Google Analytics because the event is set with the non-interaction parameter to ‘True’.

Section 3 with interaction event: Here user A lands on page A of the website and an interaction event is fired (even if it is not initiated by the user). Then user A exits without browsing any further or performing any action. In this case it will not count as bounce for page A in Google Analytics because the event is set with the  non-interaction parameter to ‘False’.

There are many scenarios where users on the website do not initiate any interaction but still you want to measure a few events. In such cases you can send events with a non-interaction parameter set to ‘true’ without affecting the bounce rate of the page. 

Below, I have listed a few scenarios where you may decide to set the non-interaction hit to ‘true’.

  • Measuring internal promotion view (like on the home page or product category page).
  • Scroll tracking events on website that sends an event at 25%, 50%, 75% and 100% – but many of pages on the website by default scroll past 25% when it loads
  • Page load events which fire as soon as the webpage is completely loaded.

Caveat: If you set the non-interaction hit parameter to ‘true’ for user initiated events as well, then Google Analytics will count it as a bounce, and it may affect the bounce rate of the page.

Note: By default, an event hit in Google Analytics is considered an interaction hit and it is included in bounce rate calculations.

Do you want expert help in setting up/fixing GA4 and GTM?

If you are not sure whether your GA4 property is setup correctly or you want expert help migrating to GA4 then contact us. We can fix your website tracking issues.

How to set non-interaction events using Google Tag Manager

If you are using Google Tag Manager for setting up events on your website, you can follow the below steps to set non-interaction hit parameters.

Step-1: Navigate to your Google Tag Manager container and click on ‘Tags’.

tags

Step-2: Select the Google Analytics event tag for which you want to set the non-interaction hit parameter. As an example, I am selecting the ‘Ecommerce Internal Promotion View’ tag since this tag fires on custom events whenever the promotional banner is displayed to the user (event is not initiated by user).

promotion tag

Step-3: An overlay will appear like below. Now click on the pencil icon to edit the tag configuration.

Pencil icon

Step-4: Now click on the drop-down under ‘Non-interaction hit’.

Note: The default value for ‘Non-interaction hit’ is set to ‘False’ which means that the current event is included in bounce rate calculations.

non interaction hit dropdown

Step-5: Select ‘True’ from the list.

non interaction hi to true

Step-6: Click on ‘Save’ in the upper right corner.

save

Your tag will look like below:

Non-Interaction Events in Google Analytics

Congratulations! You have successfully set a non-interaction event using Google Tag Manager.

How to set non-interaction events using Global Site Tag (gtag.js) and Google Analytics Tag (analytics.js)

If you you are using Global Site Tag (gtag.js) for Google Analytics implementations you can modify the code by adding the parameter:

'non_interaction': true  

The sample code will look like below:

 gtag('event', 'view_internal_promotion', {
   'event_label': 'promotional name',
   'event_category': 'ecommerce',
   'event_action': 'view_internal_promotion',
   'non_interaction': true
 }); 

Note: If you do not add the parameter ‘non_interaction’: true then the default value for non-interaction hit is set to ‘False’ which implies that the current event is included in bounce rate calculations.

If you you are using Google Analytics Tag (analytics.js) for Google Analytics implementations you can modify the code by adding the parameter:

nonInteraction: true

The sample code will look like below:

 ga('send', 'event', 'ecommerce', 'view_internal_promotion', 'promotional name', {
   nonInteraction: true
 }); 

Note: If you do not add the parameter ‘nonInteraction: true’ then the default value for non-interaction hits is set to ‘False’ which implies that current event is included in bounce rate calculations.

Debugging non-interaction events

Once you set the non-interaction events, follow the below steps to debug and validate it.

Step-1: Load the webpage of your website where the non-interaction event is set up. As an example, I am going to validate the internal promotion event (not initiated by user)  fired on my website home page.

Step-2: Right-click on a web page and select ‘Inspect’ (in the Chrome web browser). 

inspect

This action will open the developer console at the bottom of the web page:

debug console

Step-3: Go to the ‘Network’ tab in the console. You will see a screen like the one below.

network tab

Step-4: Make sure the ‘Preserve Log’ and ‘Disable cache’ checkboxes are selected.

Disable cache (while developer console is open)

This option will disable browser caching for the page you are visiting while the developer console is still open.

You need to disable the cache so that your browser does not keep loading the previous version of your web page while you are making changes to it for testing purposes.

Preserve log upon navigation

If this option is kept disabled, you will lose debug information as you navigate from one from one web page to another.

Preserving the log will come handy when you are testing event tracking code.

check box debug console

Step-5: Type ‘Collect?’ in the filter on the left-hand side and refresh the page.

type collect in filter

Step-6: You will see multiple collect calls after the page refreshes. Select the event call for which you have set ‘non-interaction Hit’ to ‘True’. You should see the ‘ni’ parameter is set to 1. This implies that this event is a non-interaction event and it will not affect the bounce rate of the page.

ni parameter is set to 1

In general, events where the non-interaction hit is set to ‘false’ will not have the ‘ni’ parameter. 

This is how you can set and debug non-interaction events.

Frequently asked questions about non-interaction events in Google Analytics Explained

What is an interaction hit in Google Analytics?

Any activity on the website that  triggers the tracking code and sends data to the Google Analytics server is called an interaction hit in Google Analytics. Common hit types include page tracking hits, event tracking hits, and ecommerce hits.

What is a non-interaction hit in Google Analytics?

Non-interaction hits (events) are hits which you would like to track but are not initiated by the user on the website. 

If the non-interaction hit parameter is set to ‘true’, Google Analytics will consider the corresponding event is not initiated by the user and it will not affect bounce rate metric in Google Analytics. 

If the non-interaction hit parameter is set to ‘false’, Google Analytics will consider such events are initiated by the user on the website, which will set the particular page’s bounce rate to zero.

Why is bounce rate affected by events?

By default, every event hit is considered as an interaction hit, even if such an event is not initiated by the user.

If your page contains events which are not initiated by the users you but still need to track some of the key activities such as internal promotion view, the default value for non-interaction Hit is set to ‘False’ which implies that current event is included in bounce rate calculations. Since such events are not initiated by the users you would like to set non-interaction hit to ‘true’ which will not affect bounce rate of the page.

My best selling books on Digital Analytics and Conversion Optimization

Maths and Stats for Web Analytics and Conversion Optimization
This expert guide will teach you how to leverage the knowledge of maths and statistics in order to accurately interpret data and take actions, which can quickly improve the bottom-line of your online business.

Master the Essentials of Email Marketing Analytics
This book focuses solely on the ‘analytics’ that power your email marketing optimization program and will help you dramatically reduce your cost per acquisition and increase marketing ROI by tracking the performance of the various KPIs and metrics used for email marketing.

Attribution Modelling in Google Analytics and BeyondSECOND EDITION OUT NOW!
Attribution modelling is the process of determining the most effective marketing channels for investment. This book has been written to help you implement attribution modelling. It will teach you how to leverage the knowledge of attribution modelling in order to allocate marketing budget and understand buying behaviour.

Attribution Modelling in Google Ads and Facebook
This book has been written to help you implement attribution modelling in Google Ads (Google AdWords) and Facebook. It will teach you, how to leverage the knowledge of attribution modelling in order to understand the customer purchasing journey and determine the most effective marketing channels for investment.

About the Author

Himanshu Sharma

  • Founder, OptimizeSmart.com
  • Over 15 years of experience in digital analytics and marketing
  • Author of four best-selling books on digital analytics and conversion optimization
  • Nominated for Digital Analytics Association Awards for Excellence
  • Runs one of the most popular blogs in the world on digital analytics
  • Consultant to countless small and big businesses over the decade