How ad blocking is done: a look inside filter developing and why Manifest v3 is a threat

How do ad blockers work? At the very core of any ad blocker lie filter lists (also called 'filters') — literally lists of rules written in a special syntax. If we were to compress ad blockers' job into a few words, we'd say "ad blockers interpret filtering rules". They understand this complex syntax and perform actions with web traffic based on what these rules tell them to do: block specific elements, change web pages in certain ways, etc.

There is a rich variety of filter lists. Thousands of volunteers continuously work on keeping them up-to-date, making sure they block ads and don't break anything important.

You may have heard of the upcoming changes in Chrome browser, also known as Manifest v3. And these changes threaten to end the filters ecosystem as we know it. This article is aimed at Google Chrome developers: we want to believe that they don't have a goal of hurting this ecosystem, but rather simply lack a proper understanding of it. That's why we find it absolutely necessary to describe in detail how it functions and what's wrong with the current implementation of Manifest v3.

And perhaps some of our readers would like to know how it all works, too.

How ad blockers work

As it's been mentioned before, ad blockers are 'translators' that interpret filtering rules. First, an ad blocker download filter lists. It can be any filter lists, downloaded from multiple different places, it doesn't really matter. What matters is that now the ad blocker will start checking web pages' code against all these filtering rules.

This is how ad blocking works

Let's dive a tiny little bit into technicalities, since there are probably some people who'd like to know how things work on a deeper level. There are several different ways:

Network filtering

Ads on web pages don't appear magically out of thin air. They have to be fetched somehow, i.e. downloaded from a server. To do so, browser needs to send a web request. Filtering rules tell ad blockers which requests are trying to fetch an ad and not useful content and should be blocked.

Cosmetic filtering

Every web page has a DOM ("document object model"), basically an HTML document that contains the page's structure and all its elements. Of course, ads on the page are also elements and are reflected in the DOM. Ad blockers can remove parts of the DOM, and filtering rules help them understand which parts are ads and should be removed, and which shouldn't be messed with.

Of course, in reality it's much more complicated than that, but you can see the general picture. If you'd like to know more about the technical side, check out our ad blocking syntax guide.

Filter lists

There are hundreds, if not thousands of filter lists: AdGuard Filters, EasyList, etc. It takes daily work of thousands of volunteers and professionals to keep these filters updated, so that they are always relevant and don't mess up anything.

Filters can do more than just block ads, and different people choose different combinations of filters to match their personal preferences. Here are some examples of popular filter lists that illustrate just how diverse they can be:

  • EasyList — a base filter for many users, oriented solely to block ads,
  • EasyPrivacy — another popular choice, serves to block online trackers,
  • Fanboy's SocialList — a filter that blocks social widgets, 'Like' buttons etc.,
  • AdGuard Annoyances — AdGuard's filter to block, well, annoyances. I.e. things like cookie notices, online assistants and so on,
  • A plethora of language-specific filter lists: EasyList Germany, RUAdlist, AdGuard Turkish filter, and many, many more.

Feel free to check out this website that has a huge filter lists database.

And here's the problem: the planned Google Chrome changes imply that there will be only one default filter list (so-called 'static' rules). You'd be able to modify it with a set of 'dynamic' rules, but the limit on those is ridiculously small, only 5,000. Many filter lists we mentioned above don't fit this limit alone, imagine if you want to add multiple filter lists.

How filter lists are developed

As we said, filter lists have to be constantly updated. There are two main reasons for that:

  1. To block new ads and
  2. To fix what's broken (with the amount of rules in filter lists something's bound to break at some point).

Of course, filter lists' maintainers can't monitor millions of websites themselves. They rely heavily on user feedback. To put it in perspective:

  • AdGuard Filters repository has over 40,000 closed tasks at the moment. Every week about 500 new tasks appear and approximately the same amount gets resolved.
  • EasyList and its regional filters subscriptions mostly get their feedback from the forum and it has tens of thousands of threads.

Many ad blockers have tools to help users easily report any filter-related issues they face. For example, AdGuard users have access to a special web reporting tool. Based on such complaints, filter developers correct their filter lists. Ad blockers update the filters, and — boom! — the ad is gone.

Filters are constantly being updated

This gets us to another problem: dynamic rules in Chrome are going to have a different priority compared to static ones. It only brings more chaos and makes filter lists maintainers' work so much harder.

Where do people get new filter lists?

