How to achieve a good score from Google Pagespeed Insights

Speed is one of the most important ranking factors in technical search-engine optimization (SEO). Besides search rankings, pagespeed directly or indirectly influences Quality Score in AdWords (and thus to click prices), and, perhaps most importantly, to the usability of website. Better usability, more conversions.

PageSpeed Insights is a free service by Google to score the speed of a website. 100/100 is the maximum score.

WordPress, then again, is the world’s most popular content management system. According to some estimates, more than 50% of the Web is powered by WordPress. Also my blog is built on WP. I spent some time to optimize its pagespeed score, and managed to get it to pretty decent numbers (see the picture).

Fig. 1 Performance of jonisalminen.com (GTmetrix)

That is, starting from 80-something and ending up with 90-something. I’d like to have the perfecto score of 100/100, but I’ll settle for this for now since it already took many hours of work to get here. At some point when I have more time, I might continue the optimization process.

Anyway, here are some lessons I learned while making speed improvements:

  • Choose a lean theme – basically theme makes a huge difference. Re-test pagespeed with different themes, for example Schema or the one I use in my blog.
  • Use a dedicated WP hosting – I’m using GoDaddy, but e.g. WP Engine, Studiopress (Genesis Framework) and SiteGround are apparently better
  • Use Clouflare CDN (the free version) – other CDNs are probably good too, but this one is amazing
  • Load everything possible locally instead of calling externally (fonts, scripts, avatars…)
  • Use EWWW Image Optimizer (or similar, like Smush) to optimize image size; also, avoid scaling dimensions in the browser
  • Use GTMetrix (or similar) to check the waterfall of the pageload, and work back to reduce requests
  • Use WP User Avatar plugin to avoid retrieving profile pics from Gravatar
  • Use Autoptimize plugin to concatenate CSS and JS code
  • Place JavaScrip to footer to avoid render-blocking

…and, truth be told, *avoid* using plugins too many plugins. Here’s an example picture showing their impact on pageload. Plugins are easy when you can’t code or want quick fixes, but they introduce unnecessary overhead to page complexity.

Fig. 2 Impact of plugins on site performance (P3 Profiler)

In this example, plugin impact is 82.6% of page load time. In particular, I should stop using WP User Avatar, and instead change the code manually to achieve the same functionality.

Finally, here’s a list of great resources for optimizing pagespeed for WordPress sites:

Conclusion

I recommend every online marketer to spend some hands-on time with speed optimization. Gets you thinking differently about “nice layouts” and all the other marketing things. Since many websites are actually ignoring speed optimization, you can get a competitive advantage by spending time on speed optimization. And as we know, even a small edge in Google results can mean serious revenue gains because of the overwhelming search volumes.