This is a reference guide for describing how topic views, posts read, and reading time are tracked
The user profile page for all users contains statistics about that user’s read time
, topics viewed
, and posts read
.
Topic Views
Topic views are the number of topics a user has clicked on. For example, if a user clicks on a topic and loads that page in their browser, this would be considered viewing the topic. Unread Topics will have a blue dot next to them.
A user can only view each topic once, and viewing a topic doesn’t necessarily indicate that all of the posts within the topic have been read.
Posts Read
Posts read will indicate the number of posts that a user had fully read.
Unread posts will have a blue dot next to the timestamp that the post was created at, and once this blue dot disappears Discourse will count that post as “read”.
If I open one topic with a lot of replies and zoom down with my scroll wheel, will I have read all the posts in the topic?
The exact time necessary to view a post before Discourse will consider the post “read” changes depending on the length of the post, but typically you’ll need to have a post on screen for at least a few seconds before the post will be consider read.
Reading Time
Discourse also tracks reading time for every post a user views on the screen.
The calculation Discourse uses for tracking reading time is complex, however, there’s a few key points to note about how Discourse tracks reading time:
- Each time a user looks at a post, Discourse will log a maximum of 6 minutes reading time per post (this will reset if you navigate away and back to the topic).
- There is no upper limit on read time per post, a post can be read for days by a user if the user returns to a topic.
- If 3 minutes pass and a user has not scrolled at all, Discourse disables this reading time tracking subsystem until the user scrolls again
- Discourse will log reading time for up to 5 topics for anonymous users
If you would like to read about the technical details of the current implementation used to track reading time, please see: