WWebBuddyMarketplace
Using LinkNest

Custom domains

Let creators serve their page at the root of their own domain - who can, the DNS records, verification, and the HTTPS work you need to do on your proxy.

3 min readUpdated Oct 17, 2026Applies to LinkNest 1.0.0

On this page

A creator whose plan includes custom domains can put their page on their own domain, such as links.studio.com. Visitors to that domain see the page at /, and the studio's share link, QR code and business card switch to it.

LinkNest verifies ownership of the domain through DNS. It does not obtain certificates: HTTPS for each creator's domain is your proxy's job.

Who can use it

Any page whose plan includes the custom_domain feature key: Pro and Premium as created by the migrations. The server checks the key when a domain is saved or verified, and again whenever the domain is visited. Pages without it see "Pro and Premium can put the page on your own domain" and a link to the pricing page.

If a page moves to a plan without the key, its verified domain stops showing the page until the plan includes the key again. The domain stays saved.

Setting it up (creator)

  1. In Settings → Custom domain, enter the hostname and choose Save domain. The status becomes Waiting on DNS and a verification token is shown.

  2. At the DNS host, add:

    Type Name Value
    TXT _linknest-verify.links.studio.com linknest-verify=<token>
    CNAME links.studio.com Your platform's hostname (the value of VITE_PUBLIC_HOSTNAME)

    The TXT record can also sit on the domain itself instead of the _linknest-verify name.

  3. Wait for DNS, then choose Check DNS. When the TXT record is found the status becomes Verified.

Warning

Rules for the hostname

  • The scheme, path, port and a trailing dot are removed, and a leading www. is dropped: https://www.studio.com/ is saved as studio.com. Requests to both studio.com and www.studio.com then find the page, provided both reach your server.
  • Your own platform host, localhost, *.vercel.app and *.localhost cannot be claimed.
  • A domain can belong to one page only.
  • A root domain (studio.com) cannot have a CNAME at most DNS hosts. Use an A record to your server's IP, or your DNS host's ALIAS or flattening feature.

Only the TXT record is checked. The CNAME is used for a hint in the error message ("CNAME is on. Add the TXT record...").

What visitors get

On a verified domain:

  • / shows the creator's page, and /u/<username>/... addresses work too.
  • Every other path (the studio, pricing, sign-in) is sent back to the platform host by the browser.
  • Visits are counted in the creator's Insights like any other.

The domain stays verified until the creator removes it. LinkNest does not re-check DNS later, but it does check the plan on every visit.

HTTPS for custom domains

Each creator's domain needs a certificate on whatever terminates TLS for you, and the request must reach LinkNest with the original Host header.

On a VPS with Caddy

The simplest safe approach is to list each verified domain:

Caddyfile
links.example.com, links.studio.com, studio.com, www.studio.com {
  reverse_proxy 127.0.0.1:3000
}

Reload Caddy after adding a domain. Caddy's on-demand TLS can issue certificates automatically for any host that reaches it, but only use it with an ask endpoint that approves known domains; LinkNest does not ship such an endpoint, so you would have to write one (it could look up profiles.custom_domain where domain_status = 'verified').

On a VPS with nginx

Add the domain to a server_name line and issue a certificate for it, for example with certbot --nginx -d links.studio.com. Use the same proxy_set_header Host $host; as in Installation.

On Coolify or Vercel

Add the creator's domain to the application (Coolify) or the project (Vercel). Both then issue the certificate.

Removing a domain

Remove in Settings → Custom domain clears the domain and its token immediately. The page goes back to its /u/<username> address for sharing. Remove the hostname from your proxy as well.