FeaturesGuidesDocumentationPricingGet Started

Is Cloudflare Tunnel Overkill for Local Dev?

When a simple npm tunnel beats cloudflared for webhook testing, OAuth, and quick localhost sharing.

The common frustration

Developers on Reddit and forums often report Cloudflare Tunnel feels heavy for simple local dev tasks:

For "I just need a URL for this webhook test," that is a lot of ceremony.

When Cloudflare Tunnel makes sense

| Scenario | Use Cloudflare | |----------|----------------| | Permanent staging environment | Yes | | Production service behind CF WAF | Yes | | Custom domain on your zone | Yes | | Team-shared named tunnel | Yes | | Internal service exposed long-term | Yes |

When a simple tunnel is enough

| Scenario | Simple tunnel (LocalToLink) | |----------|----------------------------| | Test a Stripe webhook once | Yes | | OAuth callback during app development | Yes | | Share localhost with client for 30 min | Yes | | Mobile responsive testing via QR | Yes | | CI script needs a temporary public URL | Yes |

npx localtolink --port 3000

No account. No config file. Public URL in seconds.

Setup time comparison

| Step | LocalToLink | Cloudflare Tunnel | |------|-------------|-------------------| | Create account | Skip | Required | | Install tool | npx (cached) | Download cloudflared | | Configure | None | Tunnel config / quick tunnel | | Get URL | Immediate | Immediate (quick tunnel) | | Custom domain | v1.5 Pro | Available now |

Quick tunnels (cloudflared tunnel --url) are comparable in speed — but you still need the binary and often a Cloudflare account for anything beyond ephemeral testing.

The pragmatic approach

Use the simplest tool that works:

  1. Quick dev task → LocalToLink or similar
  2. Need request inspection → ngrok
  3. Production ingress → Cloudflare Tunnel
  4. Free custom subdomain, accept flakiness → localtunnel

LocalToLink trade-offs

We are honest about what we do not replace:

See LocalToLink vs Cloudflare Tunnel for the full comparison.

Try it now

Start a tunnel from your project directory — no account required.

$ npx localtolink

See the full CLI reference for flags and exit codes.

LocalToLink CLI 1.0.1 — verified 2026-09-05