Pre-optimized, deduplicated blocklists for Pi-hole
Looking for more features? Check out Zach's Lists — a full-featured blocklist platform with custom source selection, smart whitelisting, and multiple output formats.
| List | Description | Domains |
|---|---|---|
| all_domains.txt | Everything combined (except NSFW) | 1,546,828 |
| advertising.txt | Ad networks & services | 107,562 |
| tracking.txt | Analytics & telemetry | 35,020 |
| malicious.txt | Malware, phishing, scams | 1,124,680 |
| suspicious.txt | Potentially unwanted | 66,212 |
| comprehensive.txt | Curated multi-category | 460,026 |
| nsfw.txt | Adult content (separate) | 369,368 |
Note:
nsfw.txtis not included inall_domains.txtbecause it blocks legitimate adult sites. Add it separately if you want NSFW blocking.
Last updated: January 04, 2026
- Go to Pi-hole admin → Settings → Adlists
- Add the raw URL for your chosen list(s)
- Run
pihole -gto update
What's the difference between this and Zach's Lists?
This repository provides static, pre-built blocklists updated weekly. Zach's Lists offers additional features:
- Custom source selection — pick which blocklists to include
- Smart whitelisting — regex, wildcards, subdomain patterns
- Multiple formats — hosts, plain, and Adblock syntax
- Real-time build progress
Both use the same underlying sources and are maintained by the same person.
How often are these lists updated?
Every Sunday at midnight UTC via GitHub Actions.
Which list should I use?
- comprehensive.txt — Good balance for most users
- all_domains.txt — Maximum blocking (may cause false positives)
- Individual category lists — If you want granular control
MIT License — see LICENCE for details.