Quick answer

Headscale replaces Tailscale’s coordination server with one you run. Use a publicly reachable host and HTTPS on port 443 for production. An existing home server can qualify; an off-site host can reduce shared outage risk. A new VPS or domain purchase is optional. Most homelabs can keep free Tailscale.

By LK Wood IV · Published 2026-08-15 · Updated 2026-09-08 · ~8 min read · St. Louis County, MO

If you already have a home server, Headscale can run there when clients can reach it. The decision is whether sharing the homelab’s power and internet connection fits your recovery needs.

Headscale’s requirements ask for public reachability and recommend HTTPS on port 443 for production. A connection behind CGNAT may need another way to provide that reachability. A suitable home connection can qualify, with the shared power and uplink risks that come with it.

Choose an existing reachable host or an off-site host around those reliability needs. A small VPS is one way to separate the coordination server from the homelab; buying one is optional.

Before spending money, decide whether free Tailscale already covers your needs.

First, the case against doing this

Tailscale’s free Personal plan covers up to 6 users with unlimited user devices, 3 ACL groups, and access to nearly all features. It costs nothing and it is explicitly intended for homelabs and personal projects.

Read that against your actual situation. One person, a NAS, a Proxmox host, three VMs, a laptop and a phone? You are not close to a limit. There is no bill coming. Headscale would replace a working, maintained, zero-cost service with one you patch, back up, and get paged about.

I want to be blunt, because the search results for this topic are not: for the majority of homelabs, Headscale solves a problem you do not have. Running it is a hobby in its own right, and that is a completely legitimate reason to run it. It is not the same reason as necessity, and the two get blurred constantly.

Three situations where it genuinely earns the work:

You object to the metadata, not the cost. Tailscale’s coordination server knows your device names, your public keys, and who connects to what. The traffic is end-to-end encrypted and they cannot read it, but the graph is theirs. If that specific fact is what bothers you, Headscale is a direct answer and no amount of free tier fixes it.

Your structure does not fit the Personal plan. More than 6 users, or an ACL model that needs more than 3 groups, and you are looking at a paid tier. At that point the comparison is a real one.

You want the control plane to survive theirs. Existing tailnets keep passing traffic when the coordination server is unreachable, but new nodes and key rotations do not. If your tolerance for that is zero, owning the control plane is the only fix.

Everything else — “self-hosting is better,” “I want to own my stack” — is preference, and preference is fine. Just price it against a free service that already works.

What it does support

The 2026 feature list is broad, which surprised me. Node registration by web auth and pre-auth keys, MagicDNS, split DNS and search domains, tags, subnet routers, exit nodes with route filtering, dual-stack, ephemeral nodes, embedded DERP and peer relays, ACLs and grants, autogroups, Tailscale SSH, OIDC single sign-on, Taildrop and Taildrive, Funnel and Serve, network flow logs.

The documented gap worth checking before you commit: OIDC groups cannot be used in ACLs. If your plan was to point Headscale at your identity provider and let group membership drive access policy, that specific path is closed. Verify it against your intended policy now rather than after you have migrated forty nodes.

Headscale is not a Tailscale product. It reimplements a protocol it does not control, which is the standing structural risk with anything in this category and is worth naming even though the project has tracked upstream well.

The host

A control server does very little work. It coordinates key exchange and hands out routes, then gets out of the way while nodes talk directly. SQLite is the assumed database in the setup requirements, so there is no separate database tier to size.

For production, follow Headscale’s reachability requirements:

  • A server reachable through a public IP address; dual-stack IPv4 and IPv6 is recommended.
  • HTTPS on port 443, the recommended production setup for client compatibility.

An existing home server can meet those requirements when its network permits inbound access. A small VPS is another option. Check the chosen plan’s networking before relying on it.

Off-site hosting is a resilience recommendation: it separates the coordination server from the homelab’s power and uplink. That can reduce a shared dependency, but it cannot restore a home connection that has lost power or internet access. Choose the host around your recovery needs; no new hosting purchase is required if an existing host fits.

The domain

