Turtl metrics

Learn what each of our metrics mean and how they are calculated

Dominic Adams avatar
Written by Dominic Adams
Updated over a week ago

There are a range of metrics we use to describe the performance of your content. This article will run through each in turn and explain what they mean and how they are calculated.


The total number of times a Doc was opened on a Surf page and the reader turned a Surf page (or dived into the Immerse level). If a user first lands on an Immerse page, this is automatically counted as read.

Reads metric lets you know how many reads your content is getting, which allows you to benchmark interest vs other content. If reads are higher than readers, this would indicate repeat reads.

For example, if someone lands on the Cover page and clicks on the 'Read more' button or flips to the following Surf page or even clicks on an internal link leading to a Surf page further on, this will be counted as a read.

If someone lands on the back cover, fills out a form and exits the Doc, this will NOT be counted as read. Neither will clicking on an external link or clicking on a social media sharing icon be counted as a read.

Technical explanation

The total number of unique read sessions where a Surf event is emitted.

Unique read sessions: Every time a user opens a Turtl Doc, a unique read_id is created. Read session times out after 30 minutes. If a user turns a Surf page after 30 minutes of inactivity, a new read_id is created.

A Surf event is emitted when:

- A user clicks on the right-hand arrow, left-hand arrow, 'Read more' button, a Surf page within Contents menu or an internal (deep) link on the Surf page.
A Surf event is NOT emitted when:

- A user clicks on an external link, Contents menu, Social sharing link or upon form submission.


The total number of unique readers who have read a Doc. A reader is defined as someone who has opened the Doc and then taken an action. This could be clicking to the next page or the "Read on" button.

If someone lands on a Doc for the first time and turns a Surf or an Immerse page, the analytics will generate one 'read' and one 'reader'.

If, at a later time, the Doc is accessed through the same browser/device and explored beyond the first page, the analytics will generate 2 reads and 1 reader.

If the Doc is accessed and engaged with in incognito mode, through a different browser or device or the cookies in the browser had been cleared in the meantime, the analytics will generate 2 readers.

Unique reader definition

Each reader gets a unique reader_id the first time they open any Turtl Doc. The reader_id is then stored in their browser cookie, so the next time they open a Doc, their reader_id would be the same, unless:
-They cleared their browser cookies in the mean time.

-The accessed Turtl Docs from a different device or browser.

Bounce rate

The percentage of readers that opened and closed a Doc, but did not take any action e.g. turning the first page.

This means that if we have 100 people opening a Doc, 30 people exploring beyond the first page and 70 people leaving the Doc without doing anything (bouncing), this will result in a 70% bounce rate.

Mathematical calculation

Math.round(((allReaders - readers) * 100) / allReaders) || 0;

allReaders = all individuals that opened a Doc
readers = all individuals that explored beyond the first page


The total number of times the share icon within the content was clicked, regardless of whether the final steps to sharing were completed or not.

The number of shares your content receives is a great indicator of how well it is resonating with your audience. A higher number of shares leads to increased visibility and engagement with your content.

The share event is emitted when a user clicks on one of the sharing icons: on the Cover page next to contents, on the Back cover page, on the quotation widget, and the poll widget.

Note: We are not able to track shares made by, for example, someone sharing the content directly on Linkedin via a URL.


The total number of times a lead capture form has been submitted.

Lead capture form can be the default Turtl form or a third-party form. Forms can be added to the Cover page, Immerse pages or the back cover of a Doc.

If the same user submits the form twice, we count that as two sign-ups.

Note: Even if a logged-in user submits the form, it is counted towards the number of sign-ups.

PDF Downloads

The total number of times the 'Download button' at the bottom of Contents menu has been clicked.

Average read time

Tip: A separate article dedicated to all things read time (including Average Surf and Average Immerse time) is available here.

The average time your readers spend reading a Doc.

In the context of one Doc (Doc analytics dashboard or 'Most read Docs' section), this is the total time all readers spent reading one Doc, divided by the number of readers.

Technical details

Math.round(readTimeMs / 1000 /readers) || 0;
Math.round = rounds the value to the nearest integer
readTimeMs = surfTimeMs + immerseTimeMs

/1000 = we divide by 1000 to get seconds

/readers = unique readers

|| 0 = if there is no read time, we output 0

Read time begins when a user lands on the Doc and ends the last time a page had been turned. Any time spent from the last turn of the page until the user exits the Doc is not counted towards read time.

This means if a user spends 1 minute on the last page they're on without flipping that page, that 1 minute doesn't count towards their read time.

If a session times out (which happens after 30 min of inactivity), the next action resets the clock and begins the read time again.

This is counted as a separate session. Meaning if someone who reads is marked inactive by not engaging, then engages again, they'll be counted as two reads from one reader. See also Turtl's definition of a read.

In the context of multiple Docs on the Team or workspace dashboard, this means total time all readers spent reading all Docs divided by the number of readers.

Please note that this is a slightly different metric as one reader can read multiple Docs.

Read time in this context is the total read time of all Docs on Team or workspace.

You may see this in seconds [s], milliseconds [ms], or a more human-readable time that varies depending on the amount of time spent.

CTR (Click-through rate)

The percentage of readers who chose to read an Immerse section.

Mathematical calculation

CTR = Immersers / Surfers

Surfers: Unique readers who turned a Surf page either by diving into Immerse level or flipping to the next or previous Surf page.
​Immersers = Unique readers who entered the Immerse page and exited the Immerse page by going back to the Surf page or by clicking the double arrow on the last Immerse page, thus jumping to the next Surf page. If they close the Doc just after immersing, they will not be counted as Immersers and CTR will not get calculated.

Note: If a reader lands on an Immerse page and does not flip that Immerse page or go to the Surf page, the CTR will not get calculated.

Avg % of Doc read

The average percentage of Doc pages read across all read sessions.

For example, if a Doc has 10 pages, and two sessions happened, in the first, 5 pages were read (50% of the Doc read), in the second, 2 pages were read (20% of the Doc read), this means that the Average % of Doc read equals (20% + 50%) / 2 = 35%.

Mathematical calculation

avg(number_of_doc_pages / number_of_pages_read)

Did this answer your question?