Пора ли менять GTM на Matomo: как работает open-source альтернатива – Motomo Tag Manager - Новости о поисковых системах, SEO и интернет-маркетинге
Социальные сети

Пора ли менять GTM на Matomo: как работает open-source альтернатива – Motomo Tag Manager

Matomo Tag Manager (MTM) – это логичное продолжение идеи GTM (а может и предшественник), но в open-source исполнении и с упором на прозрачность данных. Здесь тот же принцип: один контейнер управляет всеми кодами отслеживания на сайте. Разработчику достаточно один раз вставить контейнерный скрипт в шаблон, а дальше вся магия происходит через визуальный интерфейс.

Главный экран MTM выглядит знакомо каждому, кто хоть раз открывал Google Tag Manager: список контейнеров с возможностью создать отдельные рабочие пространства для разных сайтов, клиентов или проектов. Внутри контейнера все разбито по вкладкам – Tags, Triggers, Variables, Versions и Preview.

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

На уровне логики MTM повторяет GTM почти один в один: те же концепции, структура и поведение триггеров. Но есть важное отличие – Matomo хранит все данные локально, на вашем сервере или в частном облаке, не отправляя ничего «вне контура». Это превращает его в идеальный вариант для компаний, которым важна конфиденциальность, соответствие требованиям РКН и полный контроль над аналитикой.

Немного из истории

Matomo (ранее Piwik) – это open-source система веб-аналитики, появившаяся примерно в 2007–2008 годах как альтернатива Google Analytics. Мне не удалось найти прямой связи между Motomo и Google, но если судить по продуктовой линии – Google Analytics как система аналитики появился раньше. А вот Tag Manager как концепция вначале появился именно у Piwik, а у Google только в 2012 году появляется GTM.

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

Возможности

Контейнеры

В основе Matomo Tag Manager (MTM) лежит контейнер: на сайт добавляется один контейнерный код, а все дальнейшие изменения – создание тегов, настройка триггеров, добавление переменных – выполняются уже в интерфейсе системы. Это избавляет от постоянного участия разработчиков и ускоряет внедрение аналитики и маркетинговых инструментов.

Главное отличие – MTM можно разместить на собственном сервере и не зависеть от инфраструктуры Google (да, у GTM тоже можно, и я это рассмотрю, НО там сильно больше танцев с бубном). Это дает компаниям полный контроль над тем, где хранятся и обрабатываются данные пользователей. В условиях российского регулирования и политики импортозамещения это становится критически важным преимуществом: весь трафик и данные событий остаются внутри корпоративного контура.

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

Рассмотрим код контейнера:

Что делает этот код по шагам

1. Создает массив _paq

    var _paq = window._paq = window._paq || [];

    Это глобальный массив команд, аналог dataLayer в GTM. В него можно пушить события и настройки до загрузки основного скрипта matomo.js.

    2. Добавляет базовые команды

    _paq.push([‘trackPageView’]);
    paq.push([‘enableLinkTracking’]);

    • trackPageView фиксирует просмотр страницы (по сути, аналог gtag(‘event’, ‘page_view’) или GTM PageView).

    • enableLinkTracking включает автотрекинг кликов по ссылкам и внешним доменам.

    3. Самовызывающаяся функция

    Создает элемент < script > и подгружает основной JS-файл трекера:

    var u=»https://vlukas.matomo.cloud/»;
    _paq.push([‘setTrackerUrl’, u+’matomo.php’]);
    _paq.push([‘setSiteId’, ‘1’]);

    • setTrackerUrl указывает путь до сервера, который принимает хиты.

    • setSiteId – ID проекта (сайта) в Matomo.

    • Далее вставляется асинхронный < script > с самим трекером.

    4. Файл matomo.js

    • Обрабатывает команды, накопленные в _paq.

    • Отправляет данные на matomo.php (на твоем сервере или облачном).

    • Поддерживает расширенные фичи: custom dimensions, ecommerce, heatmaps и т.д.

    Теги

    Теги – это основа любого тег-менеджера. Они определяют, какие данные отправляются и куда: в систему аналитики, рекламу, сервисы обратной связи или внутренние скрипты. В Matomo Tag Manager (MTM) набор предустановленных тегов шире, чем кажется на первый взгляд: он охватывает аналитику, рекламу, A/B-тестирование, управление согласием и даже инструменты для разработчиков.

    Основные категории тегов Matomo TM

    1. Аналитика и измерения

    • Matomo Analytics – встроенный тег для отправки событий, просмотров и ecommerce-данных в Matomo.

    • Google Tag (gtag.js) – базовый тег, который позволяет использовать GA4 и другие сервисы Google.

    • Google Analytics: GA4 Event – отправка событий в GA4 через установленный Google Tag.

    • Hotjar – запись тепловых карт и пользовательских сессий.

    • Pingdom RUM – сбор данных о реальной производительности сайта.

    • etracker – поддержка немецкой системы аналитики с возможностью отправки просмотров страниц и событий.

    • Visual Website Optimizer (VWO) – интеграция с платформой A/B-тестирования и оптимизации конверсии, которая есть в платной версии Motomo.

    • Emarsys – маркетинговая платформа для автоматизации рассылок и персонализации.

    2. Consent Management (согласие пользователей)

    • Axeptio – визуальная CMP-платформа с низким порогом внедрения.

    • CookieYes – решение для соблюдения GDPR и CCPA.

    • Cookiebot – автоматическое управление cookie-согласием.

    • Google Consent Mode v2 –- передает Google статус согласия пользователей.

    • OneTrust – крупная CMP-платформа корпоративного уровня.

    3. Пользовательские и кастомные теги

    • Пользовательский HTML – универсальный вариант для вставки любого JavaScript или CSS.

    • Пользовательское изображение – для пикселей отслеживания или графических счетчиков.

    4. Инструменты для разработчиков

    • Bugsnag, Honeybadger, Raygun, Sentry.io (Raven.js) – системы мониторинга ошибок, исключений и производительности фронтенда.

    5. Рекламные и социальные теги

    • Google Ads Conversion – отправка конверсий в Google Ads.

    • Bing Ads UET – отслеживание событий в рекламных кампаниях Microsoft Bing.

    • LinkedIn Insight Tag – передача конверсий и аудитории в LinkedIn.

    • AddThis, Shareaholic – добавление кнопок социальных сетей и трекинг взаимодействий.

    • Drift, Tawk.to, Livezilla, Zendesk Chat – онлайн-чаты и виджеты поддержки.

    Сравнение предустановленных тегов

    Категория

    Matomo Tag Manager

    Google Tag Manager

    Встроенные теги аналитики

    Matomo, GA4, etracker, Hotjar

    Google Ads, Floodlight, Optimize

    Интеграции с чатами и соцсетями

    Drift, Tawk.to, Zendesk, LinkedIn

    LinkedIn, Hotjar, Custom HTML

    Consent Management

    Axeptio, CookieYes, Cookiebot, OneTrust, Google Consent Mode

    Только Google Consent Mode (остальное – через HTML)

    Теги для разработчиков

    Bugsnag, Raygun, Sentry, Honeybadger

    Нет встроенных

    A/B-тестирование

    Visual Website Optimizer

    Google Optimize (закрыт), сторонние скрипты

    Server-side поддержка

    Да (через self-hosted Matomo)

    Только в Server-Side GTM

    Возможность кастомных HTML тегов

    Да

    Да

    В целом, Matomo TM предлагает больше независимости и гибкости. Если GTM сфокусирован на экосистеме Google, то Matomo делает ставку на совместимость и приватность, включая инструменты для мониторинга ошибок, A/B-тестов и управления согласием без внешних зависимостей.

    Справедливости ради у Motomo есть пару странных моментов в настройке самих тегов. Например, нельзя просто так взять и отключить тег. Но есть костыль, можно запустить включение тега далеко в будущее.

    Триггеры

    Триггеры – это условия, при которых срабатывает тег. Именно они превращают набор кодов в живую систему отслеживания поведения пользователей. В Matomo Tag Manager (MTM) набор триггеров охватывает все стандартные сценарии – от просмотра страницы до отслеживания ошибок JavaScript. При этом ряд триггеров реализован гибче, чем в GTM, особенно в части пользовательского взаимодействия и приватности.

    Категории и описание триггеров Matomo TM

    Вовлечение пользователей (User Interaction)
    Срабатывает при любом взаимодействии с сайтом: клике, движении мыши, скролле, касании на сенсорных экранах.
    Это мощный триггер для измерения «настоящего вовлечения». Например, можно исключать «ботов», которые грузят страницу, но не взаимодействуют с ней. В GTM аналог – «All Elements Click», но в Matomo его можно гибко ограничить по типу действий (scroll, move, touch).

    Видимость элемента (Element Visibility)
    Активируется, когда заданный элемент появляется в области видимости пользователя.
    Идеально для отслеживания реального просмотра блоков, баннеров или CTA – то, что в GTM часто приходится реализовывать через сложные кастомные триггеры.

    Выгрузка окна (Window Unload)
    Запускается при закрытии окна или уходе пользователя со страницы.
    В GTM этот сценарий давно ограничен браузерами из-за политики безопасности, а в Matomo он все еще доступен – полезен для last-touch аналитики и поведенческих меток.

    Достижение прокрутки (Scroll Reach)
    Срабатывает, когда пользователь докручивает страницу до определенного процента или элемента.
    Работает точнее, чем аналог в GTM: можно задать конкретный CSS-селектор (например, «#reviews»), а не только процент прокрутки. Отличный инструмент для контентных сайтов и лендингов.

    Изменение в истории (History Change)
    Реагирует на изменения в URL (например, при SPA-навигации или изменении хэша).
    Обязательный триггер для сайтов на Vue, React, Angular. В Matomo реализован проще – не требует ручного добавления listener’ов на popstate.

    Отправка формы (Form Submit)
    Активируется при отправке любой формы. Можно задать фильтры по селекторам или названиям форм.
    Работает стабильно, даже если форма отправляется через AJAX – в отличие от GTM, где часто требуется костыль через события Data Layer.

    Покидание окна (Exit Intent)
    Фиксирует момент, когда курсор выходит за границы окна браузера.
    Отличный триггер для всплывающих окон или сбора обратной связи. В GTM можно реализовать только вручную через custom JS.

    Полный экран (Fullscreen)
    Запускается при переходе или выходе из полноэкранного режима (например, просмотр видео).
    Узкоспециализированный, но полезный для медиа-проектов. Аналога в GTM нет.

    Клик (Click Triggers)

    • Клик на загрузку файла (Download Link Click) – отслеживает нажатия на ссылки с загрузкой файлов (.pdf, .doc, .zip и др.).

    • Клик на любой элемент (All Elements Click) – срабатывает на все клики, включая левый, средний и правый.

    • Клик на любую ссылку (All Links Click) – только для ссылок < a >.

    Просмотр страницы (Page View)

    • DOM готов (DOM Ready) – страница загружена и разобрана, можно безопасно обращаться к элементам.

    • Окно загружено (Window Loaded) – все ресурсы, включая изображения, загружены.

    • Просмотр страницы (Page View) – срабатывает сразу после выполнения контейнера Matomo.

    Другие (Miscellaneous)

    • Ошибка JavaScript (JavaScript Error) – отслеживает исключения в консоли браузера.

    • Пользовательское событие (Custom Event) – аналог dataLayer-пуша из GTM.

    • Таймер (Timer) – выполняет тег через заданный интервал (например, каждые 5 секунд).

    Особенно интересен JavaScript Error – GTM не имеет встроенного триггера ошибок, приходится писать кастомный слушатель.

    Сравнение триггеров Matomo TM и Google Tag Manager

    Категория

    Matomo Tag Manager

    Google Tag Manager

    Просмотр страницы

    3 варианта: PageView, DOM Ready, Window Loaded

    3 варианта

    Клики

    Все клики, ссылки, загрузки

    Все элементы, все ссылки

    Скролл

    По проценту или элементу

    Только по проценту

    Формы

    Встроенная поддержка AJAX

    Требует настройки через Data Layer

    Изменение URL (SPA)

    Есть отдельный триггер

    Только через History Change Listener вручную

    Выгрузка окна

    Работает из коробки

    Ограничено браузерами

    Exit Intent

    Из коробки

    Нет

    Видимость элемента

    Встроенно, гибко настраивается

    Есть, но менее точное

    Таймер

    Есть

    Есть

    Ошибка JavaScript

    Встроенно

    Только вручную

    Полный экран

    Есть

    Нет

    Custom Event

    Через Data Layer

    Через Data Layer

    В целом, Matomo Tag Manager выигрывает у GTM по разнообразию базовых триггеров – особенно в части поведенческих (scroll, exit intent, visibility) и технических (ошибки JS, fullscreen). GTM остается чуть сильнее по интеграции с экосистемой Google, но Matomo дает больше контроля и автономии, что особенно ценно для self-hosted и privacy-oriented проектов.

    Переменные

    Переменные – это данные, которые можно использовать в тегах и триггерах. Они отвечают за подстановку динамических значений, например, URL страницы, текста кнопки или cookie пользователя. В MTM набор переменных во многом похож на GTM, но с рядом особенностей, особенно полезных для self-hosted и privacy-ориентированных проектов.

    Категории и описание переменных Matomo TM

    Конфигурация Matomo (Matomo Configuration)
    Определяет конфигурацию трекера Matomo Analytics, включая ID сайта, URL сервера и другие настройки. Это базовая переменная для работы тегов Matomo, аналогично настройке GA Settings в GTM.

    Метаконтент страницы (Meta Content)
    Считывает значение определенного meta-тега HTML (например, description или robots). Удобно для динамических лендингов или сайтов с большим количеством страниц, где теги SEO различаются.

    Клики

    Clicked Data Attribute
    Считывает значение из custom data-атрибута элемента, на который кликнули.

    Clicked HTML Attribute
    Считывает значение любого HTML-атрибута (например, id, class или href).

    Аналогично GTM Click Variables, но Matomo позволяет сразу выбирать нужный атрибут без кастомного JS.

    Переменные страницы

    DOM элемент (DOM Element)
    Получает значение конкретного HTML-элемента на странице.

    URL-параметр (URL Parameter)
    Считывает определенный параметр URL, например utm_source.

    URL источника (Referrer URL)
    Считывает referrer страницы.

    Полезно для аналитики кампаний, динамических лендингов и сегментации посетителей.

    Cookie и JS

    Внутренние cookie (First-Party Cookie)
    Читает значение cookie, установленного на сайте.

    Переменная JavaScript (JavaScript Variable)
    Считывает глобальную JS-переменную.

    Пользовательский JavaScript (Custom JavaScript Variable)
    Позволяет выполнять произвольный JS-код для получения значения.

    Переменная URL (URL Variable)
    Возвращает URL текущей страницы.

    Эти переменные делают MTM гибким для сложных сайтов. Особенно удобен Custom JS для интеграции со сторонними сервисами.

    Константы и сервисы

    Константа (Constant Variable)
    Фиксированное значение для использования в тегах.

    Custom Request Processing Function
    Функция для трансформации всех запросов трекера Matomo.

    EtrackerConfiguration
    Настройка eTracker Analytics, если используется этот сервис.

    Сравнение переменных Matomo TM и GTM

    Категория

    Matomo Tag Manager

    Google Tag Manager

    URL страницы

    Есть

    Есть

    Referrer

    Есть

    Есть

    DOM элемент

    Есть

    Есть

    Клики

    Clicked Attribute / Data Attribute

    Click Element / Click Classes / Click ID

    Data Layer

    Есть

    Есть

    Cookie

    First-Party Cookie

    First-Party Cookie

    Custom JS

    Есть

    Есть

    Константа

    Есть

    Есть

    Время с момента загрузки

    Есть

    Через JS

    Метаконтент страницы

    Есть

    Через JS

    Настройки трекера

    Matomo Configuration

    GA Settings / Universal Analytics Settings

    Сторонние аналитики (Hotjar, GA, Facebook)

    Есть встроенные шаблоны

    Есть через шаблоны или HTML

    Server-side

    Да (self-hosted)

    Частично, требует GTM Server

    Переменные Matomo Tag Manager по функционалу во многом соответствуют GTM, а в ряде случаев даже гибче – например, встроенные считыватели DOM и meta-тегов, таймеры и возможности server-side.

    Версионирование

    В Matomo Tag Manager каждая конфигурация сохраняется как отдельная версия. Это означает, что любые изменения в тегах, триггерах или переменных фиксируются и могут быть восстановлены в любой момент. В отличие от GTM, где версии хранятся в облаке Google, MTM хранит их локально на сервере компании, что обеспечивает полный контроль над историей изменений и не зависит от сторонних сервисов.

    Локальное хранение версий – большой плюс для компаний с требованиями к безопасности данных. Возможность отката к любой предыдущей версии упрощает тестирование и исправление ошибок без риска нарушить работу сайта. Тут в целом все как в GTM, единственное, на мой вкус, проще именно откат к любой из версий.

    Интеграции

    А вот это, пожалуй одна из самых сильных стороны MTM. Про существующие интеграции будет отдельная статья, но уже сейчас ясно, что Matomo TM поддерживает широкий спектр интеграци. Это позволяет использовать его как универсальный инструмент для управления тегами:

    • Родная интеграция с Matomo Analytics – позволяет отслеживать события, цели, e-commerce данные, поведение пользователей и конверсии.

    • Пиксели и коды сторонних сервисов – LinkedIn Insight Tag и куча других.

    • Кастомные HTML и JavaScript теги – возможность вставлять любой сторонний код для кастомной аналитики, виджетов, коллтрекинга.

    • Интеграция с Consent-менеджерами – Cookiebot, Complianz и другие платформы для управления согласиями пользователей и соответствия GDPR/CCPA.

    • Интеграции с углубленной аналитикой – типа систем А/Б-тестов или вороночных отчетов:

    А вот эта интеграция делает его вообще максимально интересным для SEOшников. Про нее также буду писать отдельно подробно.

    Поддержка сторонних тегов делает MTM подходящей альтернативой GTM даже для сложных проектов с множеством интеграций. При этом self-hosted природа MTM сохраняет данные на сервере компании, снижая риски утечки информации.

    Ограничения

    Несмотря на гибкость, Matomo Tag Manager имеет свои ограничения по сравнению с GTM:

    • Интерфейс проще и менее интуитивен – визуальная подача информации и логика навигации уступает GTM.

    • Отсутствует полноценный real-time debug-режим – нет такого наглядного предпросмотра, как GTM Preview, что усложняет отладку некоторых сценариев.

    • Некоторые функции требуют ручной настройки – например, scroll depth, engagement tracking и комплексные пользовательские триггеры.

    Полный контроль над данными, открытый исходный код и независимость от экосистемы Google.

    Вывод

    Эта статья продолжает цикл обзоров и сравнений тег-менеджеров, который я провожу. Я рассмотрел Matomo Tag Manager (MTM) детально: его интерфейс, контейнеры, теги, триггеры, переменные, версионирование, интеграции и ограничения. Сравнение с Google Tag Manager показало, что MTM предлагает уникальные возможности – полный контроль над данными, self-hosted установку и open-source природу, но требует больше ручной настройки и внимательного подхода к триггерам и тегам.

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

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

    Читайте также:

    Что такое Google Tag Manager и почему в 2025 г. от него придется отказаться

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

    Источник

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Кнопка «Наверх»