Metric Definitions
This page describes how Pomelo computes each metric. Understanding the definitions helps you interpret your dashboard data correctly and compare numbers with other analytics tools.
Sessions
Section titled “Sessions”A session (also called a “visit”) is a group of interactions on your site. A new session starts when either condition is met:
- 30 minutes of inactivity — no events for 30 consecutive minutes.
- Midnight UTC — a new calendar day begins.
Sessions are computed at query time from a privacy-preserving daily visitor key. No cookies or persistent identifiers are used.
Formally: COUNT(DISTINCT visit_id), where visit_id is rebuilt at query time
with 30-minute inactivity and UTC-day boundaries.
Visitors
Section titled “Visitors”Visitors represents daily unique visitors, estimated using a privacy-preserving daily key (an HMAC of pseudonymized signals that resets every UTC day).
- The same person visiting on different days counts as a separate visitor each day.
- The same IP and server-derived browser family on the same day count as one visitor.
- A different browser family from the same IP may count as a different visitor. A different device changes the visitor estimate only if it changes the IP or server-derived browser family; the raw user-agent is not used.
- No cookies, localStorage, or fingerprinting are involved.
Limitations: Pomelo cannot track the same person across multiple days because the key rotates daily by design. Users sharing the same IP and browser (e.g. office WiFi with the same browser) will be counted as one visitor.
Pageviews
Section titled “Pageviews”Pageviews is the total number of pages viewed, including repeated views of
the same page within a session. SPA (single-page application) navigations are
counted when pomelo.pageview() is called.
Unique Pageviews
Section titled “Unique Pageviews”Unique pageviews for a given page is the number of sessions during which that page was viewed at least once. If a visitor views the same page three times in one session, it counts as one unique pageview.
Formally: COUNT(DISTINCT visit_id) per page.
Engagement Rate
Section titled “Engagement Rate”Engagement rate is the percentage of sessions where the visitor was actively engaged:
- 10 seconds or more of active engagement time, or
- 25% or more scroll depth on any page.
Formally: engaged_sessions / total_sessions.
Bounce Rate
Section titled “Bounce Rate”Bounce rate is the percentage of sessions with only one pageview. A visitor who viewed a single page and then left is considered a bounce, regardless of time spent on that page.
Formally: single_pageview_sessions / total_sessions.
Avg. Engagement Time
Section titled “Avg. Engagement Time”Average engagement time is the mean active engagement time per session. “Active” means the page was in the foreground and the user was interacting (scrolling, clicking, typing).
Performance Metrics (Web Vitals)
Section titled “Performance Metrics (Web Vitals)”Pomelo reports the 75th percentile (p75) of Web Vitals. The thresholds below follow public web.dev and FCP guidance:
| Metric | Description | Good threshold |
|---|---|---|
| LCP (Largest Contentful Paint) | Time until the largest visible element renders | ≤ 2.5 s |
| FCP (First Contentful Paint) | Time until the first visible content renders | ≤ 1.8 s |
| INP (Interaction to Next Paint) | Latency of the slowest interaction | ≤ 200 ms |
| CLS (Cumulative Layout Shift) | Visual stability score | ≤ 0.1 |
| TTFB (Time to First Byte) | Server response time | ≤ 800 ms |
Why numbers may differ from other tools
Section titled “Why numbers may differ from other tools”- No cookies — Pomelo cannot link the same visitor across days, so multi-day “unique users” counts are not directly comparable to cookie-based tools.
- 30-min inactivity boundary — Some tools use different session timeout values (e.g., GA4 defaults to 30 min but also starts a new session on campaign change).
- Bounce = single pageview — GA4 defines bounce as “not engaged” (less than 10 s, single pageview, no conversions). Pomelo uses the simpler single-pageview definition.
- Bot filtering — Pomelo filters known bots by default. The “Robots” tab shows bot traffic separately.