sitespeedio / sitespeed.io

sitespeed.io is an open-source tool for comprehensive web performance analysis, enabling you to test, monitor, and optimize your website’s speed using real browsers in various environments.
https://www.sitespeed.io/
MIT License
4.76k stars 603 forks source link

What is the Metric that reports the perceived response time #1156

Closed softwareklinic closed 8 years ago

softwareklinic commented 8 years ago

time taken to paint/render the visible part of the page (above the fold) --- is it the rumspeedindex?

The perceived render time represents how long the initial visible page takes to load. With usual text / image size ratios the value largely depends on the loading time of the slowest image within the page's visible range.

soulgalore commented 8 years ago

Hey @softwareklinic so ... I think there's no way in any tool to measure any "perceived" metrics, it's kind of a marketing ploy for #webperf companies trying to sell you things.

RUMSpeedIndex is trying to calculate when the content within the viewport is ready. It is not as good as SpeedIndex (RUMSpeedIndex do it with Javascript in the browser and SpeedIndex (at least the version at WPT analyzes video frames to see when the viewport is finished). If content arrive early in the viewport you get a lower SpeedIndex than if it arrives later and the pages are ready with painting the viewport at the same time. You probably know that already. When I use RUMSpeedIndex I try to verify that it is ok for that site.

You can also use User Timings to define marks on your page when things are kind of ready. I've seen people say you can use it to collect metrics when an image is shown for the user in the browser, but that is of course not correct, it's marketing ploy too. The browser will fire off those marks but it can start do something else before it starts to paint the image etc. However I'm not saying they are useless, they cool but it's not possible to tie them to when something is painted on the screen.

When we push 4.0 we can add docs to make things clearer.