The Complete Guide to the Google Analytics Add-on for Google Sheets

google analytics

SEOs and marketers always have a lot on their plates.

That’s why we care so much about tools that save us time.

Any chance you get to automate some of your work is one that you should take.

That’s why when I first came across the Google Analytics add-on for Google Sheets, I knew I had to share it with you in a post.

What exactly is this add-on, and why is it useful? I’m going to assume you know what Google Analytics is.

But you may not know what Google Sheets is. It’s essentially the free spreadsheet competitor to Excel that Google has developed over the years.

The best part is your spreadsheets can live in the cloud and be worked on by multiple people at the same time.

The add-on I’ll show you how to use allows you to pull data from your Google Analytics account using the API and create reports with it.

Not only that, you can re-run these reports at any time.

That’s really powerful because once you create a report, you don’t have to spend time remaking it.

Whether you work for clients or do marketing for an internal team, you can generate these reports on a regular basis for your meetings and progress reviews.

Why would you want this? If it’s not clear yet, it will be soon. Playing with data in Google Analytics is fine, but it’s not the most usable interface.

Compare that to a spreadsheet, where you can use a ton of different functions (like filtering, custom graphing, etc.) on the data you retrieve.

Additionally, it’s really easy to generate those reports on a regular basis and make improvements whenever you’d like.

At this point, you should know if this add-on is going to make your life easier or not. If you know it will, keep reading on, and I’ll show you the ins and outs of it. 

Step 1: Install the add-on

Installing the add-on is easy.

Start by opening a new Google Sheet.

Then, click on the “add-ons” menu option at the top, and choose “get add-ons.”

A new window will pop up. Type in “Google analytics” into the search box at the top right side, then press “Enter.”


There should be one obvious add-on with the Google Analytics name and symbol. Click it, then press the “+free” button on the next window to install it.


The add-on should now be installed for use with all your future sheets.

Click on the “add-ons” menu again, and you should see a new listing for “Google Analytics.”


If you don’t see it there, you may have to refresh the page.

Finally, you should get a pop-up at some point, telling you the link to the support forum, but if you didn’t get it, here’s the link. If the add-on is not working correctly, that’s where you should post your questions.

Step 2: Create your first report

This add-on, while it should simplify your life, can actually be a little overwhelming if you dive right in.

In this section, we’ll create an example report and go over the basic settings and options you have.

Start by going back to the Google Analytics option in the “add-ons” menu, and this time, click on “Create new report.”


Once you do that, a menu like the one below should show up on the right hand side of your screen:


In order for this to work, you need to be signed in (in Sheets) to the same Google account that you use for Google Analytics.

The first few settings are obvious: give your report a title, and choose the website (property) that you want to analyze.

The metrics and dimensions are where things get interesting.

Metrics, or key performance indicators (KPIs), are the heart of most marketing reports. I wrote a detailed post on the 14 most common metrics for SEOs that you might want to refer to now.

Many of those metrics can be found in Google Analytics:

  • Traffic
  • Average time on page
  • Pages per visitor
  • Bounce rate

When you click on the “metrics” field, a list will appear with a huge variety of metrics. You can choose any metric you’d like for now, but I’m going to start with “users.”

While you’ll probably want to choose more than one metric for your actual reports later on, one is fine for now.

The last field is the dimension field. In Google Analytics, you can filter data based on things like source, referral path, keyword, and so on. That’s what dimensions are here—they allow you to segment your reported data.

For our example, pick any dimension you want, or leave it blank.

Then, finish off by clicking “create report.”

After a few seconds, you should see something like this:


Here’s the confusing part: This didn’t actually create the report that most people would expect. Instead, it just created the instructions that the add-on needs to run the report and pull data from your Analytics account.

Let’s actually run the report: Now go back to the “add-ons” menu, but this time, click on “run reports.”

This will run all the reports you set up in the active spreadsheet, but since we only have one for now, it’ll do just that one.

A few seconds later, you’ll get a confirmation box, saying the report was run. And at the bottom, a new tab will appear:


Click the tab, and you should see the data in the report, as expected:


This will match your Google Analytics data, but feel free to double check.

You can create as many reports as you’d like. The settings will all be stored in the main tab. When you run your reports, you’ll get a tab for each report (you won’t get a new tab if the report has already been run before).

