Skip to main content
Help Center

Basics

Tracker Not Collecting Data

Why your dashboard might be empty after installing the tracker, and how to fix each cause.

If you've installed the ReachSurge tracker but no pageviews are appearing, work through this checklist in order. Most issues are caught by the first three checks.

1. Confirm the snippet is on the page

Open your site in a browser, view source (Ctrl/Cmd + U), and search for reachsurge. You should see something like:

<script defer src="https://reachsurge.ai/tracker.js" data-website-id="YOUR-WEBSITE-ID"></script>

If it's missing, the snippet isn't being injected. Most common causes:

  • The CMS template you edited isn't the one rendering the page.
  • A caching layer (Cloudflare, Vercel, your CMS) is serving an old version. Purge the cache.
  • A consent / cookie banner is removing the script before it loads.

2. Check the Network tab

Open DevTools → Network tab → filter for reachsurge. You should see two requests on every page load:

  1. tracker.js should return 200 OK.
  2. /api/track, fired right after, should return 200 OK with the body {"ok":true}.
What you seeWhat it meansFix
No requests at allSnippet didn't executeSee step 1
tracker.js returns 404Wrong domain in the snippetRe-copy the snippet from Analytics → the Install Tracker card
/api/track returns 400Malformed or unknown data-website-idRe-copy the snippet for the correct website
/api/track returns 403 (Domain mismatch)The snippet is on a domain that doesn't match the one registered for this websiteCheck the domain on the website record
/api/track returns 429You hit a rate limit of 30 requests/min per visitor IP, or 100 events/min for the whole websiteWait 60 seconds; usually a bot-traffic problem
Blocked by CORSSnippet loaded from the wrong originRe-copy the snippet from Analytics → the Install Tracker card

3. Disable your ad-blocker for one test load

uBlock Origin, AdGuard, and Brave's shield will silently block analytics requests. Disable the blocker for your own domain (or browse in a clean profile) and reload. If data appears, that's the cause and is expected for blocker users in your audience too.

4. Watch for the "Tracker connected" indicator

Individual events appear in your dashboard within seconds. Open Analytics for the affected website and look for the "Waiting for your first event…" card on the empty state. The pulsing amber dot flips to a green check the moment your snippet's first event lands. If you've already received events for this site, that empty-state card won't render at all; load any page on your site and the live KPIs at the top of the dashboard will tick up within a few seconds.

Aggregated stats (the day/week/month sparklines and breakdowns) update via an hourly cron, so even with a working tracker the "today" totals will continue filling in throughout the hour.

5. SPA / client-side routing

If your site is a React/Next/Vue SPA, page transitions don't reload the script and the tracker won't auto-fire on route change. There is no client-side API to record one manually yet, so an SPA records a single pageview per full page load. A reload starts a new view.

Still nothing?

Contact us with:

  • Your site URL.
  • The website ID (visible on Analytics → the Install Tracker card).
  • A screenshot of the Network tab during a page load.

We can usually identify the issue from the request log within an hour.