Skip to content

Managed tracking domain

One CNAME, and the script serves from your own domain. No server needed.

When to use this

If your site has a server or a host with rewrite support, use rewrites instead. They are simpler and there is nothing to expire. This page is for sites that cannot do that: plain static hosting, a site builder, or anywhere you do not control the routing.

The result is the same either way. The script is served from your own domain, so an ad blocker cannot tell it apart from your own files and a Content Security Policy already allows it.

It is a subdomain, not your domain

You give us a subdomain: a spare address under your domain that nothing else uses. Something like t.yoursite.com or e.yoursite.com. Your website carries on living at yoursite.com exactly as before, completely untouched.

Never point yoursite.com itself at us. That address is where your actual website lives, and redirecting it would send your whole site to our servers. Your site would go offline. This is why we reject anything that is not a subdomain.

Avoid the words analytics, stats, tracking, metrics and our own name in the subdomain. Blocklists match on those, which would undo the entire point. A single letter is ideal.

Setting it up

  1. 1
    Add the domain in settingsOpen your project settings, go to Tracking domain, and enter the subdomain you want, for example t.yoursite.com. We register it and show you a CNAME record.
  2. 2
    Add the CNAME with your DNS providerWherever your domain is managed, add a CNAME record with the name and value we show. That is usually Cloudflare, Namecheap, GoDaddy, Route 53 or your registrar. If your provider offers a proxy toggle, as Cloudflare does with the orange cloud, leave it off.
  3. 3
    Press Check DNSWe confirm the record has propagated, then confirm the script really serves over HTTPS from your hostname. Both have to pass before it goes live, because DNS can resolve while the certificate is still being issued. It is usually a few minutes and occasionally up to an hour.
  4. 4
    Update your script tagOnce it says Live, copy the script tag we show and replace the old one. Nothing else changes: events follow the script, so they start arriving through your hostname automatically.
The tag afterwards
<script defer src="https://t.yoursite.com/t.js" data-key="YOUR_KEY"></script>

There is no second setting for where events go. The tracker reads its own src and sends events to the same hostname, so a tag pointing at your domain both loads and reports through your domain.

If it does not go live

What you seeWhat to do
Not resolving yetThe CNAME has not propagated. Wait and press Check DNS again. Up to an hour is normal.
Stuck waiting for the certificateDNS is right and the certificate is being issued. This takes a minute or two on its own.
Cloudflare usersTurn the orange cloud off for this record. Proxying it through Cloudflare stops us from validating the hostname.
A CNAME already exists for that nameYou cannot have two. Remove the old one, or pick a different subdomain.
Still blocked after going liveThe subdomain probably contains a word blocklists match. Remove it and set one up under a plainer name.

Removing it

In Tracking domain, press Remove this domain. Then change your script tag back to our domain, and delete the CNAME record at your DNS provider.

Change the script tag before deleting the DNS record. A tag still pointing at a hostname that no longer resolves records nothing at all, and there is no error on the page to tell you.

NextNothing is showing upFour checks, in the order that rules out the most at each step.