Установите коллектор на отдельном хостинге
В Tilda можно подключить внешние HTML/JavaScript, но PHP внутри страницы не выполняется. Сначала разверните самостоятельный PHP-пакет, например на https://stats.example.ru. Вам понадобятся доступ к этому серверу и настройки опубликованного сайта Tilda.
Вставка пользовательского кода доступна на Personal и Business. Возможности вашего тарифа проверьте в кабинете Tilda. API экспорта страниц для такого подключения не требуется.
Далее https://example.ru обозначает опубликованный сайт Tilda. Все адреса в примерах замените своими. Публикация на собственном домене и на tilda.ws имеет разный origin; используйте фактический адрес открываемого сайта.
Адаптер проверен автоматическими тестами по документированному событию Tilda. Проверка на вашем реальном опубликованном проекте обязательна: особенности форм, сторонних скриптов и тарифа могут влиять на подключение.
Согласуйте списки сервера и страницы
В приватном config.php коллектора задайте точный origin сайта Tilda и нужные метки. Сохраните сгенерированные установщиком секрет и хеш пароля. Ниже приведён фрагмент массива конфигурации.
'origins' => ['https://example.ru'],
'base_url' => 'https://stats.example.ru',
'policy_url' => 'https://example.ru/privacy/',
'paths' => ['/', '/contacts/'],
'events' => ['contact_click', 'lead_sent'],
'campaigns' => ['autumn_2026'],
'mediums' => ['cpc', 'ppc', 'paid_social', 'social', 'messenger', 'email', 'organic', 'referral'],
'contents' => ['post_15', 'banner_a'],
'capture_terms' => false,Уточните реальные пути Tilda, например /contacts или /contacts/: они должны совпадать со списком. Не включайте персональные идентификаторы в пути и рекламные метки. Страница политики должна существовать на том же origin, что и сайт.
Вставьте внешние скрипты в HEAD
- Откройте настройки сайта Tilda, затем раздел "Вставка кода" и поле "HTML-код для вставки внутрь HEAD". В некоторых версиях интерфейса этот пункт находится в "Ещё". Для одной страницы используйте "Настройки страницы → Дополнительно → HTML-код для HEAD".
- Добавьте пример ниже, заменив
stats.example.ru, путь политики и списки своими значениями. Порядок tracker → consent → tilda нужно сохранить. - Сохраните настройки и переопубликуйте все страницы, на которых нужен счётчик. В редакторе и предварительном просмотре пользовательский код может не выполняться.
<link rel="stylesheet" href="https://stats.example.ru/consent.css">
<script defer src="https://stats.example.ru/tracker.js" referrerpolicy="no-referrer"
data-config='{"endpoint":"https://stats.example.ru/collect.php","paths":["/","/contacts/"],"events":["contact_click","lead_sent"],"campaigns":["autumn_2026"],"mediums":["cpc","ppc","paid_social","social","messenger","email","organic","referral"],"contents":["post_15","banner_a"],"capture_terms":false}'></script>
<script defer src="https://stats.example.ru/consent.js" referrerpolicy="no-referrer"
data-policy="/privacy/"></script>
<script defer src="https://stats.example.ru/tilda.js" referrerpolicy="no-referrer"></script>Не подключайте тот же код одновременно в общем HEAD, HEAD страницы и блоке T123. Оптимизация сторонними скриптами не должна менять порядок выполнения. Если вы применяете CSP, разрешите origin коллектора в script-src, style-src и connect-src.
Добавьте доступ к изменению выбора
В блок T123 внутри футера Tilda добавьте кнопку ниже. Она открывает настройки локальной аналитики и позволяет отозвать ранее сохранённое разрешение. Саму кнопку не помещайте в HEAD.
<button type="button" data-da-settings>Настройки аналитики</button>Готовый баннер хранит выбор 180 дней. До согласия статистика не отправляется. После согласия разрешённые метки перехода сохраняются в sessionStorage вкладки до 30 минут; отзыв удаляет их. DNT/GPC останавливают сбор.
Если на сайте уже есть интерфейс согласия, его нужно явно связать с DulesovAnalytics.grant() и revoke(). Тогда скрипт готового баннера consent.js не подключайте. Существующая cookie-плашка Tilda автоматически не выдаёт согласие этому счётчику.
Согласие на аналитику и согласие на обработку заявки имеют разный предмет. Настройте их содержание и правовое основание отдельно. Описание данных поможет подготовить техническую часть политики.
Что означает событие lead_sent
Адаптер слушает документированное событие tildaform:aftersuccess на стандартных формах Tilda. Оно возникает после успешной передачи данных в систему сбора форм. При действующем согласии счётчик отправляет одно событие lead_sent с разрешёнными метками страницы и перехода.
Адаптер не читает имя, email, телефон, текст заявки, номер заказа или транзакции. Для одной формы повторный callback в течение 1,5 секунды подавляется; разные формы считаются отдельно. Формы, добавленные после загрузки страницы, также поддерживаются.
Успешная передача формы в Tilda не подтверждает доставку заявки в CRM, обработку менеджером или оплату. Для нужной стадии CRM настройте отдельное серверное событие, например crm_sale, чтобы не считать один этап дважды. Инструкция по CRM.
События до согласия не ставятся в очередь и позже не отправляются. Ручной дополнительный вызов event('lead_sent') на той же форме может удвоить показатель. Формы в стороннем iframe и собственные обработчики, не создающие событие Tilda, требуют отдельной интеграции.
Проверьте опубликованные страницы
- Откройте опубликованный HTTPS-адрес в приватном окне. Проверьте загрузку
tracker.js,consent.js,tilda.jsиconsent.cssв DevTools → Network. - До согласия POST-запросов к
collect.phpбыть не должно. Разрешите аналитику и проверьте появление просмотра в панели за текущую дату UTC. - Отправьте тестовую форму и дождитесь подтверждения успеха Tilda. В Network должен появиться запрос
type: event,name: lead_sent. Проверьте, что в его теле отсутствуют поля формы. - В кабинете выберите событие
lead_sent. При необходимости добавьте фильтры страницы или кампании. Это количество успешных обращений, уникальные заявки по людям здесь не вычисляются. - Откройте ссылку с разрешёнными UTM, повторите тест и проверьте метки. Затем отзовите согласие и убедитесь, что новые события не отправляются.
При быстром переходе на страницу благодарности браузер может прервать сетевое обращение. Используется keepalive, но гарантии доставки нет. Блокировщики и сетевые ошибки также влияют на полноту данных.
Ограничения и документация Tilda
Подключение собирает просмотры, разрешённые рекламные метки и события подтверждения формы. Скрытые поисковые фразы, рекламные расходы, индивидуальная история человека и выручка из CRM автоматически не появляются. Tilda и подключённые к ней сервисы продолжают обрабатывать данные по собственным настройкам, которыми этот счётчик не управляет.