blocky is a free, open-source DNS proxy for network-wide ad and tracker blocking. See features, self-hosting setup, and how it compares to alternatives.
blocky is a free, open-source DNS proxy and ad-blocker written in Go, maintained on GitHub as a volunteer project with no company or commercial backing. It runs as a self-hosted service on a local network and blocks ads, trackers, and malware domains at the DNS level for every connected device.
Because it intercepts DNS requests directly rather than filtering inside a browser, blocky blocks unwanted content across an entire network at once, including apps, smart TVs, and IoT devices that browser extensions cannot reach.
blocky supports domain-based blocklists, deep CNAME inspection to catch cloaked tracking domains, and IP-based blocking. It supports encrypted DNS protocols including DNS-over-HTTPS, DNS-over-TLS, and DNS-over-QUIC, as well as DNSSEC validation.
Query logging can be written to CSV files or to a database such as MySQL, PostgreSQL, MariaDB, or TimescaleDB, and blocky exposes Prometheus-compatible metrics for integration with monitoring dashboards like Grafana.
blocky is free and open source with no paid tiers, subscriptions, or commercial support plans. It is typically deployed via Docker or as a standalone binary and configured through a YAML file, so the only cost is the hardware or hosting used to run it.
Yes, blocky is completely free and open source with no paid tiers or subscriptions.
Yes, blocky is a self-hosted DNS proxy that you run on your own server, Raspberry Pi, or NAS; there is no managed cloud version.
Both are self-hosted DNS ad blockers, but blocky is written in Go and adds features like deep CNAME inspection and native support for encrypted DNS protocols such as DoH, DoT, and DoQ.
No, blocky states it collects no telemetry and shares no data with any third party.