If the adblockers become too popular, websites will update to circumvent them. It will be a lot of work at the beginning, but probably possible.
Currently, most ads are injected by JavaScript that downloads them from a different domain. That allows adblockers to block anything coming from a different domain, and the ads are blocked relatively simply.
The straightforward solution would be to move ad injection to the server side. The PHP (or whatever language) code generating the page would contact the ad server, download the ad, and inject it into the generated HTML file. From the client perspective, it is now all coming from the same domain; it is even part of the same page. The client cannot see the interaction between server and third party.
Problem with this solution is that it is too easy for the server to cheat; to download thousand extra ads without displaying them to anyone. The advertising companies must find a way to protect themselves from fraud.
But if smart people start thinking about it, they will probably find a solution. The solution doesn’t have to work perfectly, only statistically. For example, the server displaying the ad could also take the client’s fingerprint and send it to the advertising company. Now this fingerprint can of course either be real, or fictional if the server is cheating. But the advertising company could cross-compare fingerprints coming from thousand servers. If many different servers report having noticed the same identity, the identity is probably real. If a server reports too many identities that no one else have ever seen, the identities are probably made up. The advertising company would suspect fraud if the fraction of unique identities reported by one server exceeds 20%. Something like this.
They also have negative externalities, moving websites from price discrimination models that are available to everyone, to direct pay models that are only available to people who can afford that.
Adblockers have positive externalities: they remove much of the incentive to make websites addictive.
If the adblockers become too popular, websites will update to circumvent them. It will be a lot of work at the beginning, but probably possible.
Currently, most ads are injected by JavaScript that downloads them from a different domain. That allows adblockers to block anything coming from a different domain, and the ads are blocked relatively simply.
The straightforward solution would be to move ad injection to the server side. The PHP (or whatever language) code generating the page would contact the ad server, download the ad, and inject it into the generated HTML file. From the client perspective, it is now all coming from the same domain; it is even part of the same page. The client cannot see the interaction between server and third party.
Problem with this solution is that it is too easy for the server to cheat; to download thousand extra ads without displaying them to anyone. The advertising companies must find a way to protect themselves from fraud.
But if smart people start thinking about it, they will probably find a solution. The solution doesn’t have to work perfectly, only statistically. For example, the server displaying the ad could also take the client’s fingerprint and send it to the advertising company. Now this fingerprint can of course either be real, or fictional if the server is cheating. But the advertising company could cross-compare fingerprints coming from thousand servers. If many different servers report having noticed the same identity, the identity is probably real. If a server reports too many identities that no one else have ever seen, the identities are probably made up. The advertising company would suspect fraud if the fraction of unique identities reported by one server exceeds 20%. Something like this.
They also have negative externalities, moving websites from price discrimination models that are available to everyone, to direct pay models that are only available to people who can afford that.