Custom Short Domain Not Working? The DNS Mistakes We See Most

Most branded short domains that fail never finish DNS setup. The mistakes we see most often, from a proxied CNAME to a record on the wrong host, and how to fix each one.

· Written by the team that runs Track Link

Short answer

A custom short domain that won't work almost always has a DNS problem: the CNAME record is missing, sits on the wrong name, has a typo in the target, or is hidden behind Cloudflare's proxy. For Track Link, add a CNAME on a subdomain such as go.example.com pointing to cname.gettrack.link, set it to DNS only if your DNS is on Cloudflare, and the dashboard picks it up and issues the certificate on its own.

You added go.yourbrand.com, created a DNS record, and the dashboard still says it's waiting. Or it verified, and the links still don't open. Usually the problem is in the DNS record, and the same few mistakes come up again and again. This guide covers them in the order worth checking.

What a working setup looks like

Before hunting for the mistake, here's the target:

  • A subdomain, such as go.example.com or link.example.com. Your main website stays on example.com and keeps working.
  • One CNAME record on that subdomain, pointing to cname.gettrack.link. Nothing else on the same name.
  • Nothing more to do in Track Link. The domain card checks for your record, issues an HTTPS certificate once it sees it, and moves through DNS, SSL and Live by itself. The certificate usually takes a few minutes. You don't have to come back and press Verify.

For some DNS hosts the domain card also shows a Set up automatically button. It sends you to your DNS host, you approve the record, and it's added for you. If you see that button, it's the quickest way to avoid every mistake below. The custom domain docs have step-by-step instructions for manual setup at common hosts.

First, check what the internet actually sees

Your DNS host's screen shows what you typed. A lookup shows what the rest of the world gets. On a Mac or Linux terminal, run:

dig CNAME go.example.com +short

  • It returns cname.gettrack.link. (with a trailing dot): the record is right. Give the dashboard a few minutes.
  • It returns nothing: the record doesn't exist on that name yet, it hasn't spread, or Cloudflare's proxy is hiding it.
  • It returns something else: there's a typo in the target, or another record is answering for that name.

No terminal? Any online DNS lookup tool does the same job: ask for the CNAME record of your full subdomain. Track Link's domain card also shows "Currently points to" with whatever it finds.

The mistakes we see most

1. Cloudflare's proxy is on (error 1014)

If your DNS is on Cloudflare, every record has a proxy switch: an orange cloud (proxied) or a grey cloud (DNS only). With the proxy on, Cloudflare answers lookups with its own addresses, so the CNAME is invisible to everyone else, including us. Visitors can also get Cloudflare error 1014, "CNAME Cross-User Banned". Cloudflare blocks a proxied record that points at a hostname in a different Cloudflare account unless the service on the other end has set your domain up, and that only happens once we can confirm the domain is yours.

Fix: set the record to DNS only. If you need the proxy on, keep the CNAME and also add the TXT record the domain card shows under "Your DNS is proxied through Cloudflare?". That proves the domain is yours without us seeing the CNAME.

2. The domain typed twice

Many DNS hosts add your domain to whatever you type in the name or host field. Type go.example.com there and you create go.example.com.example.com, which nobody will ever look up.

Fix: if your host appends the domain, enter only go. If you're not sure, save it and look at how the record is listed afterwards, or run the lookup above.

3. A CNAME on the root domain

DNS rules don't allow a CNAME on a root domain such as example.com, because the root already holds other records a CNAME can't sit next to. Some hosts refuse the record. Others accept something that doesn't behave like a CNAME, and the lookup never matches.

Fix: use a subdomain. Our setup is built for one, and it keeps your main site safe from a link-tool change.

4. An old record on the same name

A name that has a CNAME can't also have an A, AAAA or second CNAME record. If go.example.com used to point at an old shortener or a parked page, that record may still be answering.

Fix: delete every other record on that exact name, then add the CNAME.

5. A typo in the target

cname.gettrack.com, gettrack.link without the cname part, a stray space, or an https:// in front. Each one points somewhere that isn't us.

Fix: copy the target from the domain card instead of typing it. It should read exactly cname.gettrack.link.

6. CAA records that block the certificate