Editing reports: On the original “report configuration” tab, your report settings will always be available to be edited.

You can change dates, add and remove metrics or dimensions, and even add things like filters, which I’ll go into next.

To add more than one metric to a report, you’ll need to select the metric box, put the cursor at the end, and then press “alt + enter” to create a new line. Then type in the new metric as usual.

Step 3: Understand all the different options

Congratulations, you’ve run your first report!

But that’s just the tip of the iceberg because there are a ton of different combinations and options in this add-on that you should be aware of.

Let’s go through all the fields in the main report configuration tab, one by one. You need to know what each of them does and how you can use them:

  • Report name – Just a quick note: if you delete the name in this cell, the report will not be run when you run your reports. This name will show up at the top of each report, but it will also be the label of the report sheet at the bottom of your spreadsheet.
  • View (profile) ID – That’s the ID of your Analytics property that data is being pulled from. It will be pulled automatically when you create the report. However, you could duplicate reports for multiple sites by copy/pasting the rest of the cells and changing this value.
  • Start date/End date – You can specify the date range that the data is pulled from.
  • Last N days – You can also specify to just pull data from the last “N” number of days, where N is any number you input into the cell. Note that you can use either this option or the start/end date option—not both.
  • Metrics – You can add multiple metrics for each report. You can get a full list of the different metric labels here so that you can just edit the configuration instead of creating a new report every single time.
  • Dimensions – You use these to segment your traffic to get metrics separated for each type of user. However, dimensions need to be compatible with the metrics in your report; otherwise, they won’t work. If you’re just typing in dimensions, go to that list of metrics, and select either a dimension or metric to see which ones are compatible.


  • Sort – You can set up the report to automatically sort the results if you find yourself wasting time doing that manually. You’ll have to manually input the metric or dimension here that you want to sort by (e.g., “ga:sessions”). You can sort in reverse by putting a minus sign in front (e.g., “ga:sessions”).
  • Filters – You can use filters to remove certain parts of your traffic that you don’t want to see. For example, if you didn’t want to include referral traffic in your report, you’d enter “ga:medium%3D%3Dreferral” in this box. Refer to the “filter syntax” and “filter operators” on this page to see what’s available.
  • Segment – This is true segmenting, allowing you to look at a specific section of data. To use this field, you’ll need to enter a value like “sessions::condition::ga:medium%3D%3Dreferral.” You can find more examples here.
  • Sampling level – There are three acceptable values here: “DEFAULT,” “FASTER,” or “HIGHER_PRECISION.” For most metrics, the default value (of “DEFAULT”) is fine. If the report is taking too long, choose “FASTER” to sacrifice accuracy for speed.
  • Start index – If for some reason you want to ignore the first “X” results, you can do so by specifying a start index. For example, if you type in 5 here, the first 4 results will not be shown.
  • Max results – You can choose the number of results to be returned in your reports, up to 10,000. By default, you’ll get 1,000.
  • Spreadsheet URL – If you want your report data to be sent to a different spreadsheet for any reason (e.g., if you have a sheet for a specific client already), you can just enter the URL of the file where the report should go.

I know that was a lot, but struggle through it, and you’ll have everything you need to get going.

When you consider all these different fields, you can create just about any custom report you want. Be prepared for reports to fail if you’re adding many values to them. Just add them one at a time, and tweak them until they work (test each time you add one).

Step 4: Create reports that are actually useful

At this point, you have a pretty solid understanding of what the add-on is all about and how to use it.

It’s time to create reports that you’ll actually use on a regular basis—that’s the whole purpose of this exercise.

Although you might be good from here, let’s outline the general steps:

  1. Decide which metrics you want to measure
  2. Decide which segments you want to analyze
  3. Create the report
  4. *Run the report periodically
  5. Manipulate the results (sort, filter, graph) as needed

I put a star by #4 because there’s an alternative. If you haven’t noticed yet, you have a third option when you go to the add-on in the menu called “Schedule reports.”


With the scheduling feature, you can have reports run automatically every hour, day, month, etc.—basically, whenever you want.


Saving time and being able to create consistent reports from your analytics data are both important things for marketers.

If you create reports from Google Analytics on a regular basis, you’ll likely benefit from giving this add-on for Google Sheets a try.

