Передача поисковых фраз из «Яндекс.Метрики» в Google Analytics
Веб-аналитик агентства One Touch Дарья Тимакова поделилась с Cossa.ru опытом переноса поисковых слов из «Метрики» в Google Analytics, который их зашифровывает так, что скрытыми могут оказаться вплоть до 99% фраз.
C осени 2011 года Google, мотивируя свои действия попыткой защитить пользователей, приступил к шифрованию ключевых слов, по которым посетители попадают на сайты. Поисковые фразы начали постепенно заменяться значением «not provided».
На данный момент сегмент «not provided» может скрывать в себе до 99% ключевых слов.
Владельцы веб-сайтов не видят, что ищут посетители и по каким фразам переходят из результатов поиска Google. В скором времени к шифрованию поисковых запросов приступает и «Яндекс». В то время как статистика поисковых запросов по-прежнему остается доступна в «Яндекс.Метрике» и «Яндекс.Вебмастере», в системе Google Analytics ключевые фразы из «Яндекса» начинают заменяться фразой «not set».
Google Analytics является более мощной и гибкой системой аналитики благодаря таким преимуществам, как фильтрация, сегментация, отслеживание событий, возможность применения регулярных выражений, отслеживание электронной торговли и т. д. Поэтому мы поставили перед собой задачу — найти способ добавления в Google Analytics ключевых фраз, по которым пользователи пришли на сайт из поисковой системы «Яндекс». Решение данной задачи позволит лучше понять, что искали пользователи, посетившие сайт, и нашли ли они то, что искали.
В ходе поисков путей передачи ключевых слов из одной системы аналитики в другую необходимо было решить 3 проблемы:
- Идентификация и сопоставление пользователей в обоих системах аналитики, чтобы ключевая фраза записалась тому же посетителю Google Analytics у которого она была получена из «Метрики»;
- Экспорт данных из «Метрики»;
- Импорт данных в Google Analytics.
Сопоставление пользователей
Для распознавания пользователей в обоих системах аналитики используется уникальный идентификатор клиента. Это случайно сгенерированный номер, хранящийся в cookie Google Analytics пользователя, посетившего сайт.
После внесения изменений в код, счетчики начинают работать так, что в начале каждого сеанса идентификатор берется из cookie с помощью кода Google Analytics и передается в «Яндекс.Метрику» через параметры визита.
Экспорт данных
Экспорт поисковых фраз осуществляется с помощью API. Ежедневно из «Метрики» выгружаются пары ключевых слов и соответствующих им уникальных идентификаторов пользователей.
Импорт данных
Поисковые слова импортируются в Google Analytics с помощью Measurement Protocol. Данный протокол позволяет передавать статические данные с клиентского компьютера на сервер в виде HTTP-запросов.
Каждая пара, экспортированная из «Метрики», используется в качестве параметров HTTP-запроса и с помощью Measurement Protocol записывает поисковую фразу в Google Analytics посетителю с соответствующим уникальным идентификатором.
Пример передачи фраз
Данные о ключевых словах пользователей, пришедших на сайт из поисковой системы «Яндекс», в системе аналитики Google Analytics: 90% не определено.
Данные о ключевых словах пользователей, пришедших на сайт из поисковой системы «Яндекс», в системе аналитики «Яндекс.Метрика».
Данные о ключевых словах пользователей, пришедших на сайт из поисковой системы «Яндекс», в системе аналитики Google Analytics после передачи информации из «Метрики».
Как видно из скриншотов, фраза «not set» расшифрована. Полученные данные легко сегментируются и дают дополнительные возможности в оценке эффективности поисковых кампаний.
Источник картинки на тизере: Depositphotos
https://monosnap.com/file/NmfCOe0rjMk1N6mZa2VhW4vMZUiokg
По поводу корректности и работоспособности кода приведённого по ссылке, к сожалению, сказать ничего не могу, я с таким вариантом получения clientID не сталкивалась.
Вы предлагаете поисковые запросы из Яндекс добавлять в Google Analytics по ClientId.
Один ClientId в течении времени, может создать несколько сессий с разными поисковыми запросами!
Какой поисковый запрос, из всех сессий для ClientId из Яндекса, к какой сессии в Google Analytics вы прикрепите?
Вы предлагаете поисковые запросы из Яндекс добавлять в Google Analytics по ClientId.
Один ClientId в течении времени, может создать несколько сессий с разными поисковыми запросами!
Какой поисковый запрос, из всех сессий для ClientId из Яндекса, к какой сессии в Google Analytics вы прикрепите?
С помощью clientID переданная ключевая фраза "закрепляется" не за сеансом, а за посетителем.
Данные выгружаются раз в день, за предыдущие сутки. Передаются все ключевые фразы, по которым каждый из посетителей заходил на сайт.
Если в течении дня пользователь посещал сайт несколько раз по одной поисковой фразе, то это также будет отображено.
Вы, случайно, не планируете сделать пост с более полным описанием технического решения? На Хабре, например.
Статья с описанием технического решения в планах есть, к сожалению, пока не могу сориентировать по срокам. Вероятно, в течение пары недель.
Целью этой статьи было донести идею и возможность создания подобного функционала. Для его полной реализации нужны навыки веб-программирования и опыт работы с системами аналитики.
Застрял на этапе экспорта из метрики - никак не могу найти точек соприкосновения у ключевых слов с переданным clientId из аналитикса(пробовал выводить отчеты "параметры визитов" и "поисковые фразы"), пересмотрел, кажется, весь хелп по апи метрики. Быть может, я не туда "копаю". Подскажите пожалуйста, как можно собрать эти данные в одну кучу?
Застрял на этапе экспорта из метрики - никак не могу найти точек соприкосновения у ключевых слов с переданным clientId из аналитикса(пробовал выводить отчеты "параметры визитов" и "поисковые фразы"), пересмотрел, кажется, весь хелп по апи метрики. Быть может, я не туда "копаю". Подскажите пожалуйста, как можно собрать эти данные в одну кучу?
Данные можно собрать в одну кучу с помощью метода по ссылке https://tech.yandex.ru/metrika/doc/beta/api_v1/data-docpage/
dimensions=ym:s:searchPhrase,ym:s:paramsLevel2
metrics=ym:s:visits
filters=ym:s:%3Cattribution%3ESourceEngineName==%27%D0%AF%D0%BD%D0%B4%D0%B5%D0%BA%D1%81%27%20AND%20ym:s:paramsLevel1==%27userId%27
Не забудьте userId заменить на название ваших параметров визитов. Удачи.
Событие, вызванное MP привязывается к той дате, когда оно сработало. Поэтому, чтобы не было путаницы, ежедневно рано утром мы выгружаем данные за предыдущие сутки и передаём в GA. Получается, ключевые фразы приходят в систему с "опозданием" в один день.
Мы не передаём через MP протокол параметры Document location URL или Document Path , поэтому с данной проблемой не сталкиваемся. Данные в GA передаются не просмотром страницы, а событием.
Подскажите пожалуйста, 'cid' => $query['client_id'], данная строка берет все client id, а не только один конкретный? как понять, что данные берутся из метрики? не совсем понятно, что делает эта строка. Не могли бы вы пояснить, каким образом импортированные данные из Метрики загружаются через MP в Analytics?
Параметры "ключевая фраза Директа" и "параметр визита" не группируются и в интерфейсе Метрики, возможно, поэтому они не выгружаются парно по API.
Может вам подойдёт передача данных о посещениях с Директа с помощью utm-меток?
Я вроде выше всё подробно расписывала