Categories
Analytics Digital Marketing

How to detect adblocker from Google Tag Manager: [GTM tutorial]

What made me write this post? – A simple google search of “how to detect adblocker” throws so many results. However, none of them were satisfactory to me. Some involved installing third party plugins and some wanted me to call an external JavaScript.

So, here is a really quick guide on how to detect adblockers using Google Tag Manager or otherwise.

detect adblocker and ad blockers


► First of all, if you don’t know what is a tag manager, read this post . It is best to use a tms (tag management system) for all digital marketing purposes.


► If you want to know how to quickly install Google tag manager, (plus, install google analytics) aka GTM on any website – Read this post.

Our Ads are non-intrusive and help us to run this blog.
Please add this website as an exception in your ad blocker.

If, for some reason you don’t use any tag management system, Mr. Avinash Kaushik has explained a way in his Occam’s Razor blog on how to do detect adblocker by native implementaion. (on page) It includes even Google analytics’ custom dimension.

In fact, the code I’ve put here is from that blog with just one modification.

Now, coming to our topic of detecting ad-blockers from tag management systems; if you are more of a ‘watcher’ than reader, probably this short video is for you.

If you like reading, carry on from – here.

Below is the simple logic – if you want to build your own code to detect adblocker.

best way to detect ad blocker

Step 1 and only 1 :- Create a variable in GTM to detect adblocker

Choose – Custom JavaScript and insert the below code.

google tag manager variable to detect adblockers
/*Simple Adblocker detector- www.digilitica.com */
function AdBlockEnabled() {
  var ad = document.createElement('ins');
  ad.className = 'AdSense';
  ad.style.display = 'block';
  ad.style.position = 'absolute';
  ad.style.top = '-1px';
  ad.style.height = '1px';
  document.body.appendChild(ad);
  var isAdBlockEnabled = !ad.clientHeight;
  document.body.removeChild(ad);
  window.localStorage.setItem('isAdblockEnabled',isAdBlockEnabled); // This is optional
  return isAdBlockEnabled;
}

Note that the window.localStorage.setItem is only optional. That is, if you wish to do something in future with this value, you can use it.

Our Ads are non-intrusive and help us to run this blog.
Please add this website as an exception in your ad blocker.

That’s pretty much it… There you go. You can either put it in a cookie, pass it to any other vendor, app etc.

Maybe you can use it to show a ‘humble request‘ like I do in this blog. 😀

This method of adblocker detection doesn’t involve any external scripts and therefore, the safest.

Cheers…

By Shivanandana Hegde

A digital marketing professional, blogger, automation enthusiast, fitness fancier, occasional hiker and a 'mobile' photographer. 😀 ➤ ( Checkout my instagram)

My interests and expertise are in web analytics, gadgets, technology, psychology and general well being.

2 replies on “How to detect adblocker from Google Tag Manager: [GTM tutorial]”

Hi, thanks for the tips.

One question, later on, where can we find this in Google Analytics? If we want to se for example number of users with ad blocker?

Thanks

Leave a Reply

Your email address will not be published. Required fields are marked *