404 ошибка яндекс метрика

В предыдущем материале вы узнали, как вместе с JavaScript-событием можно отправлять дополнительные параметры визита в Яндекс.Метрику. В этой статье речь пойдет об отслеживании 404 ошибок с помощью события и параметров визита с использованием Google Tag Manager и без него.

О 404 ошибках

В моем блоге есть несколько публикаций на данную тему.

  • Отслеживание 404 ошибок в Universal Analytics
  • Отслеживание 404 ошибок в Universal Analytics с помощью Google Tag Manager
  • Отслеживание 404 ошибок в Google Analytics 4

Я рекомендую прочитать их всех перед тем, как вы начнете настройку 404 ошибок для Яндекс.Метрики, поскольку основные принципы отслеживания заложены именно там.

Когда пользователь переходит на сайт по неверной ссылке или на несуществующую страницу, он может увидеть сообщение о 404 ошибке. Решив, что ваш сайт не работает, он может быстро покинуть его, не совершив никаких полезных для вас действий.

Пример страницы с 404 ошибкой

Существует множество причин появления 404 ошибок:

  • был введен неверный URL-адрес;
  • битая ссылка (перестала работать);
  • адрес страницы был изменен (в этом случае поможет 301 редирект, который указывает роботам ПС, что страница перемещена по новому адресу, а старый адрес следует считать устаревшим);
  • контент запрашиваемой страницы по какой-либо причине может быть скрыт от пользователей, а перенаправление идет на 404 страницу;
  • страница была удалена или прекращено существование всего сайта;
  • целенаправленная DDoS-атака/взлом с целью дестабилизации.

Примечание: встречаются различные сообщения 404 — 404 ошибка, 404 Not Found, 404 Error, HTTP 404 Not Found, Страница не найдена, The page cannot be found, The requested URL was not found on this server и т.д.

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

Для отслеживания 404 ошибок в Яндекс.Метрике вы можете пойти одним из трех представленных путей:

  1. использовать стандартный отчет по страницам в интерфейсе Яндекс.Метрики;
  2. использовать JavaScript-событие и параметры визита (все настройки выполняются напрямую);
  3. использовать JavaScript-событие и параметры визита (все настройки выполняются через Google Tag Manager).

Давайте рассмотрим каждый вариант подробнее.

№1. Отслеживание 404 ошибок с помощью стандартного отчета

Если на вашем сайте есть отдельная страница с 404 ошибкой, на которую попадают пользователи, и в ее заголовке присутствует специальное обозначение, которое отличает ее ото всех других страниц вашего сайта, вы можете отслеживать такие переходы с помощью стандартного отчета Яндекс.Метрики. Например, на моем сайте в заголовке страницы (title) на странице с 404 ошибкой написано Страница не найдена:

Заголовок страницы с 404 ошибкой — Страница не найдена

Отчет в Яндекс.Метрике находится в разделе Отчеты — Содержание — Заголовки страниц:

Отчеты — Содержание — Заголовки страниц

Открыв его, сразу же добавьте в отчет через Группировки параметры Заголовок страницы, Адрес страницы и Реферер:

Группировки — Заголовок страницы, Адрес страницы и Реферер

Реферер содержит URL источника запроса. Например, если пользователь перейдет с одной страницы на другую, реферер будет содержать адрес его первой страницы посещения. Заголовок страницы берется из элемента title, а Адрес страницы отображает текущий URL-страницы.

Сверху над таблицей выберите линейный список и в поле поиска введите заголовок страницы 404 ошибки, чтобы отфильтровать данные:

Страница 404 в отчете Яндекс.Метрики

Таким образом, в отчете останутся только те страницы, которые имеют 404 ошибку. Поскольку дополнительно вы добавили параметры Адрес страницы и Реферер, то вы можете проанализировать адреса несуществующих страниц, на которые попадают ваши посетители, а также узнать, откуда они переходят на эти страницы.

Если вам неудобно анализировать данные в самой Яндекс.Метрике, вы можете выгрузить эти данные к себе на компьютер с помощью экспорта в форматы .xlsx или .csv:

Выгрузка данных из Яндекс.Метрики

А затем открыть эту таблицу в Excel, чтобы легко привести статистику в нужный вид, увидеть список несуществующих URL за выбранный диапазон дат и отфильтровать/подсветить какие-то значения:

Пример страниц с 404 ошибкой в Microsoft Excel

Это самый простой способ отслеживания 404 ошибок в Яндекс.Метрике с помощью встроенного отчета, без использования диспетчера тегов Google, JavaScript-события, параметров визитов и дополнительных конструкций/кодов, когда на вашем сайте есть отдельная страница 404.

