Дублирование событий Google Analytics в Яндекс Метрику

Бывает, придешь на работу, сядешь за стол, включишь компьютер, откроешь браузер, зайдешь в Google Analytics, нальешь чайку с лимоном, и вдруг так сильно-сильно с бергамотом захочется.

А иногда, как аналитика в голову ударит, и думаешь, почему это люди Яндекс Метрику не используют? Вроде и Logs API у них есть, и семплинг там почти нереально поймать, и под блокировки она не попадала, и стоит почти у всех с основания. Так вот, на случай, если когда-нибудь захотите перейти, рассказываю, как подготовить почву и передать в Яндекс Метрику все события, которые сейчас у вас уходят в Аналитикс.

Делать будем через горячо любимый финнами customTask.

Отправка событий в Яндекс Метрику

Как грится, не откладывай на следующий абзац то, что можешь написать в этом, так что сразу привожу код нужного customTask, причем с передачей client ID в Analytics, чтобы вы ни в чем себе не отказывали:

 1 2 3 4 5 6 7 8 91011121314151617181920212223242526272829
function() {
  
  return function(counter) {
    // Client ID по привыке в первый параметр
    counter.set('dimension1', counter.get('clientId'));
    
    // Проверяем, является ли хит событием
    if ('event' === counter.get('hitType')) {
      counter.set('sendHitTask', function(payload) {
        var siteInfo = {};
        var Event = {};
        
        // Воруем параметры события
        Event.Category = payload.get('eventCategory');
        Event.Action = payload.get('eventAction');
        Event.Label = payload.get('eventLabel');

        siteInfo.Event = Event;
        // console.table(siteInfo);
      
        // Отправляем хит в метрику
        // YM_ID - константа с номером счетчика метрики
        new Image().src = 'https://mc.yandex.ru/watch/' + {{YM_ID}} +
          '/?site-info=' + encodeURIComponent(JSON.stringify(siteInfo)) +
          '&z=' + Math.random();
      })
    }
  }
}

Меняем {{YM_ID}} на свой идентификатор Метрики, сохраняем код в переменную типа “Собственный код Javascript” под названием, например, duplicateEvent и добавляем в нужный тег.

Передача события в Google Tag Manager

Или сразу в переменную настроек Google Analytics, потому что код, хоть и без высшего образования, но сам тип хита определить в состоянии.

Передача события в Google Tag Manager

Просмотр событий в Яндекс Метрике

Теперь в интерфейсе Яндекс Метрики можно делить людей на две и более категории, как мы все любим.

Сегмент по событиям в Яндекс Метрике

Или просто вывести всё одной кучей.

События в Яндекс Метрике
comments powered by Disqus