Створення крос-девайс відстеження Google Analytics в Data Studio

Нещодавно в Google Analytics на вкладці «Аудиторії» з’явився новий звіт – «Різні пристрої».

Цей звіт включає в себе інформацію про всі пристрої, за допомогою яких користувачі взаємодіяли з вашим ресурсом до здійснення конверсії. Надалі цю інформацію можна використовувати як мінімум при створенні ремаркетинг-кампаній по найбільш вигідним девайсам.

Але якщо ви створюєте звіти в Data Studio, то не побачите там змін по крос-пристроям, так як цей звіт знаходиться на стадії доопрацювання.

Важливо! Якщо у вас є Google Analytics 360, то для крос-девайсного відстеження краще використовувати Google BigQuery.

Сьогодні поговоримо про те, як правильно почати роботу зі звітами по крос-девайсному відстеженні з використанням скриптів Google Sheets і Apps, щоб всі, хто працює в стандартному Google Analytics, могли відстежувати зміни.

Спочатку потрібно зосередитися на звіті DevicePath, так як звіти Device Overlap і Acquisition Device вимагають декількох змін. Для початку необхідно налаштувати User ID, створити уявлення ідентифікатора користувача в Google Analytics. Потім слід налаштувати Google Sheets і Apps Script для отриманих даних. Тільки після цього звіт почне тягнутися в Data Studio.

Крок перший: налаштування User ID і включення перегляду ідентифікатора користувача

Нам знадобиться налаштувати User ID в призначеному для користувача поданні. Зверніть увагу, що уявлень може бути не більше 20. Для тих, хто не хоче копатися і згадувати, як правильно налаштувати цю функцію, додаємо статтю за посиланням.

Після визначення своїх користувачів і налаштування відображення User ID ви зможете знайти звіти про крос-девайсне відстеження в Google Analytics.

Крок другий: налаштування Google Sheets (Проста версія)

Щоб спростити завдання, ми прикріплюємо лист для налаштування Google-таблиць, який зробить всю роботу за вас. Для отримання натисніть сюди.

Важливо! Не потрібно подавати запит на доступ до цього документа, просто виберіть пункт меню «Файл», а потім – «Створити копію».

Після того як ви відкриєте файл, потрібно буде змінити в ньому кілька пунктів. Змініть ідентифікатор уявлення на ваш, який ви налаштували на першому кроці. Його можна знайти в налаштуваннях перегляду всередині інтерфейсу Google Analytics.

Також цю настройку можна зробити в Google Analytics Sheets за допомогою меню Add-On. Тепер можна запустити звіт вже з вашою інформацією.

Крок другий: настройка Google Sheets (Складна версія)

Якщо ви хочете налаштувати передачу даних самостійно, дотримуйтесь інструкцій нижче. Створіть новий звіт в Google Sheets, вибравши Доповнення>Google Analytics> Створити новий звіт.

Ви побачите спливаючу конфігурацію звіту в правій частині нашої таблиці. Напишіть назву свого звіту і виберіть свій аккаунт, властивості і вигляд. У цьому прикладі ми будемо використовувати показники сеансів і лічильників сеансів, а потім виберемо уявлення для User ID, який ви встановили раніше, і категорію пристрою.

Ви також можете застосувати сегмент перед створенням звіту. Ми будемо використовувати для користувача визначення User ID в поєднанні з категорією пристрою, щоб визначити, через який пристрій користувач відвідував ресурс. А визначення «Кількість сеансів» допоможе нам визначити порядок взаємодії.

Вибравши у спливаючому вікні команду «Створити звіт», ви побачите нову вкладку для настройки звіту. Тут ми додамо ще кілька деталей. У рядку «Замовлення» введіть наступне:

“[{
“”fieldName””: “”ga:sessionCount””,
“”sortOrder””: “”ASCENDING””,
“”orderType””: “”DIMENSION_AS_INTEGER””
}]”

Ви можете застосовувати будь-які фільтри для ваших даних. Потрібно використовувати наступний фільтр, щоб виключити будь-які випадки, коли для користувача визначення User ID дорівнює (не встановлено):

ga:dimension1!=(not set)

Ви також можете вибрати джерело трафіку або геолокацію для орієнтування на певну аудиторію. Ось список фільтрів і операторів для довідки URL.

Після чого потрібно додати параметр в рядок рівня вибірки. Без параметра рівні вибірки будуть за замовчуванням для GA. Ви також можете використовувати FASTER, щоб отримати швидкі результати на більш високому рівні вибірки. Краще використовувати HIGHER_PRECISION для нижчого рівня вибірки, хоча запуск звіту займе більше часу.

Закінчивши налаштування, ви можете запустити звіт, вибравши Доповнення > Google Analytics > Запустити звіти (Run reports). Ви також можете запланувати автоматичне створення звітів кожну годину, день, тиждень або місяць, вибравши Доповнення> Google Analytics> Розклад звітів (Schedule reports).

Крок третій: налаштування скрипта додатків

