Read this once and every chart in your dashboard means what you think it means.
Workspaces and projects
A workspace is who pays and who may look. A project is what is measured. Data never moves between projects: every number on a project page is counted inside that project alone, and a key belongs to one project only.
Visitors
A visitor is an estimate of one person on one device, made without following them.
Every page load starts stateless. The service counts the visit with a keyed hash of the request, held in memory, under a salt that is replaced every day — so yesterday's hashes can no longer be matched to anyone, including by us. Where the project's privacy regime or the visitor's consent allows a device to hold something, the tracker stores a first-party random identifier for your site and uses that instead.
Why the salt rotates. A rotating key is what lets us count unique visitors without storing anything on a visitor's device. The trade is that uniqueness across days is an estimate, and a returning visitor under the Strict regime counts again the next day.
Sessions
A session is a run of activity from one visitor. The tracker starts a new one after 30 idle minutes.
- Visits counts sessions in the selected range.
- A visit bounces when it has at most one page or screen view and no interactive custom event.
- Engaged time counts only while the page is visible and focused; scroll depth is the deepest point reached.
Events
Everything DataVisitors stores is an event, stamped with a time and a project.
| Event | Recorded by | Meaning |
|---|---|---|
sg_page_view |
Tracker | A page was loaded, or a single-page app navigated. |
outbound_link |
Tracker | A link to another host was followed. |
file_download |
Tracker | A link to one of 26 common file types was followed. |
engagement |
Tracker | Engaged seconds and scroll depth. It never adds to page views or the event count. |
sg_click, sg_submit |
Tracker | Autocapture, off until you turn it on in the install tag. |
sg_identify |
You | Your own user id and traits, under identified consent only. |
| Your own names | You | Anything you tag or send, with the properties you choose. |
| Imported rows | Import | History brought in from a CSV file or Google Analytics 4. |
Names starting with sg_ belong to the platform. Your own names use lowercase letters, digits and underscores.
Goals
A goal marks an event name or a page path as a conversion, and the dashboard counts the unique visitors who reached it. Goals are computed from the events already stored, so a goal you add today reports over ranges that ended before you added it — nothing needs to be re-sent.
Time zones
Each project reports in one IANA time zone, set on the project's Settings page and defaulting to UTC. Events are stored in UTC and shown in the project's zone, so changing the zone redraws history rather than rewriting it.
Next: Counting correctly — the six integration mistakes that break the three sentences above.