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
DNS verified
Certificate issued
Tunnel active: https://staging.acme.dev

Why 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.

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