Once you’ve created a report, you can then make charts from the data or share the data directly with your client (if you don’t want them messing around in Google Analytics).

If you have any questions about this add-on or tips on using it more effectively, please share them in the comment section below.


  1. Hamza Sheikh :

    This is brilliant. It can seriously make my life easier. I have to compile too many reports to send to multiple clients. I always waste more than 40% of time on creating such reports.

    I am myself an explorer, and I am seriously wondering why I never tested it before 😀

    Anyways, thanks for the quick tip.

    • Then this should be a huge time saver!

      • Anil Agrawal :

        Absolutely! It will be a HUGE time saver. Thank you soooo… much, Neil

      • Neil how do you stay on top and deliver such valuable material day in and day out. Thanks your work is greatly appreciated- Brian McKay ( nice shoes)

      • Anil Agarwal :

        Google Analytics is an important tool for all kinds of bloggers who want to track and boost their search engine traffic.

        Sadly most people don’t yet harness the power of it.

        I’ve been using this add on for some time now and it’s really exceptional.

        Creating reports, making chards and knowing the data all seems like a walk in the part using it. Thanks for putting it all together so I can pass it on to my clients.

        • I think most people aren’t willing to take the time to learn it to be frank. It’s good to hear that it’s helping you become more effective!

  2. Neil – Great article! I have been using the Google sheets add on for quite a while now and couldn’t agree more with your observations.

    My question for you is have you found any way to have the automatically scheduled reports emailed? That seems to be the one feature that is lacking in the add-on.

    Keep up the great work!


    • Hi Joe,

      Here’s what we do for that! For scheduled reports, our organization uses this tool called Cyfe — we take our Sheet, connect it in the Cyfe app (super simple), and schedule an emailed report there (among other metrics). It’s really neat.

      They have a regular Analytics plugin (lots of other plugins) too, but this allows you to make a custom report from Analytics to Sheets with the way Neil described above, fully automate it, and schedule it for emails.

    • Yes, Lisa has a great response for this below

  3. Theodore Nwangene :

    Great tutorial Neil,

    It seems there are so many things we’re yet to learn about SEO.

    The good thing is that like you said, there are usually great tools that makes things much easier for us. I’ve never heard about this add-on before but from your post, I’m beginning to see how useful it is.

    I’ll take time to master and test it then, I’ll let you know of the outcome.

    Thanks for sharing and happy new week.

    • It’s a way for you to understand the data you’re collecting so you can be much more effective with your decisions making

  4. Vikash Sharma :

    Hi Neil

    This is just an awesome article. I know about Google Analytics but was not aware about Google Sheets. But this is really important to know about this as they have lot of benefits.
    I will definitely try out the steps to create and run the report
    Overall, a very nice and informative article! Thank you for your time sharing this with us

  5. Hi Neil,

    Awesome article. Just at the right time.
    I was just looking for more advanced guide on Google Analytics yesterday and here it is.
    Wow. I guess I am lucky. Haha.

    Thanks 🙂

    • It was serendipitous Mark 🙂

      You’re welcome, let me know if you have any questions you need clarification on

  6. Thanks for this Neil, I didn’t even know this plugin existed. I do some manual reporting using Google sheets so I’ll be playing around with this. Cheers

  7. Anshul Johri :

    This is awesome Neil. I was not aware of this feature. Thanks for this article. Learnt a new thing today 🙂


  8. Hashfi Arissa :

    Hi Neil,

    This is rocking awesome. I will share this to my team so they don’t get lazy creating report.


  9. Hey Neil,

    Are we getting the last post soon about the $100,000 challenge?

  10. Hi Neil,

    The only sheets I understand anything about are bed sheets!

    As always, thanks for the education. Another useful thing for me to learn about.


  11. ProbloggingHq :

    Thanks! Neil for this wonderful guide on the use of Google Analytic Addon. The only reason of loving your posts are as they are written with so many details and much efforts.

    Thanks again a lot to learn from you 🙂

  12. Freddy Junior :

    Wow! … what a great add-on for Google sheets, Neil!

    I was not aware of that add-on, to be dead honest.

    I can see the benefits of using such feature and how much time it can save you.

    Especially, if you are someone who really uses Google Analytics and a Spreadsheet.

    Thank you very much for sharing this!

    I have learned something new today! 🙂


    Have a fantastic week, Neil!

  13. Had no idea this existed, thanks for spreading the word Neil! (Y)

  14. Michael Lyons :

    Neil – great article! I actually built out an extensive analytics dashboard using this a year ago. I was able to take it to the next level by pulling in our database data via the scripting function that’s available with google sheets (create a SQL view and it auto updates your google sheet). By comparing our own user data with GA data, I was able to create a much more comprehensive view of the actions being taken on our site, email interactions and performance, and by which users. It’s not as good as KissMetrics obviously because there were some data gaps, but for a company with limited resources, it was great.

  15. As a regular user of Google Sheets, and the owner of a web property that I hope to grow fairly quickly, this is great news to hear … thanks for making the Google Analytics add-on known to me!

    • You’re welcome Wayne, glad I could help. Let me know if you have any questions or if you get stuck with anything

  16. Thank you. I am amazed both how you keep coming up with too-good-to-not-read content, and go so deep on it. I appreciate every post.

  17. Maria Peagler :

    Neil – I had no idea a plugin like this existed for Google Sheets. I’m big into automating anything in my business I can, so this is awesome.

    I’ve already run this report for the last 30 days of traffic, and OMG what a lifesaver. My VA usually does this manually, but this is going to make things so much easier for her.

    I’d like to delve into the metrics a bit more and would love to see some example reports: do you have suggestions for other examples you recommend?

    Much appreciated Neil, and will be sharing this.

  18. Kylie Garner :

    Great and very helpful article!!

  19. This is the very helpful article .

  20. Great post Neil. Will add this to my analytics account.

  21. What about the ‘The $100000 Challenge’..No update this month.

  22. Thank youuuuuuuu very much, neil,
    I found your article thru your newsletter., started reading of not knowing wat google sheets had to do with GA.. Then I found the add-on button which i was not knowing, and then I found Flubaroo.. wow, the tool exactly I require for evaluating the results of my students… man, you gave me insights.. ummmaahh.

  23. Hands down one of the most useful integrations from Google, I can’t tell you how much easier my life has become now that you can directly pull the data onto a spreadsheet.

    Great article too Neil, thanks there are a few tips in here I’ll get to try soon. Keep them amazing tools coming along please 🙂

    • Perfect! Yes this will become such a huge time saver for you. Let me know if you have any questions with anything you’re learning

  24. Hi Neil,

    After edit no changes shown. Please help.

  25. The detailing study structure which you have shared here is fully informative and quality reading.

    I am a regular visitor of your blog and you do not believe every time I bounce back with something awesome in my pocket.

    keep sharing and educating..

    highly appreciated.


  26. maurizio la cava :

    Hi Neil,

    great article! It would be great if you could share some report examples that you use with your clients.


  27. Brendan McCoy :

    Great information Neil!
    I use both applications but didn’t realise they could be connected so easily.

  28. harmeet @ Web Desing Company Faridabad :

    Very informative article, I would try these tips for my clients. thanks for sharing Neil.

  29. Great article, Neil. I’m in a seasonal business and tend to use YOY comparisons in GA for benchmarks, is there a way to apply the compare feature from GA in the reports? I haven’t been able to figure it out.

  30. Had no idea about this integration! Can’t wait to play around with it this week.

  31. Ben Donahower :

    Between this post and a complementary post that Zapier came out with today,, I got a mini-course in reporting using Google Spreadsheets. Thanks!

  32. Superb post. Really help me to save a lot time to make report.

    Thanks man 🙂

  33. very useful article, Neil….

  34. uthman saheed :

    I use Google analytic but have not heard of the ads on sheet. I will consider giving it a trial with the way you just explained it here.


  35. Mudit Saxena :

    Hi Neil,

    Can SEO be considered as a good strategy for a startup ?

  36. Vikash Kumar :

    Hello Neil Patel sir . i add this to my analytics account. 🙂
    i am new reader of your blog and i Read 25+ post all post are super.
    i like your blog luv u 🙂

  37. Definitely a great guide but with blogs just started they’re literally don’t need to check too often, but learn about is great. Thanks.

  38. I will be sharing this with our marketing team since we all live and breathe Google doc and Google sheet (of course Google Analytics too!) Great stuff!

  39. Bench Mark post on Google Analytics With Google Sheet. There must be tool to convert excel into HTML (for clients ;)).

  40. Now that’s a potential time saver, I’m going to test this out. Even though I’ve built Google Analytics dashboards for each website, it can take quite a bit of time extracting that into a readable format, so this method has potential. Thanks

  41. You’re welcome. Let me know if you or they have any questions

  42. Great article, Neil. I’m in a seasonal business and tend to use YOY comparisons in GA for benchmarks, is there a way to apply the compare feature from GA in the reports? I haven’t been able to figure it out.

  43. Hi Neil,

    I couldn’t see a comments section in your advanced seo guidebook hence I am posting my query here. In the advanced SEO guidebook you have mentioned that only the private pages should have https and they should have noindex. Other than that, all the other pages of website should be http. But however, I notice that itself has all the pages in https. Can you enlighten me on the same if I understood it wrong?

    • Neil Patel :

      Check out this post Varun

  44. I love this. I made my own dashboard, with all the info I need quickly. So awesome!

  45. This is amazing to read an another blasting post from you . thanks for sharing …..

  46. Is there a way to upload 100 urls and have the GA add on go and fetch the GA data, i.e. sessions, entrances, etc.?

  47. Thanks !!!!!!!!!!!!
    This is amazing post.
    Can we create such reports for Adword data aswell using this

  48. Great tutorial Neil,

    It seems there are so many things we’re yet to learn about SEO.
    The good thing is that like you said, there are usually great tools that makes things much easier for us. I’ve never heard about this add-on before but from your post, I’m beginning to see how useful it is.

    I’ll take time to master and test it then, I’ll let you know of the outcome.

    Thanks for sharing and happy new week.

    • It does take time, and the ability to adapt to changes and circumstances

      Keep me posted on how this works out for you

  49. Great post..
    The good thing is that like you said, there are usually great tools that makes things much easier for us. I’ve never heard about this add-on before but from your post, I’m beginning to see how useful it is.

  50. I always spent my half an hour to read this web site’s content everyday along with a cup of coffee.

  51. Hello Joe and Neil, great article! Thanks!

    I’m Jonatan, co-founder of Import Sheet, I just wrote a post about how to create a historic record by freezing and appending data generated by Google Analytics add-on, using Import Sheet. It may be interesting for those who want to analyze numbers daily without doing manual work:

    It would be a pleasure to welcome you on my blog, if you can leave a comment with your impressions would be amazing!

    Thank you!

    • Thanks for sharing Jonatan. Will def check it out

      • Hi Neil,
        FYI Import Sheet is now Sheetgo
        Our company and product is growing 🙂

        Using the methodology above, I have built a marketing analysis system based on Google Sheets only using the Google Analytics and Sheetgo add-ons. In the article above I explain how to do for Content Marketing, but it’s easy to replicate for SEM, Social & Display Ads, SEO organic and Targeting Blogs, etc.

        I have a spreadsheet for each channel, and a master spreadsheet to centralize my indicators. If you got interested, I can give you a template for you to review.


  52. Hi Neil, Thanks for the article, do you know why I’m seeing sampling data in most of my reports when I use the plugin, seems that despite having GA premium the add-on adds some sampling to the report when too mac data needs to be processed.

    Let me know your thoughts,



  53. Hi Neil,

    Thank you for this great article. Is it possible to configure more than one “custom segment” created on Google Analytics on Google Add -on sheet?

    I want to show data for multiple segments on each row separately. Right now I am only able to fetch GA data for one segment at a time.

    Let me know if this is possible or any alternate solution you think would work?


  54. Neil! I’m really having trouble trying to use the google analytics add-on in google sheets to report Quarterly data. Basically, I’m trying to set a timeframe where the “start date”: the first day of the current quarter and the “end date”: the last day of the current quarter. Any help would be greatly appreciated!

  55. Thanks for this great post! I was wondering though how to get more specific about the date range. For instance to only show data for the current month (up to today). Or for only the month before. How would that look like? Wasn´t able yet to find any documentation about that…

  56. I do have an Analytics account with approx. 25 properties. So far I only can see the results of each property individually. What I need is to get the results as a summary for all properties on the account.

Speak Your Mind