Understanding the difference between first-party and third-party tracking helps you choose the right approach for your website's analytics needs.
What is Third-Party Tracking?
Third-party tracking is the default method when you install Zenovay. Your website sends data to our servers at api.zenovay.com.
<script
defer
src="https://api.zenovay.com/z.js"
data-tracking-code="YOUR_TRACKING_CODE"
></script>
How It Works
- Visitor loads your page at
yoursite.com - Browser fetches tracker script from
api.zenovay.com - Tracking data is sent to
api.zenovay.com - Data appears in your Zenovay dashboard
Advantages
- Easy setup: Just copy and paste the script
- No DNS configuration: Works immediately
- Automatic updates: Always uses the latest tracker version
Limitations
- Ad blockers: Some block requests to analytics domains
- Privacy extensions: May prevent third-party requests
- Corporate firewalls: Some organizations block external analytics
What is First-Party Tracking?
Pro PlanFirst-party tracking uses your own domain for analytics, making requests appear to come from your website rather than an external service.
<script
defer
src="https://analytics.yoursite.com/z.js"
data-tracking-code="YOUR_TRACKING_CODE"
></script>
How It Works
- Visitor loads your page at
yoursite.com - Browser fetches tracker from
analytics.yoursite.com(your domain) - Tracking data is sent to
analytics.yoursite.com - Your subdomain proxies requests to Zenovay servers
- Data appears in your Zenovay dashboard
Advantages
- Ad blocker resistant: Requests appear first-party
- Better accuracy: Fewer blocked requests
- Professional appearance: Uses your domain
- Enhanced privacy: Data flows through your domain
Considerations
- Requires DNS configuration
- Takes time for DNS propagation
- Requires Pro plan or higher
Setting Up First-Party Tracking
Choose Your Subdomain
Pick a subdomain for analytics. Common choices:
analytics.yoursite.comdata.yoursite.comstats.yoursite.comt.yoursite.com
Avoid obvious names like "tracking" or "zenovay" which ad blockers might target.
Add CNAME Record
Add a CNAME DNS record in your domain registrar:
Type Name Value CNAME analytics proxy.zenovay.com Replace "analytics" with your chosen subdomain name.
Wait for DNS Propagation
DNS changes can take up to 48 hours to propagate globally. You can check progress using:
dig analytics.yoursite.comOr use online tools like dnschecker.org
Enable in Dashboard
- Go to Settings → Tracking Configuration
- Enable First-Party Tracking
- Enter your subdomain:
analytics.yoursite.com - Click Verify to confirm DNS is configured
Update Your Script
Update your tracking script to use your subdomain:
<script defer src="https://analytics.yoursite.com/z.js" data-tracking-code="YOUR_TRACKING_CODE" ></script>
DNS Configuration by Provider
Cloudflare
- Go to your domain's DNS settings
- Click Add Record
- Select CNAME type
- Enter subdomain name (e.g., "analytics")
- Enter target:
proxy.zenovay.com - Enable Proxy (orange cloud) for SSL
GoDaddy
- Log in to your GoDaddy account
- Go to My Products → DNS
- Click Add under Records
- Select CNAME
- Host:
analytics - Points to:
proxy.zenovay.com - TTL: 1 Hour
Namecheap
- Go to Domain List → Manage
- Click Advanced DNS
- Add New Record → CNAME Record
- Host:
analytics - Value:
proxy.zenovay.com
Route 53 (AWS)
- Go to Hosted zones → your domain
- Click Create record
- Record name:
analytics - Record type: CNAME
- Value:
proxy.zenovay.com
Verifying Your Setup
After DNS propagation, verify your first-party tracking:
Check DNS Resolution
nslookup analytics.yoursite.com
Should return proxy.zenovay.com or a Zenovay IP address.
Check Script Loading
- Visit your website
- Open DevTools (F12) → Network tab
- Filter by your subdomain
- Verify
z.jsloads from your subdomain
Check Data Collection
- Visit your website
- Check the Zenovay Live tab
- Your visit should appear within seconds
Troubleshooting
DNS Not Resolving
- Wait longer for propagation (up to 48 hours)
- Clear local DNS cache
- Try from a different network
SSL Certificate Errors
If using Cloudflare:
- Ensure the proxy (orange cloud) is enabled
- Check SSL mode is "Full" or "Full (Strict)"
Without Cloudflare:
- Our proxy automatically provides SSL
- Wait up to 24 hours for certificate provisioning
Tracking Not Working
- Verify DNS resolves correctly
- Check browser console for errors
- Ensure tracking code is correct
- Try in incognito mode
Best Practices
Recommended Setup
Use a non-obvious subdomain name and enable first-party tracking for the most accurate analytics.
- Choose a generic subdomain: Avoid "analytics" or "tracking" as some blockers target these
- Test before deploying: Verify DNS works before updating production scripts
- Keep third-party as fallback: Consider loading third-party if first-party fails
- Monitor blocking rates: Compare data before/after to measure improvement
Comparing Accuracy
Typical improvements when switching from third-party to first-party:
| Metric | Third-Party | First-Party | Improvement |
|---|---|---|---|
| Visitors Tracked | 70-85% | 95-99% | +15-20% |
| Ad Blocker Impact | High | Minimal | - |
| Script Load Success | 80-90% | 98%+ | +10-15% |