Metric definitions
Quick reference for the metrics Intrily collects and how we compute them.
Event-level (per hit)
Each event (pageview or custom) gets a unique ID and carries these fields:
- Website ID — Your site’s ID in the payload.
- Hostname — From
location.hostname. - URL — Path + query (
pathname+search). - Referrer —
document.referrer; sometimes normalized when it points to your own domain. - Title —
document.title. - Query parameters — The
?...part of the URL, if we’re storing it.
Session-level (per visit)
Each session has an ID. We also derive:
- Browser — Parsed from User-Agent (Chrome, Firefox, Safari, Edge, etc.).
- OS — From User-Agent (Windows, macOS, Linux, Android, iOS, etc.).
- Device — Desktop, mobile, or tablet, inferred from OS and screen size.
- Screen — Width × height from the browser (e.g. 1920×1080).
- Language —
navigator.language(e.g. en-US, de).
Location
We resolve country, region, and city from the request (e.g. via headers or a geo DB). The raw IP is not stored.
- Country — ISO-3166 (e.g. United States, Germany).
- Region — State / province / region (e.g. California, Ontario).
- City — City name when available.
Aggregated (calculated)
These are rolled up per website (and per chosen dimension in breakdowns):
- Views — Count of all events (pageviews + custom) in the period.
- Visits — Unique visits. A visit is built from the session with a time-based rule (e.g. hashed with a rotating salt) and can cross hour boundaries.
- Visitors — Unique sessions. Sessions are hashed from website, hostname, User-Agent, etc. with a rotating salt (e.g. monthly) so we can count distinct users without storing IDs.
- Bounce rate — Visits with only one event count as bounces. Bounce rate = bounces ÷ visits.
- Visit duration — Sum of (last event time − first event time) per visit, divided by visits. Single-page visits don’t add to the sum.