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
Tunnel created: https://api.mycompany.com -> 127.0.0.1:8080
SSL certificate will be automatically provisioned on first request.
Quick answer

Yes, you can expose localhost on your own custom domain for free. tunnelto’s Free plan includes 1 custom domain. Add two DNS records at your registrar (one TXT to prove ownership, one wildcard A record), and tunnelto issues a Let’s Encrypt certificate automatically on the first request. Works with any domain registrar.

Why does your own domain matter?

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 your domain in the dashboard

Open the Domains section in the tunnelto dashboard and add the parent domain (e.g. mycompany.com). The dashboard shows the exact DNS records to add at your registrar.

2

Add the DNS records

Add a TXT record at _tunnelto-verify.mycompany.com to prove ownership, and a wildcard A record at *.mycompany.com pointing at the IP shown in the dashboard. tunnelto checks both automatically every five minutes, or click Verify DNS to check immediately.

3

Create the tunnel

Run tunnelto add api.mycompany.com 8080. The first incoming request triggers Let’s Encrypt to issue a real certificate, and renewals happen automatically in the background.

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 in the dashboard, you get two records to add at your DNS provider:

  • A TXT record at _tunnelto-verify.yourdomain.com with a token shown in the dashboard. This proves you own the domain.
  • A wildcard A record at *.yourdomain.com pointing at the tunnelto server IP shown in the dashboard. This lets tunnelto serve any subdomain under your domain.

tunnelto checks both records automatically every five minutes, or you can click Verify DNS in the dashboard to check immediately. Once verified, certificates are issued automatically by Let’s Encrypt on the first request to each tunnel.

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.

Related: Free ngrok alternative · Test Stripe webhooks on localhost · All tunnelto features

Get a tunnel on your own domain.

Two DNS records. Automatic HTTPS. Free plan, no credit card required.

Create your free account