Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

"Time to Interact" metric in web performance measurements

Apparently "Time to Interact" is the new metric to use when measuring the perceived speed of a webpage. I'm interested in understanding a bit more about what this actually is.

The term was apparently coined by Radware, and is being pushed as the most meaningful performance measurement (compared to things such as Time to First/Last Byte, Time to Render etc.).

It is described as:

the point which a page displays its primary interactive (think clickable) content, rather than full page load.

This seems pretty subjective to me; what is the "primary interactive content" of a webpage for example?

There have been reports citing results for the measurement, so some how this is being measured, and further, it must be automated as the result sets are pretty big (~500 sites were tested).

Other than the above quote, I cannot find any more information on how to measure this.

As Google are placing more emphasis on above the fold content (or visible content), I am wondering whether this metric is actually more like "Time to First Meaningful Render", i.e. it is contextual to the current page goal. So for example, on an eCommerce site's product page, this could be the main image, and an add to basket link.

I am keen to understand this metric, as to me it does seem like the most useful one. My question is therefore whether anyone is measuring this, and if so how are they doing so?

like image 609
JonB Avatar asked Apr 28 '14 09:04

JonB


People also ask

How do you measure time to interact?

TTI is measured in Lighthouse by taking the point in time at the end of the last long-task. The last long-task is determined when: FCP has already been triggered. There is an idle window of least 5 seconds without interruption.

What is Web performance metrics?

Web application performance metrics help determine certain aspects that impact the performance of an application. This article discusses eight key metrics, including: User Satisfaction—also known as Apdex Scores, uses a mathematical formula in order to determine user satisfaction.

How are metrics used to measure performance?

A metric is a meaningful measurement taken over a period of time that communicates vital information about a process or activity, leading to fact-based decisions. Metrics are usually specialized by the subject area. In business, they are sometimes referred to as key performance indicators (KPI).


1 Answers

You kind of answered your own question, it is subjective, and contextual to you current project.

What if I'm testing a site with only HTML without any complex resources? There is no point measuring TTI there. On the other hand, let's see this demo site.

enter image description hereBigger picture here.

Blue line is marking the "COMContentLoaded" event (main document is loaded and markup parsed), red line indicates the load event, where all page resources are loaded. The TTI line would go in-between the two lines, that is defined differently for each project, based on some essential to interact resources loaded event.

enter image description here

For example, let's say that the pictures on the demo site are not essential to the core features of the site. While the main site loaded in 0.8 seconds, the 3 big pictures took 36 extra seconds to load, so in this case using the overall response time as a KPI would yield ~36second response time, while if you define TTI excluding those big, non essential resources, you end up with < 1s response time.

I am keen to understand this metric, as to me it does seem like the most useful one.

Definitely useful, but as you said it in your question, it's specific to the project. You wouldn't measure TTI on a simple, relatively static web app, you would probably measure overall response time. I always define KPIs "tailored" for the current project, instead of trying to use common metrics, and "force them" on a project.

My question is therefore whether anyone is measuring this, and if so how are they doing so?

Definitely used it before, you should identify the essential resources for your site, and when the last of those resources are loaded, that is your TTI. This could be a javascript file, a css, etc...

like image 172
Dominik Antal Avatar answered Nov 05 '22 14:11

Dominik Antal