Как трекер аналитики весом 2 КБ сохраняет ваши Core Web Vitals зелёными
Традиционные скрипты аналитики достаточно тяжёлые, чтобы повлиять на ваш показатель Lighthouse. Вот что лёгкий трекер делает иначе — и почему это важно для реальных пользователей.
Core Web Vitals теперь являются сигналом ранжирования. Медленный скрипт аналитики больше не просто неудобство — это прямой удар по вашему SEO и по опыту каждого посетителя с медленным соединением. Ирония измерения трафика вашего сайта с помощью скрипта, который ухудшает работу сайта, вполне реальна.
Во что вам обходятся традиционные скрипты аналитики
Глобальный тег сайта Google Analytics 4 передаёт примерно 45 КБ. Он делает несколько сетевых запросов при загрузке — к collect.js, к протоколу измерения и иногда к дополнительным скриптам функций. На мобильном устройстве с подключением 4G это заметная задержка перед тем, как ваша страница станет интерактивной.
Влияние проявляется тремя способами. Во-первых, сам запрос скрипта конкурирует с вашим контентом за пропускную способность сети. Во-вторых, любое синхронное выполнение блокирует основной поток. В-третьих, каждое последующее событие аналитики (начало сессии, page_view, вовлечённость) вызывает дополнительные исходящие запросы.
Как лёгкий трекер меняет математику
Трекер Monoid занимает менее 2 КБ в минифицированном и gzip-сжатом виде. Он загружается с обычным атрибутом async, что означает, что браузер скачивает его в фоновом режиме, не блокируя парсинг или рендеринг HTML. Largest Contentful Paint не затрагивается, потому что скрипт никогда не находится на критическом пути рендеринга.
Когда срабатывает просмотр страницы, трекер отправляет один POST на конечную точку сбора данных:
fetch('/collect', {
method: 'POST',
keepalive: true,
body: JSON.stringify({ site_id, path, referrer, ... })
})
Флаг keepalive: true — ключевая деталь. Он сообщает браузеру, что запрос должен оставаться активным, даже если пользователь уходит со страницы до его завершения — тот же механизм, который использует API navigator.sendBeacon, но с полной поддержкой JSON. Вы получаете надёжную доставку без блокировки навигации.
Три показателя Core Web Vitals, по одному
Largest Contentful Paint (LCP) измеряет момент, когда основной контент становится виден. Асинхронный скрипт, не находящийся на критическом пути, вообще не задерживает LCP. У трекера нет манипуляций с DOM, и он не загружает никаких изображений.
Interaction to Next Paint (INP) измеряет отзывчивость на пользовательский ввод. Обработчики событий трекера являются только для чтения и легковесными — один слушатель popstate для навигации SPA. Никаких длинных задач, никакого ломания макета.
Cumulative Layout Shift (CLS) измеряет неожиданные смещения макета. Трекер не добавляет элементов в DOM, поэтому он вносит нулевой вклад в смещение макета.
Запуск аудита Lighthouse
Если вы хотите количественно оценить разницу, запустите аудит Lighthouse на странице до и после добавления трекера. Вы не должны увидеть никаких изменений в показателе Performance. Трекер появится в сетевом waterfall как поздно загружаемый асинхронный скрипт — маленький, быстрый и вне критического пути.
Сравните это с аудитом GA4, где Lighthouse часто помечает тег аналитики под пунктом «Сократите влияние стороннего кода» и сообщает о вкладе во время блокировки потока.
Производительность — это и аргумент в пользу конфиденциальности
Существует связь между весом скрипта и конфиденциальностью, которую стоит сформулировать прямо: тяжёлые скрипты аналитики тяжёлые, потому что они делают больше. Больше отслеживания, больше идентификации устройств, больше поведенческого профилирования. Трекер весом 2 КБ маленький, потому что он собирает только то, что необходимо — несколько неперсональных сигналов на просмотр страницы. Общее семейство браузеров и тип устройства определяются на стороне сервера из User-Agent запроса, в то время как полные строки User-Agent, версии браузеров, cookie, постоянные идентификаторы и отпечатки устройств никогда не сохраняются.
Выбор лёгкой аналитики — это не компромисс между производительностью и аналитическими данными. Это признание того, что лишний вес в традиционных инструментах берётся из сбора данных, который вы, вероятно, не запрашивали.