Automating Pagespeed Insights Using Google Sheets [Updated Template]

In September, Moz published UpBuild’s guide on “How to Automate Pagespeed Insights For Multiple URLs using Google Sheets”. We got a lot of really excellent questions and feedback on the post, and have continued making tweaks and improvements to the tool, which we thought we’d share here today. I recommend reading the Moz blog post first to give you a good understanding of what to expect from this tool. Then once you’re done, read on below to hear more about the additions we have made based on the feedback we received.

Performance Score and Mobile Results

A large majority of the community requested some additional functionality that was not part of the original Google Sheet, namely the PageSpeed Insights Performance score generated for each page and the ability to run the tool for mobile results (the tool pulls insights for desktop URLs by default).

We’re always happy to hear about ways to make the things we build even better and so we are happy to announce that we have added these great suggestions to an updated version of the template.

Download the Updated Google Sheet

You can grab an updated copy of the Google Sheet that now includes the Performance Score and the ability to run your URLs through PageSpeed Insights for mobile or desktop results.

Desktop and Mobile Insights

On this updated template, the Settings tab now has the option to choose between Desktop or Mobile. You will want to make sure that this is defined before running the tool. At this time you can only choose one strategy type, but if you’d like to have insights for both, simply make two copies of the new Google Sheet template.

Keep Us Updated

Let us know what else you’d like to see added to this tool, or if you find yourself digging into the Google App Script and modifying it yourself, let us know in the comments below – we want to hear all about it!

Written by
James McNulty was born in Sidcup, Kent England in 1985. James now lives in North Richland Hills, Texas with his wife Megan, and two dogs Colin and Davey. James has been building websites since 1999 and is currently a Senior Marketing Strategist at UpBuild.

Related Posts


  1. I played around with this a bit and was having issues with it timing out (the custom functions have a 30 second time limit). I also wanted to point out you can increase the amount of URL’s pulled by using the fetchAll function instead of the fetch function. It allows for up to 100 url’s pulled at a time in the same time span as a single pull. All the results can be dumped into an array and iterated through and then added to the sheet. So it will do 100 URL’s in the same time that it currently takes to do one.

Leave a Reply

Your email address will not be published. Required fields are marked *