Short answer: real-time views update in under 5 seconds. Pre-aggregated reports (the main dashboard, geographic breakdown, top-pages tables) refresh on a 1-2 minute cycle.
The full timing breakdown
| Surface | Typical delay | Why |
|---|---|---|
| Live View tab | < 5 seconds | Polls the live-visitors endpoint on a ~5-second cadence |
| 3D globe | < 5 seconds | Streamed via Supabase Realtime over WebSocket |
| Visitor counter (header) | < 10 seconds | Cloudflare KV with short TTL |
| Main dashboard charts | 1-2 minutes | Pre-aggregated for query speed |
| Top pages / sources / countries | 1-2 minutes | Pre-aggregated |
| Daily totals (analytics_daily) | up to 5 minutes | Rolled up on a short-window job |
| Retention / cohort charts | 5-15 minutes | More expensive; computed on a slower cycle |
| CSV / JSON export | up to 15 minutes | Pulls from the most recent rollup |
What "real-time" means in practice
When the tracker fires track on a visitor's browser, the request lands at Cloudflare Workers in 50-100 ms (closest edge POP), is validated and forwarded to the EU primary database, and shows up in your live surfaces within a few seconds.
That's why the Live View tab and the 3D globe feel instantaneous. The globe subscribes directly to the database stream over Supabase Realtime, while the Live View tab refreshes its active-visitor list every few seconds.
Why the main charts have a 1-2 minute delay
Charts like "Page views over the last 24h" don't run a full table scan every time you load the dashboard. Instead, a small background job rolls events up into pre-computed time buckets every 1-2 minutes. This makes the dashboard fast even for sites with millions of monthly events — at the cost of a small lag.
If you want to verify a brand-new event landed, watch the Live View tab, not the main charts.
When you should expect more than 2 minutes
A few legitimate reasons for longer delays:
- Heavy filter combinations — applying 5+ filters can fall back to a direct query, which is slower than pre-aggregated.
- Custom date ranges that include "now" — some date pickers re-aggregate on the fly.
- Retention and cohort reports — these are computed on a 5-15 minute cadence by design.
- Recently identified visitors — the link between an anonymous session and a logged-in user is processed asynchronously and can take up to a minute.
Troubleshooting
If your event still hasn't shown up after 5 minutes in the Live View tab, the issue is most likely on the install side (script not loading, ad blocker, wrong tracking code) — see first event not appearing and verifying your installation.