Point a subdomain at nod., understand who configures what, and know the limits.
A custom first-party domain serves the nod. pixel endpoint from a subdomain of your own shop, such as px.yourshop.com, instead of the shared nod. domain. This can improve delivery when a browser or extension only blocks known third-party hostnames. It is recommended, not required.
The shared endpoint continues to work for the core setup. A branded subdomain keeps the request on your own domain and avoids simple blocklists that target the shared hostname.
It is not an anti-blocking guarantee. Browsers and extensions can detect CNAME-based tracking, block scripts by behavior, or limit script-written storage. A custom domain also does not bypass consent or extend Safari's storage limits.
You do not deploy or host the pixel yourself. nod. cannot create the DNS record because the domain remains under your control.
Your custom domain has to be a subdomain — at least three dot-separated labels, like px.yourshop.com. A bare domain (yourshop.com) is rejected, because that would mean pointing your whole site's DNS at nod. instead of one subdomain.
Go to Settings → Tracking and find the custom-domain field. Enter a subdomain such as px.yourshop.com and save.
Add a CNAME record at your DNS provider pointing your subdomain at cname.vercel-dns.com. The Tracking page shows you the exact record to create.
Click Check DNS once the record is live. This is an on-demand check — nod. doesn't poll your DNS in the background, so status only updates when you click it or reload after checking.
You'll see one of these states:
If your workspace doesn't have automatic domain verification enabled, you'll get a manual flow instead: add the CNAME, and nod. confirms it once DNS propagates.
The install snippet only switches to your custom domain once the status shows verified — until then it keeps pointing at the shared nod. domain, so nothing breaks while DNS propagates. Once verified, copy the updated snippet from the Tracking page and replace the old one in your theme.
Saving a custom domain also adds its parent domain to your allowlist automatically. For px.yourshop.com, that's yourshop.com. This happens because the pixel's events still originate from your shop's own pages, which need to stay allowlisted.
If you remove the custom domain later, the pixel falls back to serving from the shared nod. domain. The parent-domain entry that was auto-added to your allowlist stays in place — nod. doesn't remove it, since deleting it could silently stop events from your shop. If you want it gone, remove it yourself from the allowlist.
See the domain allowlist for how that list works, and install the nod. pixel on Shopify if you haven't added the snippet yet.