Отслеживание просмотров Google Таблиц в Google Analytics через GA Beacon

и черновик Measurement Protocol для Google Apps Script

Отслеживание просмотров Google Таблиц в Google Analytics через GA Beacon

и черновик Measurement Protocol для Google Apps Script

Было время, когда вы могли включить отслеживание Google Analytics в Google Документах (​​теперь это сервис “Google Диск”).

К сожалению, эта фича давно уже недоступна, а сам Google советует встраивать документы в веб-страницы и трекать Analytics’ом сами эти страницы. Для тех, у кого много Таблиц, это несовсем удобно и работоспособно. Например, я могу встроить ссылку на страницу сайта и отслеживать клики, но при условии, что доступ к файлу можно получить и вне моего ресурса, где уже нет возможности отслеживания.

Отчасти проблема заключается в том, что Google Analytics преимущественно использует встроенный JavaScript для связи при просмотре страницы. Учитывая разнообразие взаимодействий, Google Analytics также предоставляет Measurement Protocol для разработчиков, чтобы отправлять данные отслеживания другими способами с помощью HTTP POST или GET. Не углубляясь в техническую сторону, это действительно открывает путь для отслеживания в Документах Google, Таблицах и ​​Формах с помощью Google Apps Script.

Скрипт приложений включает в себя как триггеры, такие как onOpen, так и сервис URL Fetch, которые позволят вам отправлять данные в протокол измерений (и этот сниппет подходит для этого). Прежде чем вы начнете реализовывать это во всех своих проектах, вам нужно знать о двух проблемах:

  1. Вызовы URL Fetch квотируются с помощью количественной выборки за день и общей продолжительности выполнения (текущие квоты для Google Apps Script).
  2. Служба URLFetch требует авторизации до ее запуска. Это означает, что он не может отправлять данные, если пользователь не дал разрешение. Поэтому, если вы настраиваете очередную новую Таблицу, Google Analytics будет проверяться только после того, как сделаете копию (обычно, такие программы держат в шаблоне) и однажды разрешаете выполнение скрипта.

Вместо этого посмотрите в сторону beacon

Но не все потеряно. Недавно я столкнулся с Google Analytics Beacon:

Иногда невозможно встроить код отслеживания JavaScript, предоставляемый Google Analytics: на главной странице не разрешается произвольный JavaScript, или иная интеграция с Google Analytics отсутствует. Однако не все потеряно! Если вы можете встроить простой образ (отслеживать передачу набора пикселей), вы можете получать данные маяка в Google Analytics.

Это проект Гуглера Ilya Grigorik, который позволяет отслеживать встроенное изображение, привязанное к службое Google App Engine, делая вызовы по Measurement Protocol для вас. Для этого, когда кто-то просматривает страницу, изображение для него должно быть отправлено из службы App Engine. Существуют также ограничения и в этом подходе – связи посетителей и данные рефералов теряются.

В Google Диске нам легко вставить изображение в различные приложения, включая Документы и Презентации, и даже добавлять их как “по URL”. К сожалению, эти приложения создают копии вставляемого изображения, а не используют непосредственную ссылку по заданному URL-адресу. Аномалией в этом поведении – Таблицы Google. Таблицы позволяют добавить изображение через функцию IMAGE. В обоих случаях изображение передается с URL-адреса, который вы указываете, и мы можем кое-что отслеживать.

Использование Ваставка > Изображение

Используя инструкцию по настройке GA Beacon, вы сможете создать учетную запись Google Analytics и создать URL-адрес изображения, навроде

https://ga-beacon.appspot.com/UA-XXXXX-X/sheets/UNIQUE_ID

Не забудьте использовать свой собственный идентификатор отслеживания. sheets и UNIQUE_ID могут быть любыми, на ваш вкус.

Используя “Вставка” > “Изображение” и выбрав “по URL”, вы можете добавить маяк GA на лист (вы можете проверить, что вы собираете данные, войдя в Google Analytics и просматривая отчеты в режиме реального времени). Теперь каждый раз, когда лист открывается и изображение можно просмотреть, визит будет засчитан в Google Analytics. URL-адрес изображения фиксируется так, что даже если была сделана копия – пока изображение не будет удалено, вы будете получать данные отслеживания. Помните, что этот способ не будет работать для Новых Таблиц, но следующий метод работает и, на мой взгляд, лучше.

Использование варианта получше – формула IMAGE

Использование формулы IMAGE будет работать точно так же, используя тот же URL-адрес изображения, что и выше. Есть пара полезных вещей, которые мы можем добавить. Поскольку это формула, адрес изображения может иметь идентификатор, который каким-то образом вычисляется. Например, использование небольшого скрипта включает в себя ключ листа и локаль в URL-адресе изображения (чтобы включить его в свой собственный проект, откройте Таблицу, а затем “Инструменты” > “Редактор сценариев” и вставьте код):

function getGABeacon(tid) {
  var id = SpreadsheetApp.getActiveSpreadsheet().getId();
  var locale = SpreadsheetApp.getActiveSpreadsheet().getSpreadsheetLocale();
  return 'https://ga-beacon.appspot.com/' + tid + '/sheets/' + id + '/' + locale;
}

Теперь на Листе мы можем использовать формулу, например,

=IMAGE(getGABeacon("UA-XXXXX-X"))

Вы можете увидеть уже готовый пример в этой Талице. Ссылка сразу предлагает сделать копию, чтобы понять, как это работает. В качестве дополнительного бонуса методы скриптов, используемые в этом примере, не требуют авторизации, поэтому данные отслеживания (ограниченные просмотром просмотров) записываются для всех, кто открывает Таблицу.

Заметки. GA Beacon в какой-то момент отказался от использования изображения SVG по умолчанию, которое несовместимо со старой версией Google Таблиц. В этом случае Трекинг по-прежнему работает, но возвращается ошибку #N/A. Чтобы обойти это, я попросил добавить ?gif к URL-адресу маяка. Чтобы использовать это, вы можете добавить + ‘?gif’ в скрипт или использовать формулу =image(getGABeacon("UA-XXXXX-X")&"?gif"). Также помните, что сейчас Таблицы способны на тяжелое кэширование формул, поэтому, используя эту технику для отслеживания повторяющихся данных, вы должны добавить ссылку на ячейку, которую вы знаете, будет отредактирована, чтобы получить фактический идентификатор электронной таблицы, например =image(getGABeacon(“UA-XXXXxxxxxx-X”,A1))

Итак, теперь вы можете отслеживать просмотры Google Таблиц, использования изображение в ячейке!

Это перевод статьи https://mashe.hawksey.info/2014/02/tracking-google-sheet-views-with-google-analytics/

Заметки

Do I have to use ga-beacon.appspot.com? You can if you want to - it’s free, but there are no capacity or availability promises. For best results, deploy your own instance directly on Google App Engine: clone this repository, change the project name, and deploy your own instance - easy as that. The project is under MIT license. Analytics

comments powered by Disqus