A CAA record lists which certificate authorities may issue certificates for your domain. If your domain has one and it doesn't allow the authority used for your short domain, DNS checks out but the certificate never arrives. The domain card shows "SSL validation failed" with the reason.

Fix: ask whoever manages your DNS to allow certificates for the subdomain, then press Retry SSL.

7. Waiting on cached DNS

Every DNS answer carries a TTL, a time resolvers may keep it. If the name pointed somewhere else before, some resolvers keep the old answer until it expires. Most changes show up within minutes; occasionally they take up to 48 hours.

Fix: if the lookup already shows the right target, wait. Deleting and re-adding the record won't speed it up.

What you seeLikely causeWhat to do
Lookup returns nothingRecord missing, wrong name, or proxiedCheck the name field; set Cloudflare to DNS only
Lookup returns another targetTypo or an old record on the nameCopy the target; delete other records
Cloudflare error 1014Proxied record not set up on our side yetDNS only, or add the TXT record
SSL validation failedA CAA record blocking the certificateAllow the certificate, then Retry SSL
Worked, then stoppedRecord deleted, domain expired, nameservers movedRenew the domain and restore the record

When it worked, then stopped

If a short domain worked for months and suddenly doesn't, check these three things first:

  • The domain expired. Every link on it goes dark at once. Renew it and turn on auto-renew; printed QR codes on that domain depend on it.
  • The nameservers moved. Someone moved the domain to a new DNS host and didn't copy every record. Add the CNAME again at the new host.
  • Someone deleted the record while tidying DNS. Track Link checks verified domains every day and marks a domain as not verified when it stops pointing to us, so the domain card shows it.

Verified, but links still don't behave

  • The bare domain shows a simple page. Opening go.example.com with nothing after it shows a small branded landing page, because links live at their own addresses. To send that visit somewhere, set a Redirect URL in the domain's Landing Page Settings.
  • A link says it doesn't exist. A link only opens on a domain in the same workspace. A link made in another workspace shows "not found" there, by design.
  • The domain won't verify past DNS. If you're already at your plan's domain limit, it stays unverified until you remove one or upgrade. The Free plan includes 1 custom domain; see pricing for the rest.
  • Visitors see a brief notice first. On the Free plan, links on your own domain show the same brief Track Link notice as our default domain before redirecting. Paid plans redirect instantly.

To see exactly where a link sends people, paste it into the redirect checker.

A checklist before you ask for help

  1. The domain is a subdomain you own, and its registration is current.
  2. There is one CNAME on that exact name, and no A, AAAA or other CNAME next to it.
  3. The target reads exactly cname.gettrack.link, copied from the domain card.
  4. On Cloudflare, the record is DNS only, or the TXT record from the domain card is in place.
  5. A DNS lookup for the subdomain returns cname.gettrack.link.
  6. If the card says SSL validation failed, any CAA records allow the certificate, then Retry SSL.

If all six check out and the domain is still stuck, contact support with the domain name and what the lookup returns, so we can see what you see. Once it's live, our guide to custom domain link tracking covers using it across your links and printing QR codes on it.

Questions people ask

Why is my CNAME not verifying?

Usually the record is missing, sits on the wrong name, has a typo in the target, or is proxied through Cloudflare, which hides it from lookups. Run dig CNAME on your subdomain: for Track Link it should return cname.gettrack.link.

What is Cloudflare error 1014?

Error 1014 (CNAME Cross-User Banned) means a proxied Cloudflare record points at a hostname in another Cloudflare account that hasn't set your domain up yet. Switch the record to DNS only, or keep the proxy on and add the TXT record Track Link shows so the domain can be verified.

Can I use my root domain as a short domain?

We recommend a subdomain such as go.example.com, and our setup is built around one. Plain DNS doesn't allow a CNAME on a root domain next to the records it already has, and a subdomain keeps your main website out of the way.

How long does custom domain setup take?

Once the record is live, Track Link usually sees it within minutes, and the certificate takes a few minutes more. DNS changes can occasionally take up to 48 hours to reach everyone.

Do I need to set up SSL for my short domain?

No. Track Link issues and renews the HTTPS certificate automatically once your CNAME points to us.

See it on your own links

Track Link is free to start: sign in with Google or Microsoft, no credit card.