В некоторых случаях, когда вы настраиваете цели в Яндекс Метрике, эти цели могут не срабатывать. 

Например, вы можете вызвать в определенном месте страницы метод reachGoal для настройки выполнения цели.

<script>
yaCounterxxxxxx.reachGoal('name');
</script>

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

Больше моих уроков по веб-аналитике здесь.

Появляется ошибка Яндекс Метрики вида:

ReferenceError: yacounter is not defined.

Это означает то, что объект yacounter (вашего счетчика Яндекс Метрики) не определен. 

Как можно решить эту проблему?

Чаще всего такая ситуация возникает по причине того, что метод reachGoal запускается раньше кода Яндекс Метрики сайта, который можно получить в разделе "Настройка - код счетчика".

Т.е. получается ситуация: код системы Яндекс Метрика еще не загрузился, объекта yaCounterxxxxxx еще нет, а вы пытаетесь уже вызвать метод для этого объекта reachGoal.

Чтобы ситуация разрешилась, нужно вызвать метод reachGoal с помощью специальной конструкции:

<script type="text/javascript">

window.onload = function() {

yaCounterxxxxxxxx.reachGoal('name');

}

</script>

window.onload = function() - означает, что метод, который находится внутри этой конструкции будет запущен только в том случае, когда документ полностью подгрузился. Значит он будет запускаться уже после того, как основной код Яндекс Метрики уже запустился.

После этого ошибка должна исчезнуть. Попробуйте.

Больше моих уроков по веб-аналитике здесь.