№2. Отслеживание 404 ошибок напрямую (JavaScript-событие + параметры визитов)

Если ваш код счетчика Яндекс.Метрики и все настройки выполняются напрямую (без использования Google Tag Manager и других систем управления тегами), тогда вам необходимо выполнить следующее:

— перейдите в раздел Цели и создайте цель типа JavaScript-событие. Задайте название цели и добавьте идентификатор. Например: Отслеживание 404 ошибок и 404error:

Создание JavaScript-события

Скопируйте код цели для сайта. Чуть ниже мы модифицируем эту конструкцию.

На следующем этапе вам может понадобиться помощь разработчика, который добавит нижеприведенный скрипт в исходный код шаблона вашей 404-страницы. Как правило, в большинстве CMS-движков присутствует отдельный шаблон страницы 404. Например, в моем блоге (сделан на WordPress) на хостинге лежит файл 404.php:

Шаблон отдельный страницы 404.php (WordPress)

Открыв его, я увижу исходный код страницы:

Исходный код файла 404.php

Именно сюда вам или вашему программисту необходимо будет добавить такой код:

<script type=«text/javascript»>

var ref = document.referrer;

var url = document.location.href;

var params404 = {‘404 ошибка’: {‘URL-адрес’: url, ‘Реферер’: ref}};

ym(XXXXXXXX, ‘reachGoal’, ‘404error’, params404);

</script>

, где:

  • var ref = document.referrer — переменная ref, которой присваивается URI страницы, с которой был совершен переход на текущую 404 страницу;
  • var url = document.location.href — переменная url, которой присваивается значение всего URL-адреса текущей страницы из браузера пользователя;
  • var params404 = {‘404 ошибка’: {‘URL-адрес’: url, ‘Реферер’: ref}} — создается JavaScript-объект, в котором с помощью иерархической структуры передается два параметра визита — URL-адрес со значением, извлеченным из переменной url, и Реферер со значением, извлеченным из переменной ref.
  • ym(XXXXXXXX, ‘reachGoal’, ‘404error’, params404) — конструкция JavaScript-события с дополнительным аргументом params404, а XXXXXXXX — идентификатор вашего счетчика Яндекс.Метрики.

Этот код вставьте в шаблон вашей 404 страницы и сохраните изменения. После этого, при посещении несуществующей страницы в Яндекс.Метрику будет отправляться информация о событии 404error и дополнительных параметрах визита — URL-адресах таких страниц и их источниках (реферере).

Проверить корректность передачи данных можно несколькими способами:

  • добавить к URL-адресу с 404 ошибкой параметр _ym_debug со значением 1. Например, https://osipenkov.ru/takoj-stranicy-net/?_ym_debug=1

Далее необходимо вызвать консоль разработчика и перейти на вкладку Console. Вы должны увидеть строчку с PageView. Counter XXXXXXXX. Это первый хит на странице, свидетельствующий о просмотре страницы. Совершив отслеживаемое событие, вы увидите другую строчку с методом Reach goal. Если у вас есть возможность перейти на несуществующий URL-адрес с другого источника, тогда и параметру визита Реферер присвоится значение.

Отслеживание события 404 ошибки с идентификатором цели и параметрами визита

В моем примере я совершил переход с сайта http://techniqa.ru/ на страницу https://osipenkov.ru/takoj-stranicy-net/, которой на моем сайте нет. Поэтому зарегистрировалось событие 404 и вместе с ним передалось два параметра визита.

  • использовать готовое расширение для браузера. Например, Yandex Metrica Debugger или Яндекс.Метрика Инспектор.

Активировав одно из них, вы можете открыть консоль разработчика, перейти на вкладку с данным расширением и совершить на сайте настроенное событие. Оно также должно отобразится в списке событий с параметром визита:

Отслеживание события 404 ошибки с идентификатором цели и параметрами визита (Yandex.Metrica Inspector)

Если вы не видите ваше событие и переданные параметры визита, то, скорее всего, у вас проблема другого рода — ошибка Uncaught ReferenceError: ym is not defined.

Uncaught ReferenceError: ym is not defined

У Ивана Иванова, автора блога prometriki.ru, есть хорошая статья на эту тему. В ней он описывает причину возникновения такой ошибки и способ ее решения. Если кратко, то ошибка ym is not defined чаще всего возникает тогда, когда отправка данных о достижении цели методом reachGoal выполняется до того, как счетчик Яндекс Метрики был инициализирован (доступен) на странице. Используя код Иванова с интервальной проверкой, вы точно будете уверены в том, что счетчик Яндекс.Метрики будет загружен раньше остальных, а затем отправится JavaScript-событие с необходимыми параметрами.

Для своего сайта и примера я его чуть изменил:

<script>

var ref = document.referrer;

var url = document.location.href;

var params404 = {‘404 ошибка’: {‘URL-адрес’: url, ‘Реферер’: ref}};

(function () {

var ee = setInterval(function () {

if (typeof window.ym != ‘undefined’) {

ym(33437348,‘reachGoal’,‘404error’, params404);

clearInterval(ee);

} else {

console.log(‘Метрика не инициализирована’);

}

}, 500); // 0,5 секунды ждать, изменить на свое значение, 1 сек = 1000

})();

</script>

Общее количество достигнутых целей по 404 ошибке можно посмотреть в отчете Конверсии:

Отчет «Конверсии»

Адреса 404-х страниц и их рефереров через некоторое время отобразятся в отчете Параметры визитов (Отчет — Содержание — Параметры визитов):

Отслеживание 404 ошибок в Яндекс.Метрике

Из отчета может быть удалена часть данных, поскольку детализация до уровня отдельных визитов и посетителей в Яндекс.Метрике отключена для исключения рисков деанонимизации пользователей. Показываются только строки с информацией не менее чем по 10 посетителям. Об этом свидетельствует соответствующая надпись над отчетом:

Чувствительные данные

Иногда на количество данных (их увеличению) в отчете Параметры визитов можно повлиять с помощью выключения метрики Роботность над отчетом:

Метрика «Роботность» (выкл.)

В официальном блоге Яндекса показан вариант создание JavaScript-объекта чуть другой вложенности:

<script type=«text/javascript»>

var

ref = document.referrer; //записываем в переменную ref значение реферера

siteurl = document.location.href; //записываем в переменную siteurl адрес просмотренной страницы

visitParams = {‘NotFoundURL’: {[siteurl]:{Реферер:ref}} }; //записываем в переменную visitParams иерархию с параметрами

ym(7777777, ‘reachGoal’, ‘404error’, visitParams); //достигаем цель на посещение страницы 404 и передаем в параметрах визитов URL-адрес 404 cтраницы и её реферер.

</script>

В таком случае будет передаваться иерархическую структура параметров визитов вида NotFoundURL: адрес сайта: Реферер: адрес реферера

№3. Отслеживание 404 ошибок с помощью Google Tag Manager (JavaScript-событие + параметры визитов)

Если в своей работе вы используете диспетчер тегов Google, Яндекс.Метрика установлена через него, и вы также отслеживаете все события Яндекс.Метрики с помощью GTM и соответствующих тегов, тогда этот вариант для вас.

Первая часть настройки ничем не отличается от способа, описанного выше. Для начала создайте цель типа JavaScript-событие. Задайте название цели и добавьте идентификатор. Например: Отслеживание 404 ошибок и 404error:

Создание JavaScript-события

Скопируйте полученный код цели для сайта. Эту конструкцию мы будем использовать дальше в настройке.

Этот способ очень похож на первый вариант, где мы фильтровали данные по заголовку страницы в самом отчете Яндекс.Метрики. Отличие заключается в том, что вы сами с помощью Google Tag Manager можете определить название (title) страницы, а затем создать переменную JavaScript, триггер и тег, чтобы передавать в Яндекс.Метрику отдельные события с 404 ошибкой.

Заголовок страницы можно извлечь с помощью пользовательской переменной Переменная JavaScript и значением document.title:

Переменная JavaScript — document.title

Свойство document.title получает или задает текущий заголовок документа. Вы можете протестировать эту конструкцию, перейдя на любой сайт, любую вкладку и открыв консоль разработчика. Введите туда document.title и нажмите Enter:

Вызов document.title в консоли разработчика

Теперь необходимо создать триггер, который бы активировался не на всех страницах, а когда заголовок страницы содержит Страница не найдена. Создайте такой триггер типа Просмотр страницы с дополнительным условием активации — document.title содержит Страница не найдена:

Триггер активации 404 ошибки

Задайте название триггеру и сохраните его.

Осталось только создать тег. Выберите Пользовательский HTML, в которой добавьте следующую конструкцию:

<script type=«text/javascript»>

var params404 = {‘404 ошибка’: {‘URL-адрес’: {{Page URL}}, ‘Реферер’: {{Referrer}}}};

ym(33437348,‘reachGoal’,‘404error’, params404);

</script>

, где 33437348 — идентификатор вашего счетчика Яндекс.Метрики (вы меняете на свой!)

В Google Tag Manager это будет выглядеть так:

Тег «Пользовательский HTML» с кодом JavaScript-события

Поскольку в диспетчере тегов Google уже есть встроенные переменные, позволяющие извлекать те данные, которые нам нужны для отслеживания, мы не используем несколько строчек кода из предыдущего варианта, а просто вставляем в соответствующие места переменную {{Page URL}} и {{Referrer}}. Конструкцию, которую мы добавляли в шаблон 404 страницы в предыдущем варианте, также добавлять не нужно. Все настройки производятся через интерфейс GTM, что очень сильно упрощает отслеживание.

На всякий случай я рекомендую в расширенных настройках тега задать Последовательность активации тегов, чтобы ваш счетчик Яндекс.Метрики загружался до того, как будет отправляться событие 404 ошибки. Для этого в теге откройте раздел Расширенные настройки — Последовательность активации тегов и поставьте галочку напротив Активировать тег перед тегом Яндекс.Метрика — 404 ошибка, задав Тег setup:

Последовательность активации тегов — Тег Setup — ваш счетчик Яндекс.Метрики

В качестве триггера активации используйте Триггер 404 ошибка, созданный на предыдущем шаге.

Итоговый тег будет выглядеть так:

Итоговый тег отслеживания 404 ошибок

Сохраните тег. Проверить корректность настройки можно через те же инструменты отладки, что были описаны выше. Режим предварительного просмотра GTM тоже можно использовать. С его помощью вы увидите регистрируемое событие Container Loaded и активированный тег с заданным условием, триггером которого является просмотра страницы с дополнительным условием срабатывания — document.title содержит Страница не найдена:

Режим отладки GTM

Однако вы не увидите корректные данные по настроенным параметрам визита, поскольку для отправки JavaScript-события в Яндекс.Метрику используется HTML-тег. Некоторые из вас, более продвинутые пользователи Google Tag Manager, знают, что есть специальные команды, которые можно использовать в консоли разработчика для просмотра данных, отображаемых в отладке. Например, вы можете посмотреть какие передались значения с нашим тегом Яндекс.Метрика — 404 ошибка с помощью таких команд:

google_tag_manager[«GTM-KHV57NC»].macro(20)

google_tag_manager[«GTM-KHV57NC»].macro(21)

Введя их в консоль разработчика, вы увидите какие значения были присвоены вашим параметрам визита:

Команды для консоли разработчика

Для тех, кто не так хорошо разбирается в диспетчере тегов Google, используйте расширение Яндекс.Метрика Инспектор или конструкцию с _ym_debug=1

№3.1. Отслеживание 404 ошибок с помощью Google Tag Manager (dataLayer + JavaScript-событие + параметры визитов)

Этот способ — еще одна вариация отслеживания 404 ошибок. В предыдущем варианте предполагается, что у вас есть отдельная страница, заголовок которой отличается от всех других и имеет отличительную особенность, которую вы можете использовать в качестве дополнительного условия активации триггера, как это было в моем примере — document.title содержит Страница не найдена.

Однако не всегда есть возможность отфильтровать страницу по заголовку, содержащему 404. Либо же на сайте вообще нет отдельной страницы/шаблона для Page Not Found. Тогда вам необходимо использовать этот способ и привлекать к решению этой задачи разработчика.

Когда посетитель переходит на несуществующую страницу, попросите разработчика передать это событие на уровень данных, сформировав dataLayer. Для этого напишите ему техническое задание примерно такого содержания:

Просьба сформировать уровень данных на странице 404, когда пользователь переходит на нее. Пример кода:

window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
‘event’ : ‘404_error’
});

После того, как программист это сделает, вы можете перейти в режим отладки GTM и ввести URL-адрес любой страницы с 404 ошибкой. Вы должны увидеть на шкале событий event с вашим названием:

Событие 404_error на шкале событий

Если оно отображается, значит разработчик сделал все правильно по вашему ТЗ. Если нет, попросите его перепроверить настройки. После этого вы можете создать триггер специального события с названием события 404_error (как было указано в вашем техническом задании и отображается в режиме предварительного просмотра).

Триггер специального события

Все, что вам остается сделать, это создать точно такой же тег типа Пользовательский HTML как в способе №2 и добавить аналогичную конструкцию:

<script type=«text/javascript»>

var params404 = {‘404 ошибка’: {‘URL-адрес’: {{Page URL}}, ‘Реферер’: {{Referrer}}}};

ym(33437348,‘reachGoal’,‘404error’, params404);

</script>

, где 33437348 — идентификатор вашего счетчика Яндекс.Метрики (вы меняете на свой!)

В расширенных настройках тега также задайте последовательность активации тегов, чтобы ваш счетчик Яндекс.Метрики загружался до того, как будет отправляться событие 404 ошибки. Для этого в теге откройте раздел Расширенные настройки — Последовательность активации тегов и поставьте галочку напротив Активировать тег перед тегом Яндекс.Метрика — 404 ошибка, задав Тег setup:

Последовательность активации тегов — Тег Setup — ваш счетчик Яндекс.Метрики

В качестве триггера активации используйте триггер специального события, созданный на предыдущем шаге. Итоговый тег будет выглядеть так:

Итоговый тег отслеживания 404 ошибок

На этом настройка отслеживания 404 ошибок с помощью Google Tag Manager завершена.

Благодаря отслеживанию 404 ошибок в Яндекс.Метрике с помощью JavaScript-события и параметров визита вы можете больше узнать о том, как посетители взаимодействуют с вашим сайтом, отследить резкое изменение трафика несуществующих страниц, оперативно проанализировать причину возникновения таких переходов и быстро внести правки с целью улучшения ситуации.

  • Главная

  • Вредные советы

Сегодня узнаем URL страниц, которые привели посетителей сайта palpalych.ru к 404-ой ошибке.

Возможны ситуации, когда посетитель попадает на страницу с ошибкой из-за неправильно заданной ссылки в тексте письма рассылки, в публикации соцсети, контекстного объявления или, например, из-за банальной невнимательности веб-мастера.

Из отчета Яндекс.Метрики «Содержание — Заголовки страниц» видим, сколько раз загружалась 404-ая страница за последний год:

Яндекс.Метрика и URL, который привёл к 404-ой ошибке

За последний год на сайте palpalych.ru страница с 404-ой ошибкой загружалась 51 раз. Узнать адреса, которые сгенерировали ошибку, мы уже не можем, но чтобы впредь знать их, выполним следующую настройку.

Расширяем возможности Яндекс.Метрики

Инструкция предполагает, что код Яндекс.Метрики уже установлен и работает на сайте.

Добавьте в код Метрики инициализацию переменной

params:window.yaParams

Яндекс.Метрика и URL, который привёл к 404-ой ошибке

Параметры визитов в Яндекс.Метрике

Создайте цель в Яндекс.Метрике. Тип цели — «JavaScript событие» с идентификатором, например, error404. Идентификатор может быть любым.

В коде страницы 404-ой ошибкой вызовите следующий скрипт:


Где:
XXXXXXX — номер счетчика;
URL — параметр, в который мы будем передавать ошибочный адрес;
error404 — идентификатор цели из п.2.

При корректной настройке в отчете «Отчеты — Содержание — Параметры визитов» увидим следующую картину:

Яндекс.Метрика и URL, который привёл к 404-ой ошибке

Кроме того, можем сегментировать любой отчет по одному из значений параметра URL, т.е. задать в сегменте URL, который привел на 404-ую страницу и посмотреть иточник такого перехода. Например:

Яндекс.Метрика и URL, который привёл к 404-ой ошибке

Постройте сегмент по «Источники — Источники, Сводка», чтобы посмотреть, какой источник привёл посетителя на 404-страницу сайта.

Вывод:

С помощью инструкции вы не пропустите ни одной 404-ошибки сайта и сможете быстро выяснить причины её возникновения.

В этой статье речь пойдет об отслеживании 404 ошибок с помощью события и параметров визита с использованием Google Tag Manager и без него.

Когда читатель переходит на веб-сайт по неправильной ссылке или на несуществующую страницу, он может увидеть предупреждение о 404 ошибке. Решив, что ваш сайт не пашет, он может быстро покинуть его, не произведя никаких полезных для вас действий.

Есть множество факторов появления 404 ошибок:

  • был введен неправильный URL-адрес;
  • битая гиперссылка (перестала работать);
  • адрес страницы был изменен (в данном случае поможет 301 редирект, который указывает роботам ПС, что страница перемещена по новому адресу, а старый адрес следует считать устаревшим);
  • содержание запрашиваемой странички по какой-никакой причине может быть спрятано от пользователей, а переадресовывание идет на 404 страницу;
  • страница была удалена или прекращено существование всего сайта;
  • направленная DDoS-атака/взлом с целью дестабилизации.

Примечание: встречаются различные сообщения 404 — 404 ошибка, 404 Not Found, 404 Error, HTTP 404 Not Found, Страница не найдена, The page cannot be found, The requested URL was not found on this server и т.д.

Благодаря приведенной далее настройке, вы сможете прослеживать 404 ошибки для своего сайта вместе с адресами несуществующих страниц, на которые попадаются ваши посетители, а также узнать, откуда они попадают на эти странички.

Для отслеживания 404 ошибок в Яндекс.Метрике вы можете пойти одним из трех представленных путей:

  1. использовать стандартный отчет по страницам в интерфейсе Яндекс.Метрики;
  2. использовать JavaScript-событие и параметры визита (все настройки выполняются напрямую);
  3. использовать JavaScript-событие и параметры визита (все настройки выполняются через Google Tag Manager).

Давайте рассмотрим каждый вариант подробнее.

№1. Отслеживание 404 ошибок с помощью стандартного отчета

Если на вашем сайте есть отдельная страничка с 404 ошибкой, на которую попадают пользователи, и в ее заголовке есть особое обозначение, которое выделяет ее ото всех иных страниц вашего сайта, вы можете прослеживать такие переходы с помощью типового отчета Яндекс. Например, на моем сайте в заголовке страницы (title) на странице с 404 ошибкой написано Страница не найдена.

Отчет в Яндекс.Метрике находится в разделе Отчеты — Содержание — Заголовки страниц.

Открыв его, сразу же добавьте в отчет через Группировки параметры Заголовок страницы, Адрес страницы и Реферер.

Реферер содержит URL источника запроса. Например, если пользователь перейдет с одной страницы на другую, реферер будет содержать адрес его первой страницы посещения. Заголовок страницы берется из элемента title, а Адрес страницы отображает текущий URL-страницы.

Сверху над таблицей выберите линейный список и в поле поиска введите заголовок страницы 404 ошибки, чтобы отфильтровать данные.

Таким образом, в отчете останутся только те страницы, которые имеют 404 ошибку. Поскольку дополнительно вы добавили параметры Адрес страницы и Реферер, то вы можете проанализировать адреса несуществующих страниц, на которые попадают ваши посетители, а также узнать, откуда они переходят на эти страницы.

Если вам неудобно анализировать данные в самой Яндекс.Метрике, вы можете выгрузить эти данные к себе на компьютер с помощью экспорта в форматы .xlsx или .csv.

А затем открыть эту таблицу в Excel, чтобы легко привести статистику в нужный вид, увидеть список несуществующих URL за выбранный диапазон дат и отфильтровать/подсветить какие-то значения.

Это самый простой способ отслеживания 404 ошибок в Яндекс.Метрике с помощью встроенного отчета, без использования диспетчера тегов Google, JavaScript-события, параметров визитов и дополнительных конструкций/кодов, когда на вашем сайте есть отдельная страница 404.

№2. Отслеживание 404 ошибок напрямую (JavaScript-событие + параметры визитов)

Если ваш код счетчика Яндекс.Метрики и все настройки выполняются напрямую (без использования Google Tag Manager и других систем управления тегами), тогда вам необходимо выполнить следующее.

— перейдите в раздел Цели и создайте цель типа JavaScript-событие. Задайте название цели и добавьте идентификатор. Например: Отслеживание 404 ошибок и 404error.

Скопируйте код цели для сайта. Чуть ниже мы модифицируем эту конструкцию.

На следующем этапе вам может понадобиться помощь разработчика, который добавит нижеприведенный скрипт в исходный код шаблона вашей 404-страницы. Как правило, в большинстве CMS-движков присутствует отдельный шаблон страницы 404. Например, в моем блоге (сделан на WordPress) на хостинге лежит файл 404.php.

Открыв его, я увижу исходный код страницы.

Именно сюда вам или вашему программисту необходимо будет добавить такой код:

<script type="text/javascript"> var ref = document.referrer; var url = document.location.href; var params404 = {'404 ошибка': {'URL-адрес': url, 'Реферер': ref}}; ym(XXXXXXXX, 'reachGoal', '404error', params404); </script>

, где:

  • var ref = document.referrer — переменная ref, которой присваивается URI страницы, с которой был совершен переход на текущую 404 страницу;
  • var url = document.location.href — переменная url, которой присваивается значение всего URL-адреса текущей страницы из браузера пользователя;
  • var params404 = {‘404 ошибка’: {‘URL-адрес’: url, ‘Реферер’: ref}} — создается JavaScript-объект, в котором с помощью иерархической структуры передается два параметра визита — URL-адрес со значением, извлеченным из переменной url, и Реферер со значением, извлеченным из переменной ref.
  • ym(XXXXXXXX, ‘reachGoal’, ‘404error’, params404) — конструкция JavaScript-события с дополнительным аргументом params404, а XXXXXXXX — идентификатор вашего счетчика Яндекс.Метрики.

Этот код вставьте в шаблон вашей 404 страницы и сохраните изменения. После этого, при посещении несуществующей страницы в Яндекс.Метрику будет отправляться информация о событии 404error и дополнительных параметрах визита — URL-адресах таких страниц и их источниках (реферере).

Проверить корректность передачи данных можно несколькими способами:

  • добавить к URL-адресу с 404 ошибкой параметр _ym_debug со значением 1. Например, https://osipenkov.ru/takoj-stranicy-net/?_ym_debug=1

Далее необходимо вызвать консоль разработчика и перейти на вкладку Console. Вы должны увидеть строчку с PageView. Counter XXXXXXXX. Это первый хит на странице, свидетельствующий о просмотре страницы. Совершив отслеживаемое событие, вы увидите другую строчку с методом Reach goal. Если у вас есть возможность перейти на несуществующий URL-адрес с другого источника, тогда и параметру визита Реферер присвоится значение.

В моем примере я совершил переход с сайта http://techniqa.ru/ на страницу https://osipenkov.ru/takoj-stranicy-net/, которой на моем сайте нет. Поэтому зарегистрировалось событие 404 и вместе с ним передалось два параметра визита.

  • использовать готовое расширение для браузера. Например, Yandex Metrica Debugger или Яндекс.Метрика Инспектор.

Активировав одно из них, вы можете открыть консоль разработчика, перейти на вкладку с данным расширением и совершить на сайте настроенное событие. Оно также должно отобразится в списке событий с параметром визита.

Источник: osipenkov.ru

Сегодня я подготовил для вас материал, в котором я решил собрать свой опыт при работе с ошибками 404. Как проверить и найти ошибки 404 на своем сайте и почему это важно сделать?

Ошибка 404 на сайте означает то, что пользователь обратился к вашему сайту по такому url-адресу, страницы для которого в данный момент не существует.

Обратите внимание, что это не означает, что данной страницы вообще никогда не существовало. Она могла быть создана вами ранее, но позже вы могли переместить ее в другой раздел сайта, поменять ее название или что-то еще и автоматически изменился ее url-адрес. Кроме того, вы могли просто ее удалить.

Все бы ничего, но если на эту страницу были ссылки с вашего сайта, либо с других сайтов или она попадала в ранжирование поисковых систем, все переходы с таких мест на эту страницу, будут выдавать ошибку 404 — страница не найдена.

Как думаете есть ли на вашем сайте такие ошибки?

Признаться честно, я думал, что на моем сайте если такие ошибки и есть, то их не слишком много. Каково было мое удивление и ужас, когда я все настроил, проверил свой сайт и увидел реальную картину с ошибками 404 на своем сайте.

Вот скриншот из системы Яндекс Метрика:

Только за первые несколько дней, мне удалось найти 22 такие страницы.

Как думаете, сколько таких страниц у вас?

Большое количество 404 ошибок на вашем сайте может очень серьезно сказаться на показателях и посещаемости вашего сайта.

 Почему так происходит?

Большое количество 404 ошибок означает для поисковой системы:

+ Автор не следит за своим сайтом.

+ Автор пытается обмануть своих посетителей.

+ На сайте какие-то неполадки.

Зачем поисковой системе давать высокие позиции в поисковой выдаче таким сайтам? Соответственно, доверие поисковых систем к ним довольно серьезно снижается.

Чтобы этого не допускать, нужно постоянно проверять свой сайт на ошибки 404, находить их и устранять.

Как это можно сделать и где посмотреть есть ли они на вашем сайте или нет?

Здесь есть несколько вариантов, как это можно сделать. Давайте рассмотрим самые основные.

Вариант 1. Система Яндекс Метрика.

https://metrika.yandex.ru

Это система веб-аналитики сайта, которая может показать наиболее точную и информативную картину из всех вариантов, которые будут рассмотрены ниже.

Но, основная проблема здесь — это сложность настройки и передачи данных в эту систему.

По умолчанию, Яндекс Метрика не умеет учитывать такие переходы с ошибками 404. Для того, чтобы это стало возможным, необходимо настроить так называемые параметры визитов.

Но, человеку, который плохо разбирается в веб-разработке, сделать это может быть не совсем просто. Если у вас возникли трудности, можете обратиться ко мне, у меня есть специальная услуга по настройке ошибок 404 в системе Яндекс Метрика для вашего сайта.

Услуги веб-аналитики сайта.

Этот способ хорош также тем, что вы можете данные об ошибках 404 как метрики и использовать их при построении отчетов веб-аналитики. Это дает возможность отвечать на такие вопросы как:

1) С каких именно страниц приходили на ваш сайт и натыкались на ошибку 404.

2) Какая доля таких посещений от общего числа визитов

3) Когда именно была зафиксированна ошибка 404.

Вариант 2. Как посмотреть 404 ошибки в Яндекс.Вебмастер?

http://webmaster.yandex.ru

Страницы 404 находятся в разделе «Индексирование – Статистика обхода — Исключенные страницы»

Это хорошо, но таким способом вы можете увидеть не совсем полную информацию о вашем сайте, а только о тех страницах, которые так или иначе попадали в индекс поисковой системы Яндекс.

Вариант 3. Как посмотреть 404 ошибки в Google инструменты вебмастера.

http://www.google.com/webmasters/tools/

Этот способ аналогичен проверки ошибок 404 с помощью Яндекс Вебмастера. Картина здесь будет не совсем полная, но тем не менее, общую информацию вы можете получить.

Ошибки 404 в Google вебмастер можно найти здесь:

«Сканирование – ошибки сканирования».

После того, как вы отследите ошибки 404, на вашем сайте, нужно сделать 301 редирект на то место, где эти страницы на самом деле находятся.

Например, на wordpress это можно сделать с помощью следующего плагина.

Хороших позиций вашему сайту!

Мониторинг ошибок на страницах сайта с помощью Яндекс.Метрики

Время на прочтение
2 мин

Количество просмотров 7.1K

Сегодня я наткнулся на интересный пост о мониторинге ошибок на сайте. У описанного метода есть недостаток — он применим только для React.
После прочтения поста я сразу же вспомнил про вебвизор. Если бы мне позвонил человек, который

ой, я куда-то нажала, оно выскочило

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

Оказалось, что все настолько просто, что реализация задумки заняла у меня всего минуту.

Единственный способ передать факт возникновения ошибки на странице — цели.

Я создал JavaScript-событие и назвал цель Js Error.

Далее я добавил в код счетчика отправку событий при возникновении ошибки.

        <script type="text/javascript" >
            (function (d, w, c) {
                (w[c] = w[c] || []).push(function() {
                    try {
                        w.yaCounter%id счетчика% = new Ya.Metrika({
                            id:%id счетчика%,
                            clickmap:true,
                            trackLinks:true,
                            accurateTrackBounce:true,
                            webvisor:true // Обязательно включаем вебвизор
                        });
                    } catch(e) { }
                });

                var n = d.getElementsByTagName("script")[0],
                    s = d.createElement("script"),
                    f = function () { n.parentNode.insertBefore(s, n); };
                s.type = "text/javascript";
                s.async = true;
                s.src = "https://mc.yandex.ru/metrika/watch.js";

                if (w.opera == "[object Opera]") {
                    d.addEventListener("DOMContentLoaded", f, false);
                } else { f(); }
            })(document, window, "yandex_metrika_callbacks");

            window.addEventListener("error", function(event){
                // Я просто для примера вывел в лог событие. По-хорошему, нужно сделать какое-то решение, позволяющее посмотреть, когда и какая ошибка возникла в процессе.
                console.log(event);

                // Говорим метрике, что произошла ошибка
                yaCounter%id счетчика%.reachGoal('ERROR');
            });
        </script>
        <noscript><div><img src="https://mc.yandex.ru/watch/%id счетчика%" style="position:absolute; left:-9999px;" alt="" /></div></noscript>

На этом мой эксперимент был успешно завершен. Если зайти в вебвизор, можно увидеть достижения целей, которые означают, что в текущем визите произошла ошибка.

Конечно, для полноценного разбора ошибок этого будет мало. Думаю, стоит сделать обработчик ошибок, который будет отображать прямо на странице информацию, если сайт просматривается через вебвизор. Так же, можно разделить ошибки на уровни, либо даже вынести определенные, особо интересующие события в отдельную цель. Для мониторинга 404, 500 и прочих ошибок, можно добавить счетчик в шаблон ошибки с отдельной целью и отправлять ее сразу после инициализации счетчика.

Очень порадовало, что вместе с записью действий пользователя, мы получаем много информации, которая может помочь при дальнейших проверках.

Есть и недостатки данного метода:

  1. Для определения ошибки нужно просматривать посещение
  2. Ограничено количество целей в метрике. Доступно 200 целей
  3. Страницы, на которых счетчик не установлен, мониториться не будут.
  4. Вебвизор фиксирует не все посещения пользователей, а только 120 тыс. визитов в день и хранит их в течение 15 дней.

Надеюсь, столь простой способ может кому-то пригодиться.

UPD:
В комментариях altervision подсказал, что можно передавать параметры визита в методе reachGoal. Этого может быть достаточно для передачи сообщений об ошибках.

  • 404 ошибка чем плохо
  • 404 ошибка страница не открывается
  • 404 ошибка скачать шаблон
  • 404 ошибка сервера причины
  • 404 ошибка сервера или клиента