HTTPS on 443 means a certificate, and a certificate means a hostname. A subdomain on a domain you already own works fine — nothing about this needs a dedicated registration.

If an existing hostname does not meet your needs, compare domain or hosting options before installing. Set up DNS and certificate issuance for the hostname you choose. A new domain is optional.

Where this sits against the alternatives

If you have not committed yet, the comparison is worth doing properly. I have written up Tailscale against plain WireGuard, which is the real decision for most people, and Tailscale against Cloudflare Tunnel for the case where you want to publish rather than connect. NetBird against Tailscale covers the other self-hostable mesh worth a look, and it is the one I would compare Headscale to most carefully, because it was designed to be self-hosted rather than adapted to it.

If you just want remote access to your homelab today and are not attached to owning the control plane, Tailscale on a homelab takes about ten minutes. If you want no third party in the path at all, WireGuard on Proxmox is the floor: more manual, no coordination server to run, no vendor.

What I have not tested

I have not run Headscale through a Tailscale client major-version bump, which is the failure mode I would most want data on before recommending it to someone whose remote access depends on it. The project tracks upstream well by reputation. Reputation is not a measurement.

I have not tested the OIDC integration, so I cannot tell you how painful the ACL group limitation is in practice, only that it is documented.

I have not run it at a scale where SQLite is the constraint.

What getting this wrong costs

Shared power or uplink failures can make a home-hosted coordination server unavailable when the homelab needs attention. Plan how you will recover the service. An off-site host reduces that shared dependency, while adding its own cost and maintenance.

Use off-site hosting when that resilience benefit justifies the tradeoff. Reusing a reachable home server remains a valid option.

Frequently asked questions

Can I run Headscale on my home server?
Yes, if the server is publicly reachable and you configure HTTPS for clients. Headscale recommends HTTPS on port 443 for production. A home connection behind CGNAT may need another way to provide that reachability. Hosting at home also shares the homelab’s power and uplink risks; an off-site host can reduce that dependency, but it is an operational choice.
Is Headscale an official Tailscale product?
No. The project describes itself as a self-hosted, open source alternative to the Tailscale control server. It is not built or supported by Tailscale, and it tracks their client protocol rather than being tracked by it.
Do I actually need Headscale, or is free Tailscale enough?
For most homelabs, free Tailscale is enough. The Personal plan is free and covers up to 6 users with unlimited user devices, 3 ACL groups, and access to nearly all features. If you are one person with a rack of machines, you are comfortably inside that. Headscale earns its keep when you object to a third party holding your coordination metadata, when you need more than the Personal plan’s structure allows without paying, or when you want the control plane to keep working if Tailscale’s does not.
What does Headscale not do that Tailscale does?
The supported list is broad in 2026 — MagicDNS, split DNS, subnet routers, exit nodes, ACLs and grants, Tailscale SSH, OIDC single sign-on, Taildrop and Taildrive, embedded DERP, Funnel and Serve. The documented gap worth knowing before you commit is that OIDC groups cannot be used in ACLs, so if your access policy was going to be driven by identity-provider group membership, check that limitation against your plan first.
What database does Headscale use?
SQLite is the assumed backend in the setup requirements, which suits the scale most self-hosters run. Plan your backups around that file. It holds your node registrations, and losing it means re-registering every device by hand.
Does Headscale need its own domain?
A separate domain registration is unnecessary if you already have a suitable hostname. A subdomain on a domain you own can serve the HTTPS endpoint once DNS and the certificate are configured.

Sources and corrections

Last updated
Methodology
See our methodology for research and review standards.
Update log
  • 2026-09-08 — Separated Headscale reachability requirements from the optional recommendation to host off-site. Existing reachable hosts and existing-domain subdomains can satisfy the setup; a VPS or separate domain purchase is not mandatory. Primary source: Headscale reachability requirements (read September 8, 2026). No provider comparison or uptime test was added.
Corrections
Spotted an error or a stale number? Email contact@techfuelhq.com. Confirmed corrections are added to the update log above.

About the author

Written by Lowell K. Wood IV, who builds and runs TechFuelHQ from St. Louis, Missouri.