Google Apps Scripts дозволяє запускати JavaScript в декількох додатках G Suite. Ми збираємося використовувати Apps Script для запуску даних Google Analytics, які витягли в Google Sheets, і переписати дані в шляху пристроїв. Ви знайдете Редактор скриптів в розділі Інструменти в рядку меню.

Скопіюйте та вставте наступну функцію в файл коду, щоб додати функцію getDevicePaths в свою таблицю:

function getDevicePaths(input) {

// Get Count of Session
var userDict = {};
for (var i = 0; i < input.length; i++) {
var val = input[i];
// Check to see if the user exists in the user dict
var userId = val[1];
var device = val[2];
var numSessions = val[3];
if (!device) {
continue;
}

if (userDict[userId]) {
// d is the same structure as the thing we create below in the else, it’s { path: (array of devices), numSession: (int) }
var d = userDict[userId];
// rip the path out
var path = d.path;

// If the last place they visited from is the same as the current device we are looping through, don’t add it
if (d.path[d.path.length – 1] !== device) {
d.path.push(device);
}

// Always increment the number of sessions the user took
d.numSession = d.numSession + numSessions;
} else {
userDict[userId] = {
path: [device],
numSession: 1
}
}
}

// We want to create a new representation of path dictionaries
var pathDict = {};
for (var key in userDict) {
var d = userDict[key];
var numSessions = d.numSession;
var path = d.path.join(” -> “);
if (pathDict[path]) {
var p = pathDict[path];
p.numUsers = p.numUsers + 1;
p.numSessions = p.numSessions + numSessions;
} else {
pathDict[path] = {
numUsers: 1,
numSessions: numSessions
}
}
}

var arr = [];
for (var key in pathDict) {
var p = pathDict[key];
var numSessions = p.numSessions;
var numUsers = p.numUsers;

arr.push([key, numUsers, numSessions]);
};

return arr;
}

Важливо. Обов’язково збережіть скрипт!

Скопіюйте та вставте наступну функцію в файл коду, щоб додати функцію getDeviceOverlap на свій лист:

function getDeviceOverlap(input) {

// Get Count of Users
var userDict = {};
for (var i = 0; i < input.length; i++) {
var val = input[i];
// Check to see if the user exists in the user dict
var userId = val[1];
var device = val[2];
var sessionNum = val[0];
var numSessions = val[3];
if (!device) {
continue;
}

if (userDict[userId]) {
// d is the same structure as the thing we create below in the else, it’s { path: (array of devices) }
var d = userDict[userId];
// rip the path out
var path = d.path;

// If the device already exists, don’t add it
if (d.path.indexOf(device) == -1) {
d.path.push(device);
d.path.sort();
}

} else {
userDict[userId] = {
path: [device]
}
}
}

// We want to create a new representation of path dictionaries
var pathDict = {};
for (var key in userDict) {
var d = userDict[key];
var path = d.path.join(” | “);
if (pathDict[path]) {
var p = pathDict[path];
p.numUsers = p.numUsers + 1;
} else {
pathDict[path] = {
numUsers: 1
}
}
}

var arr = [];
for (var key in pathDict) {
var p = pathDict[key];
var numUsers = p.numUsers;

arr.push([key, numUsers]);
};
return arr;
}

Тепер повертайтеся в свій Google Sheets, додайте три нові вкладки. Тут ми відтворимо таблиці Device Paths, Device Overlap і Acquisition Device. В ланці A2 ми збираємося викликати функцію з нашого скрипта, вводите:

=sort(getDevicePaths(filter(‘Device Paths’!A16:D,’Device Paths’!A16:A>0)),2,0)

Тут ми посилаємося на вкладку з усіма нашими даними Google Analytics і запускаємо дані через нашу функцію скриптів додатків. Додайте заголовки в таблицю в рядку 1, щоб позначити метрики і всі виміри.

Теж саме потрібно зробити для вкладки Device Overlap. Для цього вам знадобитися ось така формула:

=sort(getDeviceOverlap(filter(‘Device Paths’!A16:D,’Device Paths’!A16:A>0)),2,0)

Для цих розрахунків може знадобитися деякий час, особливо якщо у вас великий набір даних. Крім того, якщо ваші цифри повністю не збігаються, нічого страшного, справа в тому, що у вас можуть бути деякі невідповідності з тим, як налаштовується ваше поле User ID в порівнянні з вашим полем Custom Dimension.

Крок четвертий: підключення до Data Studio

Тепер нам просто потрібно додати Google Sheet як джерело даних в Data Studio. Відкрийте новий звіт Data Studio або додайте свою таблицю в якості нового джерела даних в існуючий звіт. Додайте таблицю до свого звіту, використовуючи Google Sheet як джерело даних, а потім виберіть вимір: кроки по шляху, а також користувачів і сеанси в якості метрик. Готово!

Використовуйте це в якості відправної точки для своїх крос-девайс звітів в Data Studio. В нашій Google Sheet представлені основні метрики для користувачів і сесій, але ви можете продовжувати використовувати їх для інших розрахунків метрик. Також у вас є можливість спробувати різні фільтри або сегменти в конфігурації звіту Google Sheets.

Джерело статті: https://bit.ly/2ByFujB