Testing
To see how well Pi-Hole works, I did 3 different tests on a UK news based website, known for its awful reporting standards and a horrendous amount of brain-clogging adverts. I initially set up my desktop to manually use Cloudflare and Google for DNS, for the initial 2 tests, then switched it to the Pi-Hole after. The browser cache was cleared before each test.
We now have our base result. DOM Content loaded in 2.77 seconds. Full load in 6.41 seconds. We’ll ignore the finish time, as this continues to go up in all tests. Presumably through various ajax calls to load more content. Also note a total of 217 requests, in the bottom left. Sheesh! We’ll now try the site with Chrome extension, Adblock Plus.
with AdBlock Plus DOM Content load is about the same, at 2.83 seconds. Full load down to 4.92 seconds; a good 1.5 seconds quicker. Total requests down to 157. Now to disable ABP, clear the browser cache, and load through Pi-Hole.
Pi-Hole shows even further improvement. Again, the DOM Content is almost exactly at par with the other two, at 2.8 seconds. But the load time is down to 3.5 seconds. 1.4 seconds quicker than ABP and 2.9 seconds faster than the vanilla page. That almost a 50% gain! Total requests are down to 130, from 217.
Thanks to Pi-Hole not even bothering with the ad site servers, the browser can’t even get to the ad server domains. With a client level ad blocker, the traffic is still piped through the network to your machine. Note the red text in the various ad server requests show blocked, in the ABP test, and failed in the Pi-Hole tests. It’s worth noting that it’s obvious where adverts should be, with large whitespacing, whereas ABP fixes the rendered layout. I’d say there is potential there for a Pi-Hole browser extension that fixes that but it’s hardly a pressing issue. Pi-Hole is a clear winner for outright speed.
Thanks Simon for sharing the Pi-hole goodness. One concern that comes to mind is now that we work from home, as a developer, you mind need access to those “ads”. To test sites.
How easy it is to turn off an on the domain filtering from the admin interface?
And second question, are you still using it after a year since you wrote the post?
Cheers
Hi Richard, I believe there is a switch in the admin interface to enable or disable Pi-Hole. Alternatively there is a command line option.
I’m not using Pi-Hole at the moment. It was a side project I was trying out for a colleague and, at the time, I was low on ethernet ports, and electricity plugs. But I recently purchased a 20 port switch, so I may consider putting it back in to the network eco-system.