Earlier this year, I wrote about bad user experiences on websites and foremost among these were the shitty things some sites do with ads. Forbes’ insistence that you watch one before manually clicking through to the story, full screen and popover ads and ads that would take over your screen after you started reading the article were all highlighted. Unanimously, we hate this experience.
Because the aforementioned experiences are shit, people run ad blockers and I get the rationale: if ads are going to do crap like this then let’s ban them. Except then you get the likes of Forbes denying access to their content if you run them and you get into this nasty cycle of advertisers trying to circumvent ad blockers trying to circumvent advertisers. This is just not a healthy place to be.
A couple of months ago, I got fed up with ads too. I didn’t start running an ad blocker though, I decided to make a positive difference to everyone’s experience when they came to my site and I began offering sponsorship of this blog instead. The sponsor boils down to an unobtrusive line of text like this:
Readers were happy because none of the shit they usually have to deal with when ads load was there. Sponsors were happy as they were getting prime real estate and heaps of exposure. And I was happy because not only was I giving people a much better user experience, they pay a lot more than ads too. In fact, since then I’ve not run a single ad – I’ve always filled every available sponsor slot. As best I could tell, everyone was happy. But it turns out that’s not quite true…
Shortly after launching the sponsorship, someone pointed out that the sponsor message was being removed by ad blockers.
What. The. Fuck.
I get that ad blockers block ads because there’s the extra bandwidth they consume, they’re frequently a vector for malware and because frankly, they’re obtrusive and detract from the viewing experience. But my sponsor message was none of these, what the hell was going on?!
I gave the ad blockers the benefit of the doubt and assumed that because I’d named a class “sponsor_block” and given an element a name of “sponsor_message” it was simply caught up in an automated process of filtering out ad-like content. So I changed things to instead refer to “message_of_support” and in my naivety, assumed this would fix what must surely have been a mistake. There were no more “false positives” as I saw them and the sponsor message again appeared for those running ad blockers. Everyone was happy.
And then it started getting blocked again. Someone recently pointed out that Adblock Plus was causing the message to be displayed so I installed the extension and sure enough, here’s what I saw:
This was no longer a false positive, I was convinced they were deliberately filtering out my sponsor. I delved a little deeper, and found that Adblock Plus uses EasyList which has an admirable objective:
The EasyList filter lists are sets of rules originally designed for Adblock that automatically remove unwanted content from the internet, including annoying adverts, bothersome banners and troublesome tracking
Yet when I drilled down into the EasyList definitions of content to be blocked, I found something that didn’t meet any of those criteria:
In other words, someone had deliberately decided that the sponsor I show in order to help support me financially – the one with no tracking or images or iframes or malware or other crap – was being consciously blocked. The highlighted line there is just one of more than 57k other examples in that file, many of which are no doubt nasty ads in the traditional sense we think of them.
Unfortunately, because EasyList is used across other ad blockers as well, the problem extends beyond one rogue extension:
This is uBlock Origin and it was the final straw for writing this post after someone reported it to me on the weekend.
Now as it turns out, Adblock Plus actually defines criteria for acceptable ads, criteria which are entirely reasonable. For example, ads shouldn’t disrupt the page flow by inserting themselves into the middle of the content:
Ads also shouldn’t consume too much space:
This is good – any reasonable person would agree with all of this – yet my sponsor text comes nowhere near exceeding any of the criteria. Clearly, this is a mistake so I went ahead and filled out an acceptable ads application. That was now a couple of weeks ago and as of today, their false positive remains. Unfortunately, as best I can tell the process for blocking content involves no review whilst the process for unblocking errors like this require human intervention.
When I realised what was going on here, I was angry. I was suddenly sympathetic with Forbes and their decision to block people with ad blockers which is just wrong – I shouldn’t be sympathetic with them – but I’m enormously frustrated at being penalised whilst trying to make a positive difference to this whole ad thing. I was being penalised for doing precisely what the likes of Adblock Plus say I should be doing!
So here’s what I’m going to do: absolutely nothing.
I’m not going to rename elements or CSS classes in an attempt to circumvent their blocking, that’s a vicious cycle that would only sap my time as I continued to try and circumvent an unjust process. Fortunately, sponsors pay me independently of any form of CPM such as ad providers rely on so it doesn’t directly impact me, but of course I want my sponsor messages to be seen as that’s why they’re there in the first place. I could appeal to people to whitelist my site in their own instance of Adblock Plus or uBlock or whatever other ad blocker they’re using, but I’d prefer to appeal to them to report this as an incorrectly categorised ad.
When ad blockers are stooping to the same low level as advertisers themselves are in order to force their own agendas, something is very, very wrong. Deliberately modifying sites like mine which are making a conscious effort to get us away from the very things about ads that led to ad blockers in the first place makes them part of the problem. Ad blockers like this need to clean up their act.