Projects by
Thomas Greiner blog
web log

Establishing an ad blocking filter compatibility database

Over the last few years the ad blocking landscape has evolved into a diverse ecosystem of different players, each with their own audience. That led me to start visualizing the history of ad blockers in 2014, two years after I joined eyeo, the company behind Adblock Plus, by recording releases and making the data openly accessible on GitHub.

Ad blocker history Ad blocker history

At that time was the only documentation you needed to read to be able to understand and write ad blocking filters. But since then new web technologies have come up and other ad blockers have begun supporting functionality that diverged from the de-facto filter standard which made it increasingly difficult for filter authors and developers alike to keep track of the current state of ad blocking filters.

That is why I have been working on collecting compatibility information related to ad blocking filters and filter lists. Initially, my idea was to adopt's data format but I found that the one used by Mozilla's Developer Network (MDN) for its compatibility tables (see example table) seemed easier to maintain even though it's still not considered stable yet. Plus, the code that renders those tables is open source which helped with getting things off the ground quickly.

Similar to the history data, I have also started recording filter compatibility data in the open on GitHub, hoping that filter authors and other developers help with correcting and keeping the data updated if they see value in it. Therefore I have also created a dedicated filter documentation page to display the data using the same table format as is used on MDN but slightly modified to apply to ad blockers rather than browsers.

Note: The AdGuard icon is currently being hidden by EasyList so I've reported this false positive to them. For now you can either ignore that it's missing or turn off your ad blocker for my website.

While the data is still far from complete, I'll continue filling it with data from various sources which includes both official documentation as well as source code. You can find out more about it at…

Filter Compatibility Data Filter Compatibility Docs

#adblock #adblockplus #adguard #mdn #ublockorigin