What model Raspberry Pi should I use for Pi-hole?


Pi-hole has low resource requirements and can even run over wireless. All model Raspberry Pi’s will work for Pi-hole:

  • Zero
  • Zero W
  • 1B
  • 1B+
  • 2B
  • 2B+
  • 3B
  • 3B+

but don’t take our word for it:


Not a Raspberry Pi, but just wanted to share that the Orange Pi Zero (with 512mb of RAM) seems to run Pi Hole well.

It’s a particularly good model as it has a built in Ethernet Port.

Hope this information is useful.


Hi, I am using a Raspberry Pi 1.
The local DNS requests from LAN are answered from cache between 3-6 ms.
The local DNS request from LAN wich are forwarded to external DNS-Servers with DNS over TLS (with stubby) needs about 300-500ms, it’s depend on how far is the requested DNS-Server is away (Hops) and how fast is it.
In my opinion it has no effect on slower loading web-pages.


I run one PiHole on a 3B+, and another on a Zero W. No difference in DNS performance that I can tell. Each runs on a Sandisk 32 GB card with Raspbian Stretch, and each runs unbound as the local resolver.

The biggest difference I note is the speed of the VNC interface - snappy on the 3B+, leisurely on the Zero W.

The 3B+ is wired to router, the Zero W is wireless. Doesn’t appear that the connection type makes any difference, but I have good wifi everywhere.


I’m using one of the early shipments of Raspberry Pi, version B (square corners) Revision 3 computers that has 256 MB of RAM and a Single-core 700Mhz BCM2835 CPU as a pi-hole.

It isn’t bad at doing the DNS filtering, no problems there. It does suffer slowdowns when you access via VNC or the web server for the dashboard and other simple pages. Looking at longer more complicated pages and queries slows the Pi B to a crawl or can render it unresponsive.

The later revisions of the B (round corners) have 512 MB, double the rev 3 RAM, and should be a lot better for your pi-hole.


running in docker or from source?
experienced any issues while installing/configuration?


Not in Docker. Zero problems with install or configure.