AMP-страницы загружаются из домена AMP Cache, а не из домена вашего сайта. Отслеживать пути пользователей между AMP Cache и вашим сайтом можно с помощью связывания AMP. Это функция скрипта amp-analytics, сопоставляющая сеансы пользователей по Client-ID AMP.
Связывание AMP добавляет Client-ID в исходящие ссылки на страницах AMP Cache. Затем страницы с тегом Google Analytics получают Client-ID из параметра запроса URL и добавляют его к сеансу пользователя, используя Client-ID в качестве идентификатора пользователя.
В этой статье рассказывается, как настроить связывание AMP в Google Аналитике.
Как Client-ID AMP влияет на ваши данные
Синхронизация Client-ID между AMP Cache и исходным доменом сайта повышает точность пользовательских показателей, в том числе длительности сеанса, показателя отказов и числа страниц за сеанс. Учтите, что идентификаторы клиентов AMP будут полезны только в том случае, если сбор данных происходит в одном и том же ресурсе Google Аналитики.
Как настроить связывание AMP
Чтобы настроить связывание AMP в Google Аналитике, выполните следующие действия:
- Добавьте тег на AMP-страницы
- Добавьте тег на обычные страницы
- Настройте исключения источников перехода
1. Добавьте тег, передающий параметры связывания AMP, на AMP-страницы
Установить тег Google Аналитики можно с помощью тега Google (gtag.js) или Google Менеджера тегов. Ниже приведены инструкции для каждого способа.
Вариант 1. Тег Google
Добавьте стандартный тег Google для AMP-страниц на все целевые AMP-страницы сайта. В приведенном ниже примере кода сделайте следующие изменения:
Замените MEASUREMENT_ID
идентификатором отслеживания ресурса Google Аналитики, в который нужно отправлять данные.
Если ваши AMP-страницы размещены в домене верхнего уровня, отличном от указанного в исходящих ссылках на ваш сайт или в малоизвестном субдомене (то есть не www., amp., m.), при необходимости можно включить конфигурацию связывания, как показано ниже. Добавьте домен, в котором размещена AMP-страница, а также домены, указанные в исходящих ссылках.
<script type="application/json">
{
"vars": {
"gtag_id": "MEASUREMENT_ID",
"linker": {
"domains": ["example.com", "example2.com"]
}
,
"config": {
"MEASUREMENT_ID": {
"groups": "default"
}
}
}
}
</script>
</amp-analytics>
gtag_id
можно указать идентификатор, используемый на ваших AMP-страницах, из любого сервиса Google (например, Google Реклама или Поисковая реклама 360). Но если вы используете несколько сервисов, укажите в этом поле идентификатор из одного.
Вариант 2. Google Менеджер тегов
Создайте контейнер AMP в Google Менеджере тегов
Добавьте тег Google Аналитики в контейнер AMP.
Добавьте тег связывания конверсий в контейнер AMP и выберите "Включить связывание между доменами" и "Разрешить установление связи с идентификатором клиента Google Аналитики". Если ваши целевые AMP-страницы размещены в том же домене или субдомене, что и исходящие ссылки на ваш сайт, поле доменов можно оставить пустым.
Если ваши AMP-страницы размещены в домене верхнего уровня, отличном от указанного в исходящих ссылках на ваш сайт, или в малоизвестном субдомене (то есть не www., amp., m.), при необходимости вы можете добавить домен верхнего уровня, в котором размещена AMP-страница, а также домены, указанные в исходящих ссылках, отделяя их запятыми.
Добавьте стандартный фрагмент кода Менеджера тегов на AMP-страницу (пример приведен ниже) и замените GTM_CONTAINER_ID
на свой идентификатор контейнера Менеджера тегов.
<!-- Google Tag Manager →
<amp-analytics config="https://www.googletagmanager.com/amp.json?id=< GTM_CONTAINER_ID>>m.url=SOURCE_URL" data-credentials="include">
</amp-analytics>
Шаг 2. Добавьте тег, считывающий параметры связывания AMP, на обычные страницы
Существуют разные способы добавить на обычные страницы тег, считывающий параметры связывания AMP. Выберите тот, который лучше подходит для вашей конфигурации, и следуйте инструкциям ниже.
Вариант 1. Тег Google
Добавьте фрагмент тега gtag.js в код страниц без AMP. Скопируйте приведенный ниже пример и выполните следующие действия:
- Замените
MEASUREMENT_ID
идентификатором отслеживания ресурса Google Аналитики, в который нужно отправлять данные. - Если ваши AMP-страницы размещены в домене верхнего уровня, отличном от указанного в исходящих ссылках на ваш сайт, или в малоизвестном субдомене (то есть не www., amp., m.), при необходимости можно включить конфигурацию связывания, как показано ниже. Добавьте домен, в котором размещена AMP-страница, а также домены, указанные в исходящих ссылках.
<script async src="https://www.googletagmanager.com/gtag/js?id=MEASUREMENT_ID"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('set', 'linker', {
'domains': ['example.com', 'example2.com']
});
gtag('js', new Date());
gtag('config', 'MEASUREMENT_ID');
</script>
Вариант 2. Google Менеджер тегов
В Google Менеджере тегов проверьте настройки веб-контейнера и добавьте в него тег Google Аналитики, если он отсутствует.
Если ваши AMP-страницы размещены в домене верхнего уровня, отличном от указанного в исходящих ссылках на ваш сайт, или в малоизвестном субдомене (то есть не www., amp., m.), в теге Google Аналитики добавьте поле allowLinker со значением true, выполнив действия ниже.
- Выберите переменную настроек Google Аналитики, которую нужно изменить, и нажмите на карточку Конфигурация переменной.
- Выберите Дополнительные настройки > Поля, которые необходимо задать.
- Нажмите + ПОЛЕ.
- В поле Название поля укажите allowLinker, а в поле Значение – true.
- Сохраните новую конфигурацию переменной.
- Если в контейнере используется несколько переменных настроек Google Аналитики, повторите указанные выше действия для каждой из них.
- Опубликуйте контейнер.
Добавьте стандартный код Менеджера тегов на страницы без AMP.
Вариант 3. analytics.js
Чтобы считывать параметры связывания AMP, на страницы без AMP можно добавить стандартный код analytics.js.
<!-- Google Analytics -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'GA_TRACKING_ID', 'auto');
ga('send', 'pageview');
</script>
<!-- End Google Analytics -->
Если ваши AMP-страницы размещены в домене верхнего уровня, отличном от указанного в исходящих ссылках на ваш сайт, или в малоизвестном субдомене (то есть не www., amp., m.), при необходимости можно добавить указанную ниже конфигурацию, как описано в инструкциях по настройке междоменного отслеживания с помощью analytics.js.
<!-- Google Analytics -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'GA_TRACKING_ID', 'auto', {'allowLinker': true});
ga('require', 'linker');
ga('linker:autoLink', ['subdomain1.example.com', 'subdomain2.example.com','www.example2.com'] );
ga('send', 'pageview');
</script>
<!-- End Google Analytics -->
Шаг 3. Добавьте исключения источников перехода в консоли администратора Google Аналитики
При показе AMP-контента сервисы Google используют Google AMP Cache. Чтобы сеансы не прерывались из-за субдоменов кешированных AMP-страниц, необходимо добавить исключения источников перехода для домена cdn.ampproject.org
.
subdomain.example.com
, добавьте исключение для subdomain-example-com.cdn.ampproject.org
. Подробнее о формате URL AMP Cache…Как проверить настройки
Убедитесь, что Client-ID Google AMP, используемые на AMP-страницах, совпадают с используемыми на обычных страницах.
Вариант 1. Подтверждение с помощью инструмента тестирования тега AMP
Чтобы пройти проверку, используйте инструмент тестирования тега AMP и введите URL AMP-страницы.
Примечание. Инструмент тестирования тега AMP – это автоматизированная функция проверки, симулирующая поток данных из AMP-страницы, которая показывается через средство просмотра, к ссылке на следующую страницу. Этот инструмент не включает все сценарии тестирования (например, ситуацию, когда AMP-страница имеет ссылки на различные домены или субдомены). Для тестирования вручную используйте варианты ниже.
Вариант 2. Проверка с помощью расширения Google Tag Assistant для Chrome
- Скачайте и установите расширение Google Tag Assistant для Chrome
- Введите на google.com поисковый запрос, по которому будет возвращена AMP-страница вашего сайта.
- Начните запись с помощью функции Google Tag Assistant Recordings.
- После начала записи обновите страницу браузера с результатами поиска.
- Нажмите на результат поиска, указывающий на вашу AMP-страницу.
- Нажмите на ссылку, ведущую с AMP-страницы на обычную страницу.
- Завершите запись.
- Убедитесь, что зарегистрировался только один сеанс и в нем используются одинаковые идентификаторы, как показано в примере ниже. В пункте Page Load 2 (Загрузка страницы 2) не должно быть пометки Session Start (Начало сеанса).
Вариант 3. Проверка с помощью Инструментов разработчика в Chrome
- Запустите браузер Google Chrome в режиме инкогнито. Включите эмулятор мобильного устройства в Инструментах разработчика в Chrome.
- Введите на google.com поисковый запрос, по которому будет возвращена AMP-страница вашего сайта. Нажмите на нее в результатах поиска. Страница должна загрузиться из Google AMP Cache и отобразиться в средстве просмотра AMP для Google Поиска.
- Примечание. Если ваша страница ещё не показывается в результатах Google Поиска, вы можете выполнить проверку с помощью инструмента Проверка AMP-страниц. В нем можно увидеть результаты поиска и выполнить следующие шаги, пока Google не проиндексирует страницу.
- Найдите запрос сети Google Аналитики для просмотра AMP-страницы: откройте Инструменты разработчика в Chrome, нажмите на вкладку Network (Сеть) и в поле Filter (Фильтр) укажите значение collect.
- Найдите и выберите запрос сети с переходом на
www.google-analytics.com
. Перейдите на вкладку Headers (Заголовки) и прокрутите страницу до раздела Query String Parameters (Параметры строки запроса), чтобы найти идентификатор клиента. Запишите значение параметра cid. - Если AMP-страница показывается с помощью средства просмотра AMP, параметр
cid
должен представлять собой строку в формате base64 длиной 64 символа: - Чтобы удалить запросы сети, нажмите Clear (Очистить).
- Чтобы проверить настройки показа страниц без AMP, убедитесь, что при переходе на обычную страницу значение параметра cid не меняется. Для этого нажмите на любую ссылку, ведущую с AMP-страницы на обычную страницу в вашем домене. Чтобы найти идентификатор клиента, ещё раз выполните фильтрацию по параметру collect. Выберите любой запрос сети с переходом на
www.google-analytics.com
. Убедитесь, что значение cid совпадает со значением, которое вы записали на шаге 5.
Ограничения
- Объединение сеансов с помощью связывания AMP не сработает, если пользователь, оказавшийся на AMP-странице впервые, закроет ее до того, как перейдет на следующую. Это обусловлено тем, что объединение сеансов работает за счет пометки ссылки.