Log in to your account
Sign up

Tracking Google Sheets Views With Google Analytics

13 December 2017 | 0 comments | Posted by Che Kohler in nichemarket Advice

Tracking visits to your Google Sheet

So you've gotten used to Google Analytics and have been happily tracking your visitors (or page views) on your website, but the buck usually stops there. Any property you do not personally own can't be tracked, and you may be losing out on valuable insights. If you're someone who uses GA sheets extensively especially for external use like creating templates then you would want to know how well they're doing, right?

The way I see it you have two options, one option is to just give up on gathering that data or try option two with a little bit of grit you can track views inside Google Spreadsheets. All you would need to do is insert a little snippet of tracking code inside your spreadsheet, and when someone opens the sheet, that visit will be recorded permanently in your Google Analytics account.

Tracking within properties, you do not own

Google Analytics provides a JavaScript snippet that can be inserted into web templates for tracking visits. The visit is recorded as an “event” and not a “page view”, and thus your spreadsheet opens will not artificially inflate your Google Analytics reports by adding the additional page views.

How to track Google sheet views

  1. To get started you will need to have your Google Analytics tracking ID on hand.
  2. Next open any Google Spreadsheet that you wish to track and go to Tools, Script Editor and copy-paste the following code. This is a custom Google Spreadsheet function that will embed the 1×1 tracking GIF image in our spreadsheets.

* Track Spreadsheet views with Google Analytics
* @param {string} gaaccount Google Analytics Account like UA-1234-56.
* @param {string} spreadsheet Name of the Google Spreadsheet.
* @param {string} sheetname Name of individual Google Sheet.
* @return The 1x1 tracking GIF image
* @customfunction

function GOOGLEANALYTICS(gaaccount, spreadsheet, sheetname) {

* Written by Amit Agarwal
* Web: www.ctrlq.org
* Email: amit@labnol.org

var imageURL = [
"&tid=" + gaaccount,
"&cid=" + Utilities.getUuid(),
"&z=" + Math.round(Date.now() / 1000).toString(),
"&ec=" + encodeURIComponent("Google Spreadsheets"),
"&ea=" + encodeURIComponent(spreadsheet || "Spreadsheet"),
"&el=" + encodeURIComponent(sheetname || "Sheet")

return imageURL;


  1. Save the code, close the Apps Script editor window and return to the spreadsheet.
  2. Click an empty cell and insert the following formula. The cell will be blank, but it contains an embedded image.
Note: You may want to change the background colour so it is easy to figure out which cell in the spreadsheet contains the tracking formula.

The GOOGLEANALYTICS() formula takes three parameters – the analytics ID, the spreadsheet name and the sheet name. This helps if you would like to track individual sheets inside a spreadsheet separately.

Test your tracking

Now open the spreadsheet in a new browser window and go to Google Analytics, Real Time, Overview to test if the tracking is working. If you would like to see all the visits and historical data, go to Behavior – Events – Overview and click on the Google Spreadsheets category.

For those trying to mask their usage

This tracking method will work even if the user has enabled ad blocking because of they way google Google Spreadsheets is set up. Like Gmail, Google sheets serves images through a proxy server. The downside is that you will never know the location of the visitor since all visits will show up as United States (the location of Google servers).

For more uses for this method check out our post - How To Track Email Open Rate With Google Analytics

Contact us

If you want to know more about tracking options for your site, don’t be shy we’re happy to assist. Simply contact us

Tags: google analytics, Google sheets

Previous: {{ previousBlog.sTitle }}

Posted {{ previousBlog.dtDatePosting }}

Next: {{ nextBlog.sTitle }}

Posted {{ nextBlog.dtDatePosting }}

You might also like

Twitter doubles its Tweet character limit

Twitter increase character limit to 280. We ask Why? + Hack for early access!

28 September 2017

Posted by Shamima Ahmed in nichemarket Advice

We take a look at the internet's reaction to Twitter's increase in character limit! Hack for those who want early access included!

Read more
custom number plate south africa cost

How Much Does A Personalised Number Plate Cost In South Africa

19 February 2019

Posted by Che Kohler in Petrol heads

A look at what it currently costs to personalise your vehicles number plate in South Africa with a detailed break down on costs for specific custom r...

Read more

Leave us a comment


{{comment.iDayLastEdit}} day ago

{{comment.iDayLastEdit}} days ago


Sign up for our newsletter