Does PageSpeed Insight score measure real world performance?

If I’m using Google’s PageSpeed Insights, what do my results mean?
https://developers.google.com/speed/pagespeed/insights/

One of the current go-to tools for people when trying to make their sites fast is Google’s PageSpeed Insights.

https://developers.google.com/speed/pagespeed/insights/

Enter a URL and it will generate a “score” along with a list of suggested fixes for any issues it thinks relevant. This score is out of 100 and is also split between mobile and desktop devices.

What does it mean?

It is important to note that Insight Score does NOT measure real world speed.

What it actually measures, is how well your site is inline with Google’s principles of what a fast performing site SHOULD be, in terms of structure and delivery. Now granted that these principles are generally correct, but sometimes they are not realistic for what you wish to achieve. More on this later.

Insight scores are independent of each other. What this means is that site A with a score of 100/100 can have a load time of 5 seconds while site B with a score of 50/100 can have a load time of 2 seconds.

These scores are indicators of potential performance, not actual performance. The Insight score simply indicates that Google believes site B can potentially be faster if it made changes to be in line with recommendations.

False Positives

One thing to keep in mind is that the score is based on generic principles that should improve site speed. But sometimes a feature is placed on the site that contradicts the general principles, but for good reason.

One of the most frequent issues we see has to do with render blocking JS and CSS files. Render blocking is something that Insight often indicates as a serious issue that needs to be fixed. But there are occasions where you should do the opposite of the recommendation.

A good example of this is Optimizely scripts which are used widely. Their script should render block. Otherwise, it will cause unintended “flicker” during page load. But Insight will flag this script as “blocking” unless you load it asynchronously.

See: https://help.optimizely.com/hc/en-us/articles/202666094-Synchronous-and-Asynchronous-snippet-loading

Real World Performance.
Insight is good at giving an overview of where performance could be extracted, but it is no substitute for real data. As can been seen for the two following sites. Site A on the left has a great Insight score, but site B on the right is faster for all metrics.