The Zenovay tracker is a single <script> tag. Adding it to any website is a 5-step process.
The 5 steps
Get your tracking code
Sign in to app.zenovay.com, open the website you want to track, and go to Settings → Tracking Code. Copy the value — it looks like
zv_abc123xyz.Paste the script tag in your site's HTML head
The default install is a single tag in the
<head>section of every page:<script defer src="https://api.zenovay.com/z.js" data-tracking-code="YOUR_TRACKING_CODE" ></script>Replace
YOUR_TRACKING_CODEwith the value from step 1.Deploy the change
The exact deploy step depends on your platform — push the commit, hit Save in your CMS, or republish your no-code site. Wait until the change is live on your real domain (not just on staging).
Visit your site and watch the Live tab
Open your site in an incognito window. Within 30 seconds, your visit should appear in the Live tab of your Zenovay dashboard with the correct location.
If nothing shows up — diagnose
If your visit didn't appear after 60 seconds, check the install with first event not appearing. The most common causes are: tracking code mismatch, ad blocker on the test browser, or testing on
localhost.
Platform-specific guides
Pick the page that matches your stack:
| Platform | Guide |
|---|---|
| Webflow | Install on Webflow |
| WordPress | WordPress integration |
| Shopify | Shopify integration |
| Next.js | Next.js integration |
| React (Create React App, Vite, etc.) | React integration |
| Vue | Vue integration |
| Google Tag Manager | Install via GTM |
| Anything else | Custom framework |
Where the script tag should go
The script tag goes in the <head> of every page you want to track. The exact location varies by platform:
- Hand-coded HTML — directly inside
<head>, just before</head> - WordPress — theme's
header.phpor viawp_headaction - Shopify —
theme.liquid, just before</head> - Next.js —
<Script>in your root layout, withstrategy="afterInteractive" - Webflow — Site settings → Custom code → Head code
- GTM — Custom HTML tag with
All Pagestrigger
What the defer attribute does
defer tells the browser: "Load this script while parsing the page, but don't execute it until the page is parsed." This means the tracker doesn't slow down your page render at all — Lighthouse scores stay clean.
What's NOT required
You don't need to:
- Install an npm package (unless you're using a bundler — see npm installation)
- Add a cookie banner just for Zenovay (cookieless mode is the default — see do I need a cookie banner)
- Configure a privacy policy entry (recommended, but the tracker works without one)
- Whitelist anything in your CSP unless you have a strict CSP — in which case allow
https://api.zenovay.cominscript-srcandconnect-src