One of the cornerstones of today's ad blocking is the users' ability to add any custom filter lists by URL (as opposed to choosing from the default list, however large it can be). This is vital for health of the filter lists ecosystem.

  • Users have an option to try new filter lists,
  • Developers can directly share their creations with users, without any third-parties.

Another face of the same problem is that under the existing dynamic rules limitation it would be impossible for all of this to happen. This would lead to slow but sure decline of the filter development community.

What awaits us in the future?

If nothing is done and all changes planned for Chrome become reality, the future will be grim for all of us:

  1. The filters ecosystem is going to receive a very painful blow.
  2. Instead of the familiar filter variety and a large, active community there will be only a handful ad blocker developers left, who'll maintain a few filter lists to the best of their ability.
  3. From users' perspective, instead of flexible approach and the ability to customize ad blocking to their preference they'll get "unified" filter lists that do more or less the same.
  4. The community will shift towards other ad blocking methods and focus its efforts on those.

At the time, we have spoken a lot of harsh words about Safari content blocking, and rightfully so. At least, thanks to countless tricks and 'duct taping' we managed to arrive at a satisfactory solution. With Google Chrome's case, there's honestly no light at the end of the tunnel.

Are there any solution?

Yes, in fact, all these problems can be addressed and solved, and even without deviating too much from the general direction Google wants to take with Chrome. What we think should be done for that:

  • A term 'Filter list' should be introduced for both static and dynamic rules,
  • The limit for dynamic rules should be drastically increased,
  • Filter rules priorities should be rethought. Dynamic rules should have the same priority as static rules.

From the developers' point of view, it would be much simpler to have only dynamic rules. To developer community dividing rules into static and dynamic categories seems not necessary and even chaos-inducing. At the same time, we are ready to have a dialogue with Google Chrome devs and find a compromise that will satisfy everyone, and most importantly — Chrome users.

PS:
If you feel like you have what it takes to become a filter maintainer, we always welcome any help! Check out this page to learn how you can help us improve AdGuard Filters and what you'll get in return for your efforts.

Ți-a plăcut această postare?
AdGuard VPN AdGuard DNS AdGuard Mail AdGuard Wallet
AdGuard VPN AdGuard DNS AdGuard Mail AdGuard Wallet
Ecranul principal al AdGuard pentru Windows
Ecranul Protecție al AdGuard pentru Windows, care arată funcțiile de protecție și setări
Ecranul Statistici al AdGuard pentru Windows, care arată statistici pentru reclame și trackere blocate
Ecranul de gestionare a aplicațiilor din AdGuard pentru Windows, care afișează opțiunile de gestionare a protecției pentru aplicațiile instalate pe dispozitiv
20.404 20404 recenzii
Excelent!

AdGuard: blocator de reclame pentru Windows

AdGuard pentru Windows este mai mult decât un blocator de reclame. Este un instrument multifuncțional care blochează reclamele, controlează accesul la site-uri periculoase, accelerează încărcarea paginilor și protejează copiii de conținut neadecvat
Prin descărcarea programului, acceptați termenii Acordului de licență
Microsoft Store
Prin descărcarea programului, acceptați termenii Acordului de licență
AdGuard pentru Windows v8.0, perioadă de probă de 14 zile
Ecranul principal al AdGuard pentru Mac
Ecranul Modului invizibil din AdGuard pentru Mac
20.404 20404 recenzii
Excelent!

AdGuard: blocator de reclame pentru Mac

AdGuard pentru Mac este un blocator de reclame unic, conceput special pentru macOS. Pe lângă faptul că te protejează de reclamele enervante din browsere și aplicații, te protejează și împotriva urmăririi, phishingului și fraudelor
Prin descărcarea programului, acceptați termenii Acordului de licență
Aflați mai multe
AdGuard pentru Mac v2.19, perioadă de probă de 14 zile
Ecranul principal al AdGuard pentru Android
Ecranul Protecție de urmărire din AdGuard pentru Android
Ecranul de gestionare a aplicațiilor din AdGuard pentru Android, care afișează opțiunile de gestionare a protecției pentru aplicațiile instalate pe dispozitiv
Ecranul Statistici al AdGuard pentru Android, care arată statistici pentru reclame și trackere blocate
Ecranul principal al browserului privat AdGuard pentru Android
Codul QR pentru a descărca AdGuard pentru Android
20.404 20404 recenzii
Excelent!

AdGuard: blocator de reclame pentru Android

