The free ngrok alternative
with custom domains

Expose localhost on your own domain - even on the free plan. Automatic HTTPS, no credit card, no random subdomains that change every reconnect.

1 custom domain free No credit card required HTTPS by default Persistent from $2/mo
$ tunnelto add staging.acme.dev 3000
Tunnel created: https://staging.acme.dev -> 127.0.0.1:3000
SSL certificate will be automatically provisioned on first request.
Quick answer

tunnelto is a free ngrok alternative that includes 1 custom domain on every plan, including Free. Point any domain you own at your tunnel and tunnelto handles DNS verification, automatic HTTPS certificates, and routing. Your URL stays stable across reconnects, and no credit card is required to sign up.

Why do developers switch from ngrok?

Stable URLs that don’t reset

ngrok’s free tier gives you a random *.ngrok-free.app subdomain that changes every time you reconnect. Webhook configurations, OAuth redirect URIs, and bookmarks all break. tunnelto lets you bring your own domain on the free plan, so your URL stays the same forever.

Custom domains without paying

ngrok charges for custom domains. tunnelto includes 1 custom domain on every plan, including Free. Point any domain you already own at your tunnel and we handle DNS verification, certificate issuance, and routing.

No credit card to start

Sign up with email. Get a tunnel running in under a minute. We don’t ask for payment information until you actually need a paid plan.

Predictable pricing

$2/month for persistent tunnels with a custom domain. $10/month for the Plus plan with no speed limits. No per-request fees, no surprises. ngrok’s pricing starts higher and scales faster.

tunnelto vs ngrok.

Side by side, on the things developers care about.

tunnelto Free ngrok Free
Custom domain 1 included × Paid only
Stable URL across reconnects Your domain × Random each run
HTTPS by default
Credit card to sign up Not required Not required
Built-in tunnel auth Bearer + Basic Paid plans
Static content hosting ×
Persistent tunnels (cheapest paid) $2 / month From $8 / month

Compared on publicly documented features as of April 2026.

Common questions.

Is tunnelto really free?

Yes. The Free plan is $0 forever and includes 1 custom domain, 1 GB of bandwidth per month, unlimited 1-hour tunnels, automatic HTTPS, and unlimited requests. No credit card is required to sign up.

How does tunnelto compare to ngrok’s free tier?

ngrok’s free tier gives you a random *.ngrok-free.app subdomain that changes every time you reconnect. tunnelto’s free tier lets you bring your own domain. Point any domain you own at your tunnel and tunnelto handles DNS verification and certificate issuance automatically. The result: a URL that doesn’t break webhooks, OAuth callbacks, or shared previews.

Can I migrate from ngrok to tunnelto?

Yes. Install tunnelto, point your existing domain (or grab a fresh one) at the tunnel, and update any webhook URLs in Stripe, GitHub, or wherever else you’d configured an ngrok URL. Most users migrate in under 10 minutes.

Related: Test Stripe webhooks on localhost · Expose localhost on a custom domain · All tunnelto features

Stop fighting random subdomains.

Get a public HTTPS URL on your own domain in under a minute. No credit card required.

Create your free account