Set up a custom domain
Use your own short domain (links.yourbrand.com) instead of bnkl.me. Cloudflare DNS, Vercel SSL, end-to-end in about 5 minutes.
Custom domains are a Pro feature. You'll need a subdomain you control, usually something like `links.yourbrand.com` or `go.yourbrand.com`. We handle the routing and SSL; you handle one DNS record.
Step 1: Add the domain in BlinkLink
- Sign in to a Pro account.
- Open Settings → Custom domain.
- Type your subdomain (e.g. links.yourbrand.com) and hit Add domain.
- The card now shows a TXT record you'll add to DNS in the next step.
Step 2: Prove ownership via TXT
In your DNS provider (Cloudflare, Namecheap, Route 53, any of them), add a TXT record:
Type: TXT
Host: links (or _bnkl-verify.links, both work)
Value: bnkl-verify=<long-token-from-the-UI>
On Cloudflare specifically: set Proxy status to DNS only (grey cloud). TXT records aren't proxiable anyway, but be explicit.
Wait ~30 seconds for propagation, then hit Verify ownership in the BlinkLink UI. The card flips to "Verified · SSL: provisioning" and the TXT step is replaced by the CNAME step.
Step 3: Route traffic to us via CNAME
Add a second DNS record so visitor traffic actually reaches BlinkLink:
Type: CNAME
Host: links
Target: cname.vercel-dns.com
Cloudflare: again, set Proxy status to DNS only (grey cloud). Vercel's SSL pipeline needs to see the request directly to issue the cert via HTTP-01.
If you've moved BlinkLink to Cloudflare Pages instead of Vercel, use Cloudflare's Custom Domain UI under the Pages project; CF handles DNS + SSL in one step.
Step 4: Wait for SSL
Vercel auto-provisions a Let's Encrypt cert via HTTP-01 within 30-60 seconds of seeing the CNAME. You can poll the Settings → Custom domain card; ssl_status flips from provisioning to ready once it's live.
Step 5: Smoke test
Create a link with slug `hello` in your dashboard, then visit:
https://links.yourbrand.com/hello
Should redirect to the long URL. Other people's slugs on your domain return 404; the redirect handler scopes look-ups to the domain owner, so slug namespaces are per-tenant. Free side effect: you can use "foo" as a slug even if someone else already has "foo" on bnkl.me.
Common gotchas
- Verify failing after 5+ minutes: your DNS provider's TTL hasn't dropped yet. Wait one more minute, then re-verify.
- Vercel says "invalid configuration": your CNAME is still proxied through Cloudflare (orange cloud). Switch to grey cloud.
- 526 / 525 SSL errors: Cloudflare is in front of Vercel before Vercel's cert was issued. Wait 60s after the CNAME goes live; grey-cloud forces the direct connection.
- Want to swap the domain later? Remove and re-add. There's no in-place edit; the TXT verification token is per-row.