> ## Documentation Index
> Fetch the complete documentation index at: https://help.contentgrove.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Set up a custom domain for your links

> Use your own domain for branded contentgrove tracking links, so your short links match your brand instead of the default contentgrove domain.

A custom domain lets your tracking links use your own branding (for example `track.yoursite.com/abc123`) instead of a shared domain. You set this up in **Settings → Custom domain**.

<Frame caption="Walkthrough: setting up a custom domain in contentgrove">
  <iframe className="w-full aspect-video rounded-xl" src="https://www.youtube.com/embed/LZXH542X3HU" title="How to set up custom domains in contentgrove" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>

## Add a custom domain

<Steps>
  <Step title="Open custom domain settings">
    In contentgrove, go to **Settings → Custom domain**.
  </Step>

  <Step title="Enter a subdomain">
    Enter the subdomain you want to use for links, such as `go.yourdomain.com` or `track.yourdomain.com`. Use a subdomain, not your root domain (`yourdomain.com`) — your root domain should keep pointing at your main website.
  </Step>

  <Step title="Copy your DNS records">
    After you add the domain, open **DNS Config** on the domain card. contentgrove shows the exact records to add: a **TXT record** to verify you own the domain, and a **CNAME record** that routes the subdomain to contentgrove. The exact names and values are generated for your domain, so copy them from this screen.
  </Step>

  <Step title="Add the records at your DNS provider">
    Sign in to your domain provider (for example Cloudflare, GoDaddy, or Namecheap) and add the TXT and CNAME records exactly as shown, matching the type, name/host, and value for each.
  </Step>

  <Step title="Verify">
    Back in **Settings → Custom domain**, click **Verify**. Once your DNS has propagated, contentgrove confirms the domain and it becomes available for links.
  </Step>
</Steps>

### What the records look like

contentgrove generates a unique verification value and routing target for each domain, so **always copy the exact records from DNS Config in the app**. For a subdomain like `go.yourdomain.com`, they follow this shape:

| Type  | Name / Host               | Value                              |
| ----- | ------------------------- | ---------------------------------- |
| TXT   | `_contentgrove-verify.go` | `a657ffc00d52dd8e987fdacfea236ded` |
| CNAME | `go`                      | `cname.contentgrove-dns.com`       |

The TXT record proves you own the domain; the CNAME points the subdomain at contentgrove. Many providers append your root domain automatically, so enter just the **Name** shown (for example `go`), not the full `go.yourdomain.com`.

<Tip>
  Always use a subdomain like `go.yourdomain.com` rather than your root domain. This keeps your main website untouched and lets the subdomain point at contentgrove with a simple CNAME record.
</Tip>

## Use your domain on links

Once your domain is verified, select it as the **domain** when generating links in [Create links](/links/create-links#short-link-builder) or when creating a [dynamic link](/links/dynamic-links) template.

<Note>
  DNS changes can take time to propagate. If verification doesn't succeed right away, wait a little and try again.
</Note>

Need help setting it up? Contact [support@contentgrove.io](mailto:support@contentgrove.io).
