• Tom Anthony


    This is totally awesome. The code in my post was out of date since the rate limit update, and so great to have someone update it.

    For the code in my sheet I got input from others, so I cannot take full credit. Its more of a community effort.

    Great work!

  • thedan1984

    Awesome. I had set this up earlier today and was receiving a weird error from the API (something about an Authentication error), came back to my doc maybe 2 hours later and it was working perfectly.

  • Emirhan Yasdiman

    This is going to be a time saving miracle. Thank you! :)

  • Chris Le

    @tom Thank YOU for the original post! I just updated the source code on GitHub to credit the other authors.

  • Chris Le

    @thedan1984 Awesome dude. If you just signed up for an API key, it does take a little time for it to generate. That might have been what you were experiencing. If not, let me know if you run into any problems.

  • Cleo Kirkland

    Chris, this is awesome. Quick questions (a bit off topic), but do you know what happens when you scrape a website with Google docs? Say I wanted to scrape a website for prices, will my IP address show up in their log files? Or will it be just google bot or something else? Since my IP address hasn’t been blocked from any site yet, I’m assuming this isn’t the case. But it could easily be that these companies don’t have someone to monitor their servers closely.

  • Chris Le

    Hi Cleo, I would be glad to answer this question as best as I can. To keep this thread from sidetracking, I will answer you @digitalnino.

  • Oscar

    I need to show about 500-100 metrics. How would one go about to write such code?

    I have a contact that is well familiar with SEOmoz API but I want to know:

    Does he need to start over from the beginning?
    Or does he “just” have to modify the code to make it show up PA and DA for up to 1000 URL.

    BTW, great this is so great! Thanks a lot!

  • Chris Le

    @Oscar: Unfortunately, I can’t offer you a clear-cut answer. Where your developer begins will depend greatly on his context. For example, what programming language are you using and where are you going to store all the data, etc.

    My source code ( is written in JavaScript. The API is fairly straight forward: You authenticate properly, send a query string with the columns you want as a bitmask, then you get JSON data back.

    But you don’t need to really do all that hard work: You may also want to look at the pre-built libraries that SEOmoz has posted on their help site:

  • Matt Satell

    Chris, this is great, thanks for putting together, very helpful!

    I’ve noticed occasionally when using example 2 that a site’s external links are highlighted in red. They’re still coming up correct though. Any idea why?

  • Chris Le

    Oops! I left some conditional formatting in those cells. I removed them in the master spreadsheet. Thanks for noticing that!

  • Matt Satell

    Thanks for the reply. Conditional formatting still seems to be showing up though with example 2 though, e.g. for

  • Will

    Hi Chris,

    Is there any way to get an Excel version of this?

  • Chris Le

    @will Unfortunately not. Excel can probably make an API call however VBA doesn’t have the capabilities (as far as I know) to parse JSON data. I also use a Mac and we all know how good Excel for Mac is :) If anyone else knows of a way to do this, I’ll gladly look into it.

  • Mark Ginsberg

    Hey Chris,

    With Niels Bosma’s SEO Tools for Excel, I believe you can parse JSON, and so could probably do this.

  • Mark Ginsberg

    Hey Chris,

    I’ve tried doing this, and now it’s not working – I’m getting an error, unknown function name – something I need to do to get this to work?


  • Andre Garde

    Hi Chris,

    When I use this spreadsheet now I get 401 unauthorized errors where the =getLinkscape(Ax:Ay) function goes. I didn’t change anything on the spreadsheet. Does this still work for everyone else?


  • Max Holloway

    This is really great!

    Going to be starting on my broken link campaign shortly, you have been warned!


  • Resh

    Does this still work?

  • Paul Harvey

    It appears not. It’s gotten rather patchy. Sometimes it works, and sometimes not. Happy to work on debugging this with someone. I get intermittent “Out of Range” errors amongst others.

  • Spook SEO

    Hello there!
    I hope that this still work. I would really love to try this. I believe that many SEO will find this very helpful. please keep us posted.

  • Simon Serrano

    @Chris … I keep getting an error message. “LIbrary with identifier Mozforgoogleapps is missing or has been deleted”