This week XDA ran a piece on bypassing Plex’s remote streaming paywall with Tailscale, and the comments thread instantly turned into something else: a long list of users frustrated by Tailscale’s quieter changes. The free-plan device cap, the way authentication funnels new accounts toward SSO providers, and the price step up to a paid seat have nudged a steady trickle of home-lab and small-team users to start shopping. The good news is that the mesh-VPN category has matured a lot, and several Tailscale alternatives are genuinely production-ready on Windows, macOS, and Linux.

We tested 7 Tailscale alternatives across a small lab (a Windows desktop, an Apple Silicon MacBook, and two Linux nodes) with the same use cases people actually run: remote SSH, file shares, self-hosted media servers, and a Plex instance behind a CGNAT. Each pick below is judged on setup time, NAT traversal reliability, identity options, and the cost of running a real deployment instead of a demo.

Quick comparison

AppBest forFree planStarting priceStandout feature
NetBirdOpen-source Tailscale-style mesh with a hosted optionYes (5 users self-hosted unlimited)Per-user paid planNative self-host parity with the SaaS UI
ZeroTierCross-platform overlay with virtual layer-2 networkingYes (up to 10 nodes)Per-user paid planLayer-2 emulation for legacy LAN apps
HeadscaleSelf-hosted control plane for the Tailscale clientYes (free, self-host only)FreeDrop-in replacement for Tailscale’s coordinator
NebulaSlack’s open-source mesh VPN focused on scaleYes (free, self-host only)FreeBattle-tested at thousands of nodes
Cloudflare Zero TrustIdentity-aware tunnels for teams already on CloudflareYes (up to 50 users)Per-user paid planNo client needed for HTTP services
TwingateZero-trust remote access with policy-first UXYes (up to 5 users)Per-user paid planResource-level policies instead of broad subnets
WireGuardDIY tunnel between two known endpointsYes (free, self-host)FreeSmallest attack surface and the kernel module everyone else is built on

Why people leave Tailscale

The free plan still works for most personal setups, but the rules around it changed quietly. Identity providers became the only path to a new account for a while, which annoyed users who just wanted a local login for a home server. The device cap on Personal was lowered, then partially restored, then bundled with Personal Plus, and the messaging has been confusing enough that several Reddit threads have been chasing what counts as a “device” all year.

There is also the SaaS dependency. Tailscale’s data plane runs over WireGuard between peers, but the control plane is hosted, which means key exchange and access policy live on Tailscale’s servers. For a home lab that is fine. For an air-gapped or compliance-bound deployment, it is a non-starter, and the only escape hatch is Headscale, which Tailscale supports but does not sell.

Pricing is the third pressure point. The jump from free to the first paid tier is steep for a two-person consulting shop, and the Personal Plus tier sits awkwardly between the free plan and the team SKU. Several small teams told us they moved off Tailscale not because the product was bad but because the cheapest non-free option cost more than self-hosting NetBird or ZeroTier on a $5 VPS.

The 7 best Tailscale alternatives for desktop

NetBird — best open-source Tailscale clone

NetBird is the closest thing to Tailscale you can fully self-host without giving up the polished web console. The architecture mirrors Tailscale’s split between a control plane (SignalServer and Management) and a WireGuard data plane, and the desktop clients on Windows, macOS, and Linux look and behave the way Tailscale users expect. The hosted plan exists for teams that don’t want to run the control plane themselves, and the self-hosted build is exactly the same code.

Where it falls short: SCIM and audit logging sit on the paid hosted plan, which matters if you need them for compliance. NAT traversal is solid in most cases, but symmetric NATs still occasionally fall back to the relay.

Pricing:

Download: netbird.io

Bottom line: Pick NetBird if you want Tailscale’s UX without giving up the option to self-host the control plane on your own VPS.


ZeroTier — best free overlay for legacy LAN apps

ZeroTier predates Tailscale by years and takes a different approach: it emulates a virtual Ethernet at layer 2, which means software that expects LAN broadcast (older file shares, some game servers, certain home automation bridges) works the way it would on a real switch. The free plan covers up to 10 nodes per network and 1 network per controller, which is enough for most home labs and small dev teams.

Where it falls short: The desktop UI is functional but dated next to Tailscale’s. Performance over high-latency links is fine for SSH and file transfer but trails WireGuard-based meshes for raw throughput.

Pricing:

Download: zerotier.com

Bottom line: Pick ZeroTier if you have an app that assumes a flat LAN, or if you want a battle-tested free tier without leaning on a hosted SaaS to relay your traffic.


Headscale — best self-hosted replacement for the Tailscale control plane

Headscale is an open-source reimplementation of Tailscale’s coordination server. The Tailscale clients on Windows, macOS, and Linux still connect, the routing and ACL semantics still hold, and you keep the polished apps without the SaaS dependency. For teams that already trust the Tailscale client but want full control of identity and policy, this is the cleanest off-ramp.

Where it falls short: No GUI for managing nodes by default. The community has built web frontends, but the official surface is the CLI. ACL syntax follows Tailscale’s HuJSON, which is powerful but has a learning curve.

Pricing:

Download: github.com/juanfont/headscale

Bottom line: Pick Headscale if you like the Tailscale client and want to keep it, but you cannot or will not depend on Tailscale’s hosted servers.


Nebula — best mesh VPN built for scale

Nebula came out of Slack and was built for the kind of node counts Slack itself ran. The certificate-based identity model and the focus on host-to-host policy make it a better fit for fleets of servers than for a desktop user dragging a laptop between coffee shops. Performance is excellent on Linux, and the macOS and Windows clients have caught up over the past year.

Where it falls short: Setup is more involved than Tailscale or NetBird. You generate a CA, sign host certificates, and edit YAML. There is no hosted control plane to lean on, and the UI story is “use the CLI”.

Pricing:

Download: github.com/slackhq/nebula

Bottom line: Pick Nebula if you are wiring servers together at scale and you want a mesh that has been proven in production at one of the largest deployments in the wild.


Cloudflare Zero Trust — best identity-aware tunnels for teams

Cloudflare Zero Trust (formerly Cloudflare Access plus Tunnel) approaches the problem from the application side rather than the network side. Instead of a mesh between all peers, you publish individual services through a Cloudflare Tunnel, then put identity and policy in front of each. For HTTP services, users don’t install a client at all, which is the right answer for teams that have to support contractors and partners.

Where it falls short: It is not a peer-to-peer mesh. The traffic goes through Cloudflare’s edge, which is fine for browser apps but adds latency for SSH-style use. The free plan caps users at 50 but starts limiting features that small teams actually use.

Pricing:

Download: cloudflare.com

Bottom line: Pick Cloudflare Zero Trust if your shared resources are mostly web apps or APIs and you want browser-only access without a VPN client on every device.


Twingate — best policy-first remote access

Twingate is closer to Tailscale in shape but leans harder on resource-level policy. Instead of granting access to a /24 subnet, you grant access to a specific resource by name, with conditions on identity provider attributes, device posture, and time. For ops teams that have to satisfy auditors, this maps cleanly to SOC 2 controls.

Where it falls short: No self-host option. The free plan caps users at 5 and limits resource count, which works for a side project but not a real team. Connectors require infrastructure on both ends.

Pricing:

Download: twingate.com

Bottom line: Pick Twingate if you need named-resource policy and identity-aware access for a small team, and you don’t care that the control plane is hosted.


WireGuard — best DIY tunnel between known endpoints

WireGuard is the protocol that powers most of the apps above. Used directly, it is the leanest option on the list: kernel-level on Linux, fast on Windows and macOS, with one config file per peer and nothing else to run. There is no UI and no coordination service. You handle key exchange yourself, usually through scp or a configuration tool.

Where it falls short: No NAT traversal. No discovery. No identity. If you want to add or rotate a peer, you edit every other peer’s config. This is fine for two or three endpoints; it falls apart at fifteen.

Pricing:

Download: wireguard.com

Bottom line: Pick raw WireGuard if you have a fixed set of endpoints, you like editing config files, and you want the lowest possible attack surface.


How to choose

Pick NetBird if you want Tailscale’s daily experience and the option to self-host without losing the web console. It is the most direct swap.

Pick Headscale if your team is already comfortable with the Tailscale client and the only thing pushing you away is the dependency on Tailscale’s servers.

Pick ZeroTier if you need a virtual LAN for an app that expects broadcast, or if 10 nodes on a free plan is genuinely all you need.

Pick Cloudflare Zero Trust if most of what you share is HTTP and you want browser-only access for contractors.

Pick Twingate if you have auditors asking about named-resource policy and device posture.

Stay on Tailscale if your team is small, your nodes are mostly personal devices, and the price of the Personal Plus tier fits your budget. The product is still the easiest to set up, and the polish matters when you have to onboard non-technical users.

FAQ

Is NetBird really a Tailscale alternative or just a fork?

NetBird is a separate codebase that arrives at a similar shape because both products sit on top of WireGuard. The clients are not Tailscale’s, the control plane is not Headscale’s, and the self-host build includes the same web console as the hosted plan.

Can I run Tailscale clients with Headscale?

Yes. Headscale implements Tailscale’s coordination API, so the official Tailscale clients on Windows, macOS, Linux, iOS, and Android connect to a Headscale server the same way they connect to the hosted control plane. You point them at your server URL during login.

Is ZeroTier slower than Tailscale?

Throughput is broadly comparable for one-to-one transfers. Tailscale tends to win on raw WireGuard-style streaming, ZeroTier tends to win on apps that need layer-2 broadcast. For SSH, file transfer, and media streaming on a home network, both feel the same in normal use.

What is the cheapest Tailscale alternative for a small team?

For three to five users, Cloudflare Zero Trust’s free plan covers more identity features than any of the others. For mesh-style networking on the same budget, self-hosted NetBird on a small VPS comes out cheaper than any paid Tailscale tier.

Can I run a self-hosted mesh VPN behind CGNAT?

Yes, with a relay node on a VPS with a public IP. NetBird and Headscale both include relay logic. Nebula needs a lighthouse on a public IP. WireGuard alone won’t traverse CGNAT without a publicly reachable peer.