Summary
The "Time of day" panel (Morning / Afternoon / Evening / Night) on the dashboard
has no documentation explaining how the timezone is determined, which can lead to
confusing or silently incorrect data.
How it currently works (from reading the source)
The data-utcoffset value hardcoded into the tracking snippet at setup time is
what determines how visit hours are recorded. When a visitor hits a tracked page,
the backend takes the current UTC time and shifts it by that offset before storing
the hour. This means all time-of-day data is recorded in the site owner's timezone
at the time they generated their tracking script — not the visitor's local time,
and not the server's time.
The problem
- There is no explanation of this anywhere on the website, in the blog, or in the dashboard UI.
- A user who sets up Counter while traveling, or who later moves to a different timezone,
will have miscategorized time-of-day data with no warning.
- The
data-utcoffset parameter in the tracking snippet looks like a minor technical
detail — its impact on the core analytics data is not obvious.
Suggested fix
Any of the following would help:
- Add a tooltip or caption on the Time panel explaining "Times shown in your timezone
(set by the utcoffset in your tracking script)"
- Add a note on the setup/settings page next to the tracking code explaining what
data-utcoffset controls
- Add a brief entry to the blog or a docs page covering how time-of-day tracking works
Summary
The "Time of day" panel (Morning / Afternoon / Evening / Night) on the dashboard
has no documentation explaining how the timezone is determined, which can lead to
confusing or silently incorrect data.
How it currently works (from reading the source)
The
data-utcoffsetvalue hardcoded into the tracking snippet at setup time iswhat determines how visit hours are recorded. When a visitor hits a tracked page,
the backend takes the current UTC time and shifts it by that offset before storing
the hour. This means all time-of-day data is recorded in the site owner's timezone
at the time they generated their tracking script — not the visitor's local time,
and not the server's time.
The problem
will have miscategorized time-of-day data with no warning.
data-utcoffsetparameter in the tracking snippet looks like a minor technicaldetail — its impact on the core analytics data is not obvious.
Suggested fix
Any of the following would help:
(set by the utcoffset in your tracking script)"
data-utcoffsetcontrols