Removing Ads from my Sites

(It occurs to me that publishing this on 1 Apr isn't the best move - rest assured this is genuine)

I've long felt uncomfortable with the privacy trade-offs of having advertising on my sites.

Shortly before GDPR came into effect, I wrote a post detailing how I was, once again, revisiting the decision of having ads on my site.

The decision then, as before, was that the ads were a necessary evil as the revenue they generate contributes something to the running costs of this site, helping keep over a decade's worth of work online.

Today, however, I'm changing that decision and removing Google's Adsense from all of my sites


Delivering My Content

In many ways, this site has been a victim of it's own success - I built a CDN to deliver it worldwide, and as a result it loads quickly well in most of the world, most of the time. That comes at a cost, as it means I've got to run infrastructure (and provision bandwidth etc) - the aim, of course, being that ads would offset that.

At the time of that previous post, I considered the viability of using Cloudflare to deliver my content, but concluded that I wasn't comfortable with the privacy implications of that (you can block ads, you can't so easily opt not to hit Cloudflare nodes).

I've actually since run an A/B test exploring the possibility of using Cloudflare, and they continue to not be an option even if I could settle my privacy misgivings with them.

So, content will continue to be delivered from my own nodes, at least for the forseeable future.


The Cost of Privacy

Ads provide revenue to help support the site, but come at a cost - to readers/viewers. In effect, with ads, I'm asking you to trade a bit of privacy for the ability to view my content (albeit with the ability to block ads and still view the content).

In theory the privacy cost should be relatively small - I only serve contextual ads (i.e. behavioural tracking is disabled), but loading the ad still requires a contact with Google's services that would otherwise not be there - it has to be taken on trust that they're not in fact profiling that.

However, over time, ad revenue has fallen (despite page views increasing) so the medium/long-term benefit of that trade-off has dropped quite significantly.

Ad revenue's now at a level where I really can't, in good conscience, ask users to make that trade on my behalf.

There's also, very much, an element of me no longer wanting to feed into the machine. I'm not sure Google's ever been "good" with data, but there's definitely a sense lately that they're abandoning whatever pretence there once was - from Manifest v3 crippling adblocking capabilities to the new FLoC approach (no 3rd party cookies, but similar privacy implications).

Having taken the position that - in order to stop feeding the Facebook machine - I'll not use WhatsApp any more, it feels incongruent to ask users/visitors to continue feeding their data into Google's datacruncher.


Technical Costs

There are a few improvements I've previously considered that are blocked (or at least made harder) by the use of Adsense.

The most obvious being the implementation of a good, robust Content-Security-Policy. Because ads load resources from, well, anywhere, it's simply not viable to have a restrictive CSP.

On a set of sites where 99.999% of resources are served from my own servers/domains (ads not withstanding) that's really not great.


Goodbye Ads

The back-end work has already been done to turn off ads.

Some pages will continue to show them for a short while - particularly those that are being served to you from cache (whether my CDN's or your browser's) - but within the next 12 hours or so, the vast majority of pages across my services will no longer show any ads.