Skip to content

Custom domains

By default your share links look like app.openpartner.dev/r/coherence/keithf — functional but not branded. With a custom domain set up, they become share.you.com/r/coherence instead. Same tracking, your domain.

This is the Dub Partners “Dub Links” pattern: the domain identifies you, each path under it identifies which brand you’re promoting.

Setting it up

Settings → Custom domains → Add domain.

1. Pick a subdomain

Use a subdomain like share.yourbrand.com, links.yourbrand.com, or go.yourbrand.com. Bare-domain CNAMEs aren’t reliable at most DNS providers — most providers only allow CNAMEs on subdomains.

If you really want a bare domain like link.cool (a single-word .link TLD), you’ll need your DNS provider to support ALIAS / ANAME records, or use Cloudflare’s CNAME-flattening.

2. Add the DNS records

After adding the domain, the panel shows two records you need to add at your DNS provider:

  • TXT at _openpartner.<domain> with value openpartner-verify=<token> — proves you control the domain
  • CNAME at <domain> pointing to router.openpartner.dev — sends traffic to our edge

Add them, wait for DNS propagation (usually 1–5 minutes), then click Verify.

3. Verify

Click Verify in the panel. We DNS-lookup the TXT record and check the token matches. On success, status flips to Verified ✓.

The CNAME doesn’t need to be in place at verify time, but it does need to be there before share links work. We don’t gate verify on the CNAME — you can verify ownership with TXT, then add the CNAME.

4. HTTPS is automatic

Once your CNAME points at router.openpartner.dev and the TXT verification is done, HTTPS works without any extra setup. The router auto-provisions a Let’s Encrypt cert on the first request to your domain and renews it before expiry. No Cloudflare proxy required.

First click on a freshly-added domain may be slightly slower (~1s) while the cert is issued; subsequent requests serve instantly from cache.

Using it

Once verified + DNS propagated:

  • Visit Network → Share links → all your share URLs now use your custom domain
  • Already-emailed share URLs (using the openpartner default) keep working forever — no need to re-email anyone
  • Add your custom domain to your bio links + new posts going forward

You can have multiple verified domains (e.g. one main + one for a rebrand transition). Share URLs are generated against your first-verified domain; older URLs on previously-added domains keep working as long as those domains stay verified.

Removing a domain

Custom domains → [domain] → Remove. Effects:

  • Share URLs immediately revert to the openpartner default
  • The router stops accepting clicks on <your-domain>/r/... (Caddy refuses TLS handshake)
  • Already-shared links pointing to the removed domain start failing

So: remove only after switching every channel over to a different domain (or accepting the openpartner default).

Why bother

Three reasons:

  1. Branding — your audience sees your domain, not ours
  2. Trust — links from share.you.com get clicked at higher rates than links from app.openpartner.dev
  3. Migration safety — if you ever leave the OpenPartner Network, your URL didn’t change for the audience (we keep the openpartner default working for export/migration scenarios)