Expose localhost on
your own custom domain

Point any domain at your local server and get automatic HTTPS. tunnelto handles DNS verification and certificates for you. Free plan, no credit card.

1 custom domain free Automatic TLS Wildcard DNS Works with any registrar
$ tunnelto add api.mycompany.com 8080
CNAME record detected
DNS verified
Certificate issued (Let’s Encrypt)
Tunnel active: https://api.mycompany.com

Why your own domain matters.

Stable URLs across reconnects

Random tunnel subdomains break webhook configurations, OAuth callbacks, and any URL you’ve shared with a teammate. With your own domain, the URL is yours forever. Reconnects, restarts, and reboots don’t change it.

Professional-looking previews

Sharing preview.acme.com with a client looks more credible than a 30-character random subdomain. Whether it’s a demo, a stakeholder review, or a job interview, your own domain says “this is real.”

No vendor lock-in

If you ever decide to move off tunnelto, your URL stays the same. You just point the CNAME somewhere else. Compare that with random *.somevendor.com URLs, where every link in your project becomes a migration headache.

OAuth and SSO providers prefer it

Many OAuth providers reject random tunnel subdomains as redirect URIs. Custom domains pass their checks. Set up a Google or GitHub OAuth app once, and you’re done.

Three steps to a custom domain tunnel.

1

Add the domain

Run tunnelto add api.mycompany.com 8080. tunnelto returns a CNAME target for you to add at your DNS provider.

2

Add one CNAME record

Open your DNS provider (Cloudflare, Route 53, Namecheap, etc.) and add a CNAME for the subdomain pointing to the tunnelto target.

3

You’re live

tunnelto detects the DNS change, issues a TLS certificate via Let’s Encrypt, and starts routing traffic. Usually takes under a minute.

Custom domains by tier.

Most other tunneling tools gate custom domains behind a paid plan. We don’t.

tunnelto ngrok Cloudflare Tunnel localhost.run
Custom domain on free 1 included × Cloudflare DNS only ×
Works with any registrar Paid only Cloudflare DNS required ×
Wildcard DNS Paid only ×
Automatic TLS
Cheapest persistent custom domain Free From $8 / month Free (Cloudflare account) From $3.50 / month

Compared on publicly documented features as of April 2026.

Common questions.

Can I expose localhost on a custom domain for free?

Yes. tunnelto’s Free plan includes 1 custom domain at no cost. Point any domain you own at your tunnel and tunnelto handles DNS verification, certificate issuance, and routing automatically. Most other localhost tunneling tools gate custom domains behind a paid plan.

How does the DNS setup work?

When you add a custom domain, tunnelto gives you a CNAME target. You add one CNAME record at your DNS provider pointing your subdomain at that target. tunnelto detects the DNS change automatically and issues a TLS certificate via Let’s Encrypt. The whole process usually takes a few minutes.

Do wildcard domains work?

Yes. tunnelto supports wildcard DNS for custom domains, so you can route any subdomain (e.g., *.dev.acme.com) to your local server. Useful for multi-tenant testing and previewing branches as separate subdomains.

What if I don’t own a domain?

You can use a free *.tunnelto.me subdomain on any plan, no domain purchase required. Custom domains are an option, not a requirement.

Get a tunnel on your own domain.

One CNAME record. Automatic HTTPS. Free plan, no credit card required.

Create your free account