Wix gives you exactly one clean way to run analytics on every page: the Custom Code panel, which injects a snippet into your site's <head>. That's all ClickStream needs. This guide walks the full Wix analytics install end to end — the DNS record, the dashboard verification, the head injection, and how to confirm events are actually flowing — in four steps.
The order matters. ClickStream is first-party only: the SDK loads from a subdomain of your domain (like t.yourdomain.com), not from a shared vendor CDN. So the DNS step comes first, because the snippet you paste into Wix points at a hostname that has to exist and be verified before events will be accepted. If you want the background on why, the install overview covers the first-party requirement in depth.
Why the Wix install is a script tag, not an app
Wix sites don't run your own build tooling, so npm packages aren't the path here — the script-tag install is. It loads a small loader (344 bytes) from your tracking subdomain, which then pulls the full tracker bundle (~56.5 KB gzipped) from the same first-party hostname. Wix renders navigation like a single-page app, and that's fine: the SDK handles SPA route changes internally, so one snippet applied to all pages captures every pageview.
Because the cookie is set first-party on your own domain, visitor identity persists at the browser's long-term maximum — around 400 days — instead of being clamped the way third-party or script-set cookies are. That's the difference between recognizing a returning visitor next quarter and counting them as new.
Before you start
- A ClickStream account at einstein.clickstream.com with a site created for your Wix domain.
- Your API key (
cs_live_…orcs_test_…) from the dashboard. It's safe to paste into page code — the key is domain-gated, so it only works from hostnames you've registered. Here's why a copied key is useless anywhere else. - A Wix plan that unlocks Custom Code. Wix gates the Custom Code panel behind a premium plan with a connected custom domain. You need your own domain anyway — the free
wixsite.comaddress can't carry a first-party tracking subdomain.
Step 1 — Add a CNAME in the Wix DNS panel
You're creating one DNS record: a subdomain of your own domain that routes to ClickStream's collector.
If Wix manages your DNS (you bought the domain from Wix, or transferred its nameservers to Wix):
- In your Wix account, open Domains and select your domain.
- Open the domain's DNS records (Wix labels this "Manage DNS Records" in the domain's action menu).
- Under the CNAME section, add a record:
| Field | Value |
|---|---|
| Type | CNAME |
| Host name | t (becomes t.yourdomain.com; analytics or data work too) |
| Value / Points to | feynman.clickstream.com |
| TTL | Wix's default (1 hour) is fine |
If your domain is connected to Wix "by pointing" — your nameservers still live at GoDaddy, Namecheap, Cloudflare, or another registrar — Wix doesn't control your DNS zone. Add the identical CNAME record at your registrar instead. On Cloudflare specifically, set the record to DNS only (gray cloud, not orange).
One check before moving on: the ClickStream dashboard shows the exact CNAME target during provisioning. If the dashboard value ever differs from this page, copy the dashboard — production currently uses feynman.clickstream.com.
Step 2 — Verify the tracking domain in the ClickStream dashboard
- Open einstein.clickstream.com → Sites → Your Site → Tracking Domain.
- Enter the subdomain you just created (e.g.
t.yourdomain.com). - The dashboard polls DNS every 10 seconds for up to 5 minutes. When the CNAME resolves, the status flips to "CNAME verified" and SSL provisioning starts automatically — it typically completes within 60 seconds.
- Wait for the green Active badge. That badge is the gate: don't paste the snippet into Wix until you see it.
If verification stalls, it's almost always propagation. CNAME records can take anywhere from 1 to 60 minutes to spread across resolvers. Confirm from your machine with:
dig +short t.yourdomain.com
# should answer: feynman.clickstream.com
Step 3 — Paste the snippet in Settings → Custom Code
Now the Wix side. From your site's dashboard (not the editor):
- Go to Settings and open Custom Code (Wix lists it under the Advanced section).
- Click + Add Custom Code.
- Paste the snippet below, swapping in your tracking domain and your API key from the dashboard.
- Name it something you'll recognize later ("ClickStream").
- Set Add Code to Pages to All pages, loading code once.
- Set Place Code in to Head.
- Apply, then publish your site — Custom Code only runs on the published site, not in the editor.
<script
src="https://t.yourdomain.com/sdk.js"
data-key="cs_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
async
></script>
That's the entire install surface: one tag, loaded from your own hostname, carrying a key that only works on your registered domains. The async attribute means it never blocks Wix's page render.
Step 4 — Publish and verify the install
- Open the dashboard, pick your site, and watch the Live Sessions panel.
- Load any page of your published Wix site in an incognito tab. A session should appear within 1–2 seconds.
If nothing shows up after 30 seconds
- Are you on the published site? The Wix editor preview runs on Wix's own hostnames, which aren't in your Allowed Domains — the domain gate rejects that traffic by design (a
403 domain_not_allowedin the network log). Test on your real domain. - Check the network tab. DevTools → Network, filter for your tracking domain. You want 200 responses on
/sdk.jsand/v1/events. A 403 means the request origin doesn't match your configured domains. - Check the key. The
data-keyvalue must match the key shown in the dashboard for this site. - Check Allowed Domains. The domain your site loads from must be listed for the site — wildcards like
*.yourdomain.comare supported. - Re-check DNS. Run
dig +short t.yourdomain.comagain and confirm it still resolves tofeynman.clickstream.com.
What a first-party Wix install gets you
Once the Live Sessions panel lights up, the rest is automatic. Pageviews, clicks, form interactions, sessions, and identity stitch together under a durable first-party cookie, and every event is scored in real time — intent, frustration, and bot classification among them. Bot detection matters more than most Wix owners expect: ClickStream classifies traffic across 11 bot categories, recognizing 158 named bots and 38 AI agents, and billing counts human pageviews only — crawler noise doesn't inflate your bill.
When you're ready to act on those scores from page code — showing a different CTA to a high-intent visitor, for instance — the Signals API reads the live visitor snapshot from the browser. Getting Started with the Signals API is the natural next read.
Running other platforms alongside Wix? The same four-step shape applies everywhere — see the companion guides for Webflow, Squarespace, and Google Tag Manager.
A Wix analytics install done first-party isn't more work — it's one DNS record more. What you get back is identity that survives, on a hostname you own.