Blochează reclamele și elementele de urmărire în toate browserele, jocurile și alte aplicații. Îți protejează confidențialitatea și îți permite să controlezi modul în care aplicațiile tale folosesc Internetul. Instalare prin APK
Prin descărcarea programului, acceptați termenii Acordului de licență
Aflați mai multe
Scanați pentru a descărca
Utilizați orice cititor de coduri QR disponibil pe dispozitivul dumneavoastră
AdGuard pentru Android v4.14, perioadă de probă de 14 zile
Ecranul principal al AdGuard pentru iOS
Ecranul Protecție al AdGuard pentru iOS, care arată funcțiile de protecție și setări
Ecranul Statistici al AdGuard pentru iOS, care arată statistici pentru reclame și trackere blocate
Codul QR pentru a descărca AdGuard pentru iOS
20.404 20404 recenzii
Excelent!

AdGuard: blocator de reclame pentru iOS

Cel mai bun blocator de reclame iOS pentru iPhone și iPad. AdGuard elimină toate tipurile de reclame și trackere din Safari și vă protejează confidențialitatea în toate aplicațiile la nivel de DNS
Prin descărcarea programului, acceptați termenii Acordului de licență
Aflați mai multe
Scanați pentru a descărca
Utilizați orice cititor de coduri QR disponibil pe dispozitivul dumneavoastră
AdGuard pentru iOS v4.5
Ecranul principal al AdGuard Content Blocker
Ecranul filtrelor al AdGuard Content Blocker
Ecranul setări al AdGuard Content Blocker
20.404 20404 recenzii
Excelent!

Blocant de conținut AdGuard

AdGuard Content Blocker elimină toate tipurile de reclame din browserele mobile care acceptă tehnologia de blocare a conținutului —- și anume, Samsung Internet și Yandex Browser. Funcțiile sale sunt limitate în comparație cu AdGuard pentru Android, dar este gratuit, ușor de instalat și eficient
Prin descărcarea programului, acceptați termenii Acordului de licență
Aflați mai multe
Blocant de conținut AdGuard v2.8
Ecranul principal al extensiei de browser AdGuard
Ecranul Protecție de urmărire al extensiei de browser AdGuard
20.404 20404 recenzii
Excelent!

Extensia de browser AdGuard

AdGuard este cea mai rapidă și mai ușoară extensie de blocare a reclamelor care blochează eficient toate tipurile de reclame pe toate paginile web! Alegeți AdGuard pentru browserul pe care îl utilizați și obțineți o navigare rapidă și sigură fără reclame.
Instalați
Prin descărcarea programului, acceptați termenii Acordului de licență
Instalați
Prin descărcarea programului, acceptați termenii Acordului de licență
Instalați
Prin descărcarea programului, acceptați termenii Acordului de licență
Instalați
Prin descărcarea programului, acceptați termenii Acordului de licență
Instalați
Prin descărcarea programului, acceptați termenii Acordului de licență
Aflați mai multe
Instalați
Prin descărcarea programului, acceptați termenii Acordului de licență
Aflați mai multe
Extensia de browser AdGuard v5.5
Ecranul principal al AdGuard Assistant
20.404 20404 recenzii
Excelent!

Asistentul AdGuard

O extensie companion de browser pentru aplicații desktop AdGuard. Îți permite să blochezi elemente personalizate pe site-uri, să adaugi site-uri pe lista de permise și să trimiți rapoarte direct din browser
Asistentul AdGuard v1.4
20.404 20404 recenzii
Excelent!

AdGuard Home

AdGuard Home este o soluție bazată pe rețea pentru blocarea reclamelor și a trackerelor. Instalați-l o dată pe router pentru a acoperi toate dispozitivele din rețeaua de acasă — nu este nevoie de software client suplimentar. Acest lucru este deosebit de important pentru diverse dispozitive IoT care reprezintă adesea o amenințare la adresa confidențialității dvs.
AdGuard Home v0.107
Ecranul principal al AdGuard Pro pentru iOS
Ecranul de protecție al AdGuard Pro pentru iOS, care afișează funcțiile și setările de protecție
Ecranul de statistici al AdGuard Pro pentru iOS, care afișează statistici pentru reclame și trackere blocate
20.404 20404 recenzii
Excelent!

AdGuard Pro pentru iOS

AdGuard Pro pentru iOS vine cu toate funcțiile avansate de protecție împotriva blocării reclamelor activate. Oferă aceleași instrumente ca și versiunea plătită a AdGuard pentru iOS. Excelează la blocarea reclamelor în Safari și vă permite să personalizați setările DNS pentru a vă adapta protecția. Blochează reclamele în browsere și aplicații, vă protejează copiii de conținutul neadecvat și vă păstrează datele personale în siguranță.
Prin descărcarea programului, acceptați termenii Acordului de licență
Aflați mai multe
AdGuard Pro pentru iOS v4.5
Ecranul principal al AdGuard Mini pentru Mac
Ecranul de protecție Safari al AdGuard Mini pentru Mac
Ecranul de creare a regulii din AdGuard Mini pentru Mac
20.404 20404 recenzii
Excelent!

AdGuard Mini pentru Mac — blocator de reclame Safari

AdGuard Mini pentru Mac este un puternic blocator de reclame pentru Safari. Această aplicație ușoară elimină reclamele, blochează trackerele și accelerează încărcarea paginilor. Te ajută să navighezi pe web în Safari fără distrageri și să-ți păstrezi datele private
Instalați
Prin descărcarea programului, acceptați termenii Acordului de licență
Aflați mai multe
AdGuard Mini pentru Mac v2.3
Ecranul principal al AdGuard pentru Android TV cu protecție activată
Ecranul de blocare a reclamelor al AdGuard pentru Android TV, care arată funcțiile și setări
Ecranul setări al AdGuard pentru Android TV
Ecranul Gestionarea aplicațiilor al AdGuard pentru Android TV, care arată aplicațiile în care reclame și trackere sunt blocate
20.404 20404 recenzii
Excelent!

AdGuard pentru Android TV

AdGuard pentru Android TV este singura aplicație care blochează reclamele, vă protejează confidențialitatea și acționează ca un firewall pentru televizorul dvs. inteligent. Primiți avertismente despre amenințările web, utilizați DNS securizat și beneficiați de trafic criptat. Relaxați-vă și bucurați-vă de emisiunile preferate cu o securitate de top și zero reclame!
AdGuard pentru Android TV v4.14, perioadă de probă de 14 zile
Mascota AdGuard, Agnar, ținând pinguinul Linux
20.404 20404 recenzii
Excelent!

AdGuard pentru Linux

AdGuard pentru Linux este primul blocator de reclame Linux la nivel de sistem. Blocați reclamele și trackerii la nivelul dispozitivului, selectați din filtrele preinstalate sau adăugați propriile filtre — toate prin interfața de linie de comandă
AdGuard pentru Linux v1.4
20.404 20404 recenzii
Excelent!

AdGuard Temp Mail

Un generator de adresă e-mail temporară gratuit care te menține anonim și îți protejează intimitatea. Fără spam în inboxul principal!
20.404 20404 recenzii
Excelent!

AdGuard VPN

75 de locații la nivel mondial

Accesul la orice conținut

Criptare puternică

Politică fără jurnalizare

Cea mai rapidă conexiune

Asistență 24/7

Încercați gratuit
Prin descărcarea programului, acceptați termenii Acordului de licență
Aflați mai multe
20.404 20404 recenzii
Excelent!

AdGuard DNS

AdGuard DNS este un metodă infailibilă de a bloca reclame pe Internet care nu necesită instalarea niciunei aplicații. Este ușor de utilizat, absolut gratuită, ușor de configurat pe orice dispozitiv și vă oferă funcții minime necesare pentru a bloca reclame, contoare, site-uri web dăunătoare și conținut pentru adulți.
20.404 20404 recenzii
Excelent!

AdGuard Mail

Protejați-vă identitatea, evitați spam-ul și păstrați-vă căsuța e-mail sigură cu ajutorul aliasurilor și adreselor de e-mail temporare oferite de noi. Bucurați-vă de serviciul nostru gratuit de redirecționare a e-mail-urilor și aplicațiile pentru toate sistemele de operare.
20.404 20404 recenzii
Excelent!

AdGuard Wallet

Un portofel cripto sigur și privat care vă oferă control deplin asupra activelor dvs. Gestionați mai multe portofele și descoperiți mii de criptomonede pentru a stoca, trimite și schimba
Descărcare AdGuard Pentru a instala AdGuard, faceți clic pe fișierul indicat de săgeată Selectați „Deschide” și faceți clic pe „OK”, apoi așteptați descărcarea fișierului. În fereastra deschisă, trageți pictograma AdGuard în folderul „Aplicații”. Vă mulțumim că ați ales AdGuard! Selectați „Deschide” și faceți clic pe „OK”, apoi așteptați descărcarea fișierului. În fereastra deschisă, faceți clic pe „Instalare”. Vă mulțumim că ați ales AdGuard!
Instalați AdGuard pe dispozitivul dvs. mobil