head to head · open source
AdGuardHome vs dns.toys
AdGuardHome has 38,356 GitHub stars, 2,607 forks, 1,253 open issues and last shipped yesterday. dns.toys has 2,833 stars, 190 forks, 10 open issues and last shipped 9 months ago. AdGuardHome leads on adoption by 1,254% (38,356 vs 2,833 stars). AdGuardHome is written in TypeScript under GPL-3.0; dns.toys is written in Go under MIT. AdGuardHome has attracted 7% as many forks as stars, dns.toys 7%. AdGuardHome was the more recently maintained of the two, and both are self-hostable with no licence fee. The two share 1 topic tag (dns), so they are genuine substitutes rather than adjacent tools.
Two open source projects, one decision. Both are free and self-hostable — the differences are community size, license terms, language stack and release pace.
← all 20902 open source comparisons
Side by side
| AdGuardHome | dns.toys | |
|---|---|---|
| GitHub stars | ★ 38K | ★ 2.8K |
| License | GPL-3.0 | MIT |
| Written in | TypeScript | Go |
| Last push | 2026-11-11 | 2026-02-26 |
| Forks | ⑂ 2.6K | ⑂ 190 |
| Self-hosting | Yes | Yes |
| Data ownership | Your server | Your server |
pick AdGuardHome if
- You weight community size — 38K stars and counting
- You want the GPL-3.0 license terms
- Your stack matches TypeScript
- You value the larger contributor base for long-term maintenance
pick dns.toys if
- You want the dns.toys feature set and don't need the biggest community
- You prefer the MIT license terms
- Your stack matches Go
- You evaluated both and dns.toys fits your workflow better
About AdGuardHome
Privacy protection center for you and your devices Free and open source, powerful network wide ads & trackers blocking DNS server. AdGuard.com Wiki Reddit Twitter Telegram AdGuard Home is a network wide software for blocking ads and tracking. After you set it up, it'll cover ALL your home devices, and you don't need any client side software for that. It operates as a DNS server that re routes tracking domains to a “black hole”, thus preventing your devices from connecting to those servers. It's based on software we use for our public [AdGuard DNS] servers, and both share a lot of code. [AdGuard DNS]: Getting…
read the full AdGuardHome overview →
About dns.toys
dns.toys is a DNS server that takes creative liberties with the DNS protocol to offer handy utilities and services that are easily accessible via the command line. For docs, visit www.dns.toys Sample commands Running locally Docker Or using docker compose: From source Clone the repo Copy config.sample.toml to config.toml and edit the config Make sure you have a copy of the cities15000.txt file at the root of this directory (instructions are in the config.sample.toml file) Make sure to download the wordnet from Wordnet website.(more instructions are in the config.sample.toml file) Extract the tarball and rename…
read the full dns.toys overview →
More in Infrastructure & Operations
Related comparisons
More Networking & Connectivity projects
Compare either of these against the rest of the Networking & Connectivity field.
Frequently asked questions
Is AdGuardHome or dns.toys more popular?
AdGuardHome has 38,356 GitHub stars and dns.toys has 2,833. AdGuardHome has the larger community by that measure.
Are AdGuardHome and dns.toys free?
Both are open source. AdGuardHome is licensed under GPL-3.0 and dns.toys under MIT. Neither carries a licence fee.
What is the difference between AdGuardHome and dns.toys?
AdGuardHome is written in TypeScript and dns.toys in Go. The practical differences are community size, licence terms, language stack and release cadence — all compared in the table above.
Which should I choose, AdGuardHome or dns.toys?
Choose AdGuardHome if you want the larger community (38,356 stars) or its GPL-3.0 licence terms. Choose dns.toys if its feature set, stack or MIT licence fits better. Both are self-hostable.