In this article, we're going to discuss the common causes of a Google PageSpeed performance score being a question question mark.
Sometimes, when you generate a Google PageSpeed report (the same goes for Lighthouse) there will be an error, and your performance score will display as a question question mark. We recently had this issue happen to one of our test websites, and wanted to write an article detailing the steps that we took to make a report work, and the causes of an error when generating a PageSpeed report.
From the screenshot above, you can see that speed index return an Error! This is the most common cause of a Google PageSpeed report returning an error "?" as the performance score.
In the past, we've seen some other lab data metrics (separately) return an error. Due to our research and troubleshooting, we figured out a couple of reasons why this may be happening, and how you can fix it.
Unfortunately, Google won't tell you what's causing the error, it will only tell you under what category the error is triggering. Because the performance score is calculated from most of the lab metrics, if even one of them returns an error, the performance score will display a question question mark.
A common issue is the render limit. If you're loading too many resources when rendering your page, Google PageSpeed may not generate a report altogether. The render limit is 200, and if you're calling over 200 resources the report simply won't generate. You can check the number of resources that your page is loading by using GTMetrix.
Also, if the report won't even generate (meaning you're not seeing your performance score display a question mark), it's probably not publicly accessible. Your server could also be blocking the headless browser that lighthouse uses to generate the lab data for the report. Check if you have blacklisted any IPS, that your DNS is working, and that you can access your website from a browser that hasn't cached it.
If your website is running on WordPress and using many plugins, one of them may be the cause of the error. Disable the plugins And then run another report. If there's no error, you know that one of the plugins is conflicting with Google. From that, identify which plugin is causing the issue and remove it.
Also, check the HTaccess, disable any caching solution you may have running on the website, and if you have a preloader, disable that too.
However, if your website is working , no plugin is causing an issue, And you have no additional errors, it may be an issue with the lighthouse API. That's what Google PageSpeed uses to generate its report. you can check to see if this is the case by running your own lighthouse report over at web.dev or in the Chrome browser.
The final issue that you may have is your website hosting. We've seen reports of WordPress websites hosted on Bluehost (Bluehost is a bad hosting solution, here’s why) returning question marks on Google pagespeed. We've also had this issue ourselves when hosting websites from our own servers.
If this is a hosting issue, contact your hosting company and request that they take a look at this issue. Typically, they'll be able to resolve it by changing a setting on their end.
If you keep getting the issue, head over to the Google Chrome lighthouse GitHub repo and report an issue. The developers are extremely quick to respond and will typically help you resolve it on your end, or fix the bug on their end.
In our case, there is an issue with our WordPress installation. We ended up exporting the WordPress website using all-in-one WP migrate, and then reinstalling it onto the same server. This ended up fixing the speed index issue, and allowed us to view our PageSpeed report.
For previous issues with WordPress websites, we simply have contacted the hosting providers and they resolved the issue on their end.
If you have any questions about the PageSpeed report error, feel free to leave them in the comments section and we will try to help you to the best of our abilities.