How tracking works
The sa.js snippet is tiny and runs in the background. When a page loads, it
sends one small message to your Snow collector describing the visit. That’s it:
no heavy library, no blocking, nothing that slows your page down.
The three things Snow counts
| Term | What it means |
|---|---|
| Page view | One page load (or one route change in a single-page app). |
| Session / visit | A continuous burst of activity by one visitor. A session ends after 30 minutes of inactivity. |
| Visitor | One person (well, one browser). A returning visitor across days is still one visitor in attribution mode. |
What gets collected automatically
Every page view includes, with no extra code from you:
- The page: URL, path, and hostname.
- The referrer: the page or site the visitor came from.
- Any campaign tags on the URL:
utm_source,utm_medium,utm_campaign,utm_term,utm_content, plus theref,source, andviashortcuts. - The screen size.
Your Snow collector then enriches the visit on its own server (never on the visitor’s device) with:
- Approximate location: country, city, and continent, derived from the visitor’s IP address.
- Device details: browser, operating system, and device type (desktop, mobile, or tablet), derived from the request.
The visitor’s IP is used on the server to work out location and is not stored on their device or shown in your reports as a raw address. For accurate locations behind an ad-blocker or proxy, see the first-party proxy.
How visitors are recognized
Snow has two ways to tell visitors apart, and you choose which per site (see Cookieless & privacy).
Attribution mode
Snow stores a first-party visitor ID and session ID in the visitor’s own browser:
| Stored value | Lifetime | Purpose |
|---|---|---|
_sa_vid (visitor) | 1 year | Recognize a returning visitor. |
_sa_sid (session) | 30 minutes | Tie page views into one visit. |
_sa_sts (session timestamp) | Session | Track session activity (in sessionStorage). |
These are first-party cookies (plus matching local/session storage) set with
SameSite=Lax. The full list is in
Script configuration. They’re never shared with another site and aren’t used for
cross-site advertising. Attribution mode is what enables returning-visitor counts
and linking revenue to a visit.
Cookieless mode (default)
Snow stores nothing on the visitor’s device. Instead, the collector derives a visitor ID from a daily-rotating, salted hash of the visitor’s IP address and browser, so a person can still be counted within a day, but the ID can’t be tied back to them and resets every 24 hours. Great for privacy; the trade-off is no cross-day visitor history and no cross-session revenue attribution. Full details on Cookieless & privacy.
How the data is sent
Snow uses the browser’s navigator.sendBeacon (falling back to a small
background request) so sending a hit never delays navigation or rendering. If a
hit can’t be sent (for example an ad-blocker blocked the request), nothing on
your page breaks; you just don’t see that visit. The first-party
proxy recovers those blocked visits.