The best localtunnel alternatives, compared honestly
localtunnel made "one npm command to a public URL" a classic. But it's frozen at v2.0.2 since ~2021, tunnels HTTP only, and leans on the shared loca.lt server — so teams that depend on it are shopping for something maintained.
The best localtunnel alternative depends on what you liked about it. In short:
- Same free/OSS spirit, actively maintained → bore — a tiny Rust binary, free
bore.pubserver or self-host in seconds. - Free managed HTTP, auto-HTTPS → Cloudflare Tunnel — free, DDoS protection, stable named URLs.
- Tunnels inside your build & deploy platform → Buddy — ephemeral and persistent, HTTP/TCP/TLS, access control, no ports opened.
- Zero-install or UDP → Pinggy (single SSH command), or zrok / self-hosted frp for UDP.
Why teams look elsewhere
What pushes teams off localtunnel
localtunnel is genuinely handy for a quick test — but a few concrete, well-documented issues send people looking, especially for anything they rely on.
Effectively unmaintained
Frozen at v2.0.2 since ~2021, no new upstream releases, and Snyk marks maintenance inactive. The community even shipped a separate @security-patched fork to keep patching it.
HTTP only
No TCP, no TLS/raw, no UDP — so you can't expose a database, SSH, a game server, VoIP or gRPC-over-raw-TCP through it.
Flaky shared server
The public *.loca.lt server has reliability and rate-limit complaints and no SLA. When it's down, so is your tunnel — unless you run localtunnel-server yourself.
Interstitial on demos
First-time visitors to a loca.lt URL get a reminder/warning interstitial before your site loads — awkward the moment you hand a demo to a client.
No access control
No built-in auth, no IP/subnet allow-list, no custom domain on the shared server — anyone with the URL is in.
No stable URL
You get a random subdomain each run; --subdomain is best-effort on the shared server, so webhook and OAuth callbacks can churn.
The shortlist
7 localtunnel alternatives worth trying
Ranked for the common case — a secure public URL for a local or private service — then noting where each genuinely wins. No tool is best at everything.
Secure tunnels — ephemeral and persistent — built into a full CI/CD, deploy and hosting platform. HTTP/TCP/TLS, access control, no ports opened. Lighter OSS tools exist for a pure throwaway one-liner.
Free, actively maintained, with auto-HTTPS and DDoS protection on Cloudflare's edge; named tunnels give a stable URL. Best if your domain is already there. Not a general-purpose raw-TCP/UDP tunnel.
A tiny open-source (MIT) Rust binary: bore local 8000 --to bore.pub, or self-host in seconds. The same "no account, just run it" feel as localtunnel, but maintained and over raw TCP.
The most feature-complete managed tunnel: request inspector, replay, reserved domains, OAuth/mTLS. Trade-offs: a 1 GB free cap, an interstitial on demos, metered overages and no UDP.
Start a tunnel with a single SSH command — nothing to download — with UDP and unlimited bandwidth. No OAuth auth or edge load balancing yet.
Open-source on OpenZiti — self-host or use the managed free tier. UDP, a built-in file server and private sharing. Setup is more involved than a plain tunnel.
The most popular open-source tunnel (100k+ stars); HTTP/TCP/UDP, full control, no shared server, no metered bandwidth. Trade-off: you run and secure the server yourself.
Side by side
localtunnel alternatives compared
How the shortlist stacks up on the things that actually decide a tunnel — with localtunnel itself as the baseline. Buddy highlighted.
| Platform | Free tier | Maintained | Persistent URL | Protocols | Access control | Self-host | Best for |
|---|---|---|---|---|---|---|---|
| Buddy | ✓ €0 plan | ✓ | ✓ | HTTP · TCP · TLS | Basic auth · IP/UA allow-list | On-prem tier | Tunnels inside CI/CD + deploy |
| localtunnel | ✓ free/OSS | ✗ stalled ~2021 | ✗ | HTTP only | ✗ | ✓ | Quick throwaway tests |
| Cloudflare Tunnel | ✓ free | ✓ | ✓ named tunnel | HTTP(S) mainly | Cloudflare Access | ✗ | Free public HTTP on Cloudflare |
| bore | ✓ free/OSS | ✓ | Self-host | Raw TCP | Optional secret | ✓ | Minimal OSS, localtunnel spirit |
| ngrok | 1 GB · interstitial | ✓ | Paid domains | HTTP · TCP · TLS | OAuth · IP · mTLS (paid) | ✗ | Polished managed incumbent |
| Pinggy | ✓ free | ✓ | Paid | HTTP · TCP · TLS · UDP | Basic auth · IP | ✗ | Zero-install SSH one-liner |
| zrok | ✓ free tier | ✓ | ✓ reserved | HTTP · TCP · UDP | Zero-trust (OpenZiti) | ✓ | Zero-trust sharing |
| frp | ✓ free/OSS | ✓ | ✓ (you host) | HTTP · TCP · UDP | Token · you configure | ✓ | Full control, self-hosted |
Pricing models, free tiers and maintenance status change often — check each vendor/repo for current terms. Compiled July 2026 from each project's official pages.
Official pages: localtunnel · Buddy Tunnels · Cloudflare Tunnel · bore · ngrok · Pinggy · zrok · frp
Why we rank it first
What makes Buddy the strongest all-round pick
localtunnel is a single-purpose utility that's stopped moving. Buddy's tunnel is a first-class, maintained feature of the platform you already build, deploy and host with — so it does the localtunnel job and then keeps going, across HTTP, TCP and TLS, with access control built in.
Instant public URL
Expose a local service in one command — bdy tunnel HTTP … localhost:4000 — for webhooks, demos and mobile testing, just like lt --port 4000.
Persistent tunnels
Need a stable URL for a QA or staging endpoint? A persistent tunnel keeps the same address across restarts, for days or weeks — no random subdomain roulette.
Access control built in
HTTP Basic auth, IP/subnet allow-lists in CIDR notation, user-agent allow-lists and TLS certificate handling — none of which localtunnel offers.
HTTP, TCP and TLS
Not HTTP-only: tunnel raw TCP and TLS too, so databases, SSH and non-web services work — without opening ports in your firewall.
One platform, not five
Tunnels sit alongside CI/CD pipelines, remote deployments, Dev Cloud hosting and managed domains — no extra account, and actively maintained.
Free to start
The free plan includes tunnels, on a maintained platform rather than a frozen shared server. Pro is €29/mo, Hyper €99/mo with SSO.
A fair call
When localtunnel is still fine
No link tricks here — for the right job, the simplest tool wins.
localtunnel is fine if…
- You just need a throwaway HTTP URL for a couple of minutes and already have Node installed —
npx localtunnel --port 8000and you're done. - It's for a one-off local test, not something you depend on for a demo or a webhook that must stay up.
- You don't need TCP/UDP, custom domains, auth or a stable URL.
- You're happy to accept the shared
loca.ltserver's reliability and the visitor interstitial.
Consider an alternative if…
- You want the same free/OSS simplicity but actively maintained → bore.
- You need it to be reliable for demos or webhooks, with a stable URL → Cloudflare Tunnel or a Buddy tunnel.
- You need TCP/TLS/UDP for databases, SSH, game servers or IoT → Buddy, bore, Pinggy, zrok or frp.
- You want tunnels in the same place you build, deploy and host → Buddy.
Common questions
localtunnel alternatives — common questions
Is localtunnel still maintained in 2026?
Not actively. The npm package is frozen at v2.0.2 (last published around 2021) with no new upstream releases in 2025–2026, and Snyk classifies its maintenance as inactive. The community had to publish a separate @security-patched/localtunnel package to keep shipping security fixes on top of the frozen original — a clear sign the project is stalled. It still works for quick tests, but for anything you depend on, an actively-maintained tool (Cloudflare Tunnel, bore, ngrok, or a Buddy tunnel) is the safer choice.
What is the best free localtunnel alternative?
If you want to stay free and open-source in localtunnel's spirit, bore is the closest match — a tiny Rust binary you run with bore local 8000 --to bore.pub or self-host in seconds. Cloudflare Tunnel is the strongest free managed option, adding automatic HTTPS and DDoS protection (it needs a Cloudflare account/domain). Buddy's free plan includes tunnels as one pillar of a full build-and-deploy platform, so it's the best free pick if you also want CI/CD and hosting in one place.
Why do developers move off localtunnel?
The main reasons are that the project is effectively unmaintained (frozen at v2.0.2 since ~2021), it tunnels HTTP only (no TCP, TLS or UDP), and it relies on the shared loca.lt public server, which has reliability and rate-limit complaints and shows an interstitial reminder page to first-time visitors. It also has no built-in access control or guaranteed custom domain. localtunnel's virtue — free, open-source, no account — is real, so people usually switch to something that keeps that spirit (bore) or adds maintenance and features (Cloudflare Tunnel, ngrok, Buddy).
Does localtunnel support TCP or UDP?
No. localtunnel tunnels HTTP only, so it can't expose a database, SSH, a game server, VoIP or any raw-TCP/UDP service. If you need those, use bore or self-hosted frp for raw TCP/UDP, a Buddy tunnel for HTTP/TCP/TLS, or Pinggy and zrok which both support UDP.
How does Buddy compare to localtunnel for tunnels?
Buddy Tunnels give secure, encrypted access to a local or private service without opening ports, in both ephemeral (throwaway, localtunnel-style) and persistent (stable URL that survives restarts) modes. Unlike localtunnel it supports HTTP, TCP and TLS, with Basic auth, IP/subnet allow-lists (CIDR) and user-agent allow-lists built in, and it's actively maintained rather than relying on a frozen shared server. The tunnel lives inside Buddy's full DevOps platform — CI/CD, deployments, hosting, domains — so there's no separate tool to manage. Start one with bdy tunnel HTTP … localhost:4000.
What is the closest tool to localtunnel?
bore is the closest in spirit: minimal, open-source (MIT), one small binary, a free public server at bore.pub, and trivial to self-host — the same "no account, just run it" feel as localtunnel, but actively maintained and over raw TCP. The main difference is bore forwards TCP rather than adding localtunnel's HTTP conveniences, so for a browser demo you get a host:port rather than a friendly HTTPS subdomain.
How hard is it to migrate off localtunnel?
Low effort — tunnels are stateless plumbing, not data. Replace lt --port 8000 (or npx localtunnel --port 8000) with the new tool's start command, for example bore local 8000 --to bore.pub, bdy tunnel HTTP … localhost:8000, or cloudflared tunnel, then update any hard-coded public URL in webhook configs and OAuth callbacks. Persistent URLs (a Buddy persistent tunnel, a Cloudflare named tunnel) port across one-to-one so callbacks don't churn.