As Firefox continues to grow in popularity, it is inevitable that more and more users will install plugins such as Adblock and Adblock Plus. As we know, such extensions work by filtering site contents through a list of predefined wildcard directives and other rules. Users may also customize the block-list by right-clicking on unwanted images or even subscribing to an automated filterset updater. Apparently, a significant number of Firefox users employ these extensions to help control the relentless flood of unwanted advertising around the Internet. This concept works great when advertisements are blocked, but what happens when users are unwittingly denied access to legitimate content?

The Two Adblock Extensions

As many are not aware, there are currently two suspiciously similar Adblock extensions for Firefox. As mentioned in the opening paragraph, Firefox users may install either “Adblock” or “Adblock Plus”, both of which are freely available via the Firefox Add-on pages. For many months now, I have been using Adblock Plus. If I remember correctly, I had replaced Adblock with Adblock Plus several months ago while resolving a conflict with some other extension (I should be keeping a log for such changes!). Since installing Adblock Plus, I have been noticing missing content from a significant number of visited sites. While not having the time (until today) to explore the situation in greater depth, I decided to snap a few screenshots along the way, capturing the Firefox view of any sites that seemed to present with missing content. Here are few of the more popular ones:

Interestingly enough, all of these sites appear normal with the other Adblock extension installed. Thus, there are two different ad-blocking extensions for Firefox, Adblock and Adblock Plus. Adblock Plus is great at blocking ads, but it also blocks a significant amount of legitimate content. On the other hand, the original Adblock extension works great at blocking ads without inadvertently blocking legitimate images and other non-ad content. Further, Adblock provides a status bar “status element” that provides useful information regarding blocked content for each page.

Checking your site

First, load a copy of Adblock Plus (AP) and check your site. Surf around. If you notice any missing images, and installing Adblock Plus is the only change you have made since last seeing your now-missing image/content, Adblock Plus is blocking your images. In my experiments, the default installation of AP is enough to block legit site content, however, a large number of additional filtering rules are provided by the Adblock Filterset.G Updater extension, so you should also install that extension and test with it as well. You may also want to test the original version of Adblock, as well as any filterset updates.

If you discover missing content due to AP (or original Adblock, for that matter), you will need to troubleshoot until you find the source of the issue. In the process of Adblock Plus disabling your content specifically, several key aspects may be involved:

The block rule as specified in the filterset options panel

The source code that includes the markup surrounding your blocked content

The IP address associated with your site

The domain on which your site is located

The name of the image (or content) file itself

Generally, if AP matches your content with one (or more) of its filters, one of the above-listed site components will be involved. Thus, finding the cause of the block will typically involve one of these aspects. For example, on my old artspace site, Adblock Plus had been blocking the site banner, “banner.jpg”, specifically because of the following filter:

Fortunately, this was easy enough to fix — I simply changed the name of “banner.jpg” to something not on the block list, and all was well again at that site. Unfortunately, troubleshooting and fixing things isn’t always so straightforward. For, example, while checking another site for AP blockage, I was only able to get the site content to display by visiting the site through a free proxy. This suggested either an IP or domain match of some sort. As you go, keep notes. And please, if you discover any useful information, please be kind and share it with the rest of us!

Remember to test your sites with Adblock Plus enabled

Nobody wants to have their legitimate site content blocked by some extension. Imagine working on a site for months or years only to discover that some percentage of visitors have been unable to view key aspects of your site. Can you say, “UUGH!!”? Whether it be your site banner, gallery images, or every graphic on your site, Adblock Plus may be unexpectedly sabotaging your online efforts. Thus, it is without hesitation that I highly recommend testing your site(s) with an Adblock-Plus-enabled version of Firefox. Even if you don’t use Adblock or Adblock Plus, I recommend installing them and enabling them to test your sites and, if necessary, implement a solution. You can always disable either extension when not needed. On the other hand, you could leave it to chance or simply ignore users of Adblock Plus, but I would not advise it. You never know who might be dropping by to dig your stuff..

Thanks for the comment, however, as mentioned in the article, the only filters used during the experiments were the default Adblock Plus filters:

“the default installation of AP is enough to block legit site content”

Technically, yes, it is the filters that are causing the false positives, however, these are the default filters we’re talking about here. Thus, anyone who installs the AP extension is going to get the false positives.

No, EasyList is more or less the default for Adblock Plus (at least most users choose it when installing Adblock Plus, Adblock Plus itself doesn’t add any filters whatsoever). You just hit one of the many issues with Filterset.G that is deprecated anyway: http://adblockplus.org/en/faq_project#filterset.g

Aha! You are correct that current installations of Adblock Plus do not provide default filters, however, previous installations (including the one with which I was testing) were configured differently. I recall no such subscription option when I originally installed the extension, rather, if I remember correctly, AP provided a default set of filters, to which additional filters were added (via filterset.G).

I am glad to hear that Filterset.G has been deprecated, and that current installations of Adblock Plus seem to have resolved the nefarious missing content issue. Nevertheless, as many Firefox users are undoubtedly still using previous versions of AP (as well as Filterset.G), the information and overall point of this article remains beneficial to site designers and web developers: don’t forget to check your sites with ad-blocking extensions and their various filters — especially if you are running advertisements! ;)

I recently discovered Adblock Plus is hiding all my .swf files. They appear for a split second then disappear. These are not ads, this is all my content. I’m checking the list in Adblock Plus but nothing is matching up. The only matching file name I’ve seen so far is swfobject.js, but in Adblock Plus there is a file path associated. Also, several other sites where I employ swfobject.js are just fine.

That is one of the downsides to using Flash content — there is no way to prevent people from blocking it. Even if you are successful tracking down the unruly filter in your particular version of Adblock Plus, there are countless variations out there in use today. Unfortunately, not everyone is willing to update their filtersets even if a known discrepancy were to arise. Even so, to determine the culprit on your own machine, first disable Adblock Plus (or whatever) and make sure the content is visible. Then, enable Adblock Plus without any filtersets (i.e., a default installation). If content is still visible after that, then try adding different filtersets until the content is blocked. Wash, rinse, repeat. I wish I could be of more help, but unfortunately that’s the best I can do..

Good call, Jeff. Three days ago, I tore apart the CSS for the website I’m currently developing for my new employer, trying to find out why an element was only showing in IE. After testing (and disqualifying) numerous complex and subtle theories, I discovered that the image (called “ad.png”) was being blocked by Adblock Plus. Truthfully, if the image was actually irrelevant or intrusive I wouldn’t have minded (in fact, I’d consider making it easily blockable a courtesy), but this was just a call to action containing the company phone number.

I wasted nearly a quarter of an hour diagnosing this problem. Seriously, people: take note of this post!

Projects

About the site

Perishable Press is the work of Jeff Starr, professional developer, designer, author, and publisher with over 10 years of experience.
Check out some of Jeff's books and projects, follow on Twitter, or learn more »

Fun fact: Perishable Press has been online since 2005, and features over 800 articles and more than 11,000 comments. More stats »