We can probably all agree that living in the past turns out to be a little bit detrimental to progress. Most of us will also agree that 2005 is long gone. That’s why 2005-era metrics pageviews, unique visitors, and other basic “insights” don’t cut it any more. At least, not on their own.
Lately, smarter companies prefer to use advanced metrics. For instance, at Medium, the most important metric is the time a visitor spends reading an article. They call it Total Time Reading, or TTR. Upworthy uses a metric called total attention minutes instead of pageviews for their posts.
The thing is, these aren’t advanced metrics. They’re just metrics. Numbers that don’t provide contextual value and immediate insights shouldn’t be referred to as metrics. Those old numbers (page views, unique sessions, acquisition channel numbers) are just noise.
Numbers that provide real, actual value are metrics. These are usually derived from multiple data points.
If you publish content on Medium, then you’re familiar with their analytics widget. It provides you with information about views, reads, and a read ratio for each post. Like I said above, simple numbers don’t give you a lot of insight on their own.
They’re there to provide you with context for the metrics you should care about. In this case, there are two dumb numbers (views and reads), that are both used to compute a metric of value, called the read ratio.
That’s a pretty basic analytics implementation. Note that basic doesn’t mean that it isn’t valuable. However, it does make for a great foundation if you want to dig in deeper to extract more granular insights. In this post, we’ll see how you can implement this kind of basic setup, and how you can expand on improving it.
A Quick Detour: About Consumption Metrics
The metrics we’re discussing here fall into the consumption metrics category of Jay Baer’s types of content metrics that matter. This category includes the most basic metrics to help you answer questions like:
- How many people are arriving on your site and reading your content?
- How many people who start reading your content will finish it?
- What percent of readers will read at least half of your article?
- How long does the average full-article reader take to finish an article?
- What channels did people come through?
- Which channels are correlated with a higher read-completeness?
- Do read-complete visitors come back more frequently than the skimmers?
By implementing even a basic analytics widget on your website, these are the types of questions that you’ll be able to answer about your content.
Implementing Total Time Reading
A reading time metric will be one of your basic data points. It’s a great little UX touch to display the estimated minimum reading time for an article. However, this will actually be a separate number from the one you’ll be using.
I find that most of the read time estimates provided on Medium are a bit too optimistic. It could be that I read very slowly, but if I had my tinfoil hat on I’d guess that the times are purposefully deflated to make readers feel as if a whole page won’t be too much of a time investment. Either way, let’s break these times down.
- An estimated reading time, which is the number you can display to interested readers.
- A realistic estimated reading time, which is a more conservative estimate that you’ll use to determine read completion.
- An actual time, which will be the recorded number for the time an actual person spent on your page.
Your estimated reading time and realistic estimated reading time (RERT) figures can both be determined using a simple formula: The total words in the article divided by the words per minute (WPM) reading speed of the average reader.
The internet says that the average reading speed for comprehension is usually 200 – 400 WPM and between 400 – 700 WPM for skimming.
Hopefully you’re writing educational or interesting content, so you’ll probably want to use the comprehension range. You may also want to reduce expected WPM count for longer articles, as you’ll have to take into account thinking time and cognitive fatigue.
How to Measure It
In simple English, if your article is 200 words long and you’ve set your RERT to be 100 WPM, it should take someone two minutes to read your article. That means they should reach the first milestone at 30 seconds if you’ve split your article into quarters.
If a reader reaches that point in five seconds, they’re probably not really reading, so we won’t record that event. If they reach that point at 35 seconds, we will record it as an actual event.
Deeper Down the Rabbit Hole
Of course, you’ll never be able to determine whether or not someone is actually reading your article by this form of measurement alone, but it’s not a bad place to start. Also, by tracking your read events this way, you’ll be able to get a read ratio, like the one Medium has.
This kind of information is actually pretty simple to capture and save for your own site. Going by the Medium example, views are recorded on each page load, and reads are determined based on the completion of an event.
I’m not 100% sure how Medium determines this, but a read is almost certainly registered when a visitor has scrolled down to a certain point in an article.
For example, only register a read as an event after a certain amount of time passes, as was explained above. This way you can be sure to exclude false positives when people reach 100% scroll depth in four seconds for a 1,000 word article.
From here, you can also go deeper and start to use segments so that you can get read ratio by traffic source, campaign, etc. If you can, you should even drop cookies so that additional data can be recorded as well.
The utm_campaign parameter is awesome-campaign and Google Analytics uses this data to segment user visitor data inside of its dashboards. If you click any submission on Product Hunt, then you’ll notice that the URL will always have a ref parameter appended to it, like so:
The reality is that you can include any parameter after the question mark character, so long as it’s in a key=value format.
Let’s say that you publish a new article and share it across five channels. Assuming that you’d like to track how much traffic came from each of those channels, you’d share your link with different parameter values for the campaign key.
var campaignParameter = location.search.split(campaign=')
There’s a function called window.onbeforeunload that fires off when the browser’s window is about to unload all of its resources. This function executes when a person closes their browser, the tab with your page, or clicks an external link.
This can help you track bounces, and is supported in all versions of Firefox, Chrome, Internet Explorer, Opera 12+, and Safari 3+, according to MDN.
By using these advanced metrics, your team will be able to start asking important questions about the content and how to grow your audience. If your single most important metric is TTR, like at Medium, you’ll be able to determine what percentage of your readers actually finish an article. You’ll be able to test out different post lengths and discover the optimal article length for your audience.
Your site may currently be getting thousands of shares, hundreds of comments, and many more resource downloads and newsletter signups. But ultimately you’re in the business of making money. You’re not the online court jester that’s here to please a passer-by audience.
Your company needs to use metrics like these to isolate the people who read entire articles, discuss things with your community, and open a decent amount of your newsletter emails.
Those are the people who are ready to be sold to.
Those are the people who your outbound sales team can focus on targeting. That can only be achieved with insights designed to provide you with this sort of information. Using analytics tools to find hot leads is superior to a monthly report to your boss showing them that the last 3 articles brought in 300,000 extra readers.
This post originally appeared on Mention and is re-published with permission.
Featured Image: Image by Mention. Used with permission.
All screenshots by Pawel Janiak. Taken October 2015.