Найти в Дзене
SEO от DFAKTOR

Генератор UTM меток для Telegram ботов

Есть одна боль, знакомая почти всем, кто ведёт рекламу и общается с клиентами через Telegram. Реклама работает.
Переходы есть.
Люди пишут в бота. А вот понять, какая именно кампания привела человека — невозможно. Пользователь ушёл с сайта в Telegram — и всё, источник потерян.
Ни Яндекс, ни Telegram «по умолчанию» эту задачу не решают. Мы столкнулись с этим ровно в таком виде — и решили вопрос простым, но надежным способом. Если говорить простыми словами, то utm метки telegram не сохраняются автоматически. Пока пользователь на сайте — всё прекрасно: Но как только происходит переход в Telegram — цепочка рвётся.
А вместе с ней пропадает и utm source telegram. В результате: Нам было важно решить задачу без избыточной сложности: И главное — чтобы всё это работало незаметно для пользователя. Мы пошли самым прямым путём. На сайт добавляется небольшой JavaScript-код, который: Для пользователя это выглядит как обычный переход в Telegram.
Никаких форм, кликов или «магии» — просто работает. Допус
Оглавление
Конструктор UTM меток для Telagram ботов
Конструктор UTM меток для Telagram ботов

Есть одна боль, знакомая почти всем, кто ведёт рекламу и общается с клиентами через Telegram.

Реклама работает.
Переходы есть.
Люди пишут в бота.

А вот понять, какая именно кампания привела человека — невозможно.

Пользователь ушёл с сайта в Telegram — и всё, источник потерян.
Ни Яндекс, ни Telegram «по умолчанию» эту задачу не решают.

Мы столкнулись с этим ровно в таком виде — и решили вопрос простым, но надежным способом.

В чём вообще проблема

Если говорить простыми словами, то utm метки telegram не сохраняются автоматически.

Пока пользователь на сайте — всё прекрасно:

  • utm_source есть,
  • utm_campaign есть,
  • аналитика работает.

Но как только происходит переход в Telegram — цепочка рвётся.
А вместе с ней пропадает и utm source telegram.

В результате:

  • заявки есть,
  • диалоги есть,
  • а управлять рекламой приходится почти «на ощупь».

Что мы хотели получить

Нам было важно решить задачу без избыточной сложности:

  • сохранить utm telegram при переходе в бот
  • понимать источник каждого диалога
  • использовать данные в CRM
  • обойтись без серверов и API
  • сделать решение универсальным — под любой сайт

И главное — чтобы всё это работало незаметно для пользователя.

Какое решение в итоге используем

Мы пошли самым прямым путём.

На сайт добавляется небольшой JavaScript-код, который:

  • считывает utm метки telegram из URL
  • находит ссылки на Telegram-бота
  • автоматически добавляет к ним параметр start
  • передаёт utm source telegram в момент первого запуска бота

Для пользователя это выглядит как обычный переход в Telegram.
Никаких форм, кликов или «магии» — просто работает.

Как это выглядит на практике

Допустим, человек пришел на сайт по рекламной ссылке:

site.ru/?utm_source=telegram&utm_medium=yandex&utm_campaign=promo

Скрипт сам преобразует ссылку на бота в формат:

https://t.me/имя_бота?start=s_telegram-m_yandex-c_promo

Когда пользователь запускает бота, Telegram передаёт команду:

/start s_telegram-m_yandex-c_promo

И вот тут происходит главное:
utm telegram попадает в бота в явном виде.

Дальше с этим параметром можно делать что угодно:

  • сохранить в базе,
  • передать в CRM,
  • использовать для аналитики,
  • связать диалог с рекламной кампанией.

Важный нюанс, о котором часто забывают

Параметр start передается только при первом запуске бота.

Если пользователь потом вернётся в диалог напрямую —
utm метки telegram не перезапишутся, и это нормально.

Так Telegram и задуман, и именно так данные остаются корректными.

Что нужно сделать на сайте

На самом деле — минимум:

  1. Вставить JavaScript-код на страницу

Оставить обычную ссылку на Telegram-бота
https://t.me/имя_бота

Скрипт сам:

  • найдёт нужные ссылки,
  • добавит utm source telegram,
  • обновит их даже при динамической вёрстке.

Работает в:

  • Tilda
  • WordPress
  • Webflow
  • самописных сайтах

Когда это решение действительно работает

Всё корректно отрабатывает, если:

  • пользователь приходит с utm telegram
  • на странице есть ссылка на бота
  • бот поддерживает /start
  • используются допустимые символы
  • нужна нормальная аналитика, а не догадки

Что мы в итоге получили

После внедрения:

  • каждый диалог в Telegram имеет источник
  • реклама перестает быть «черным ящиком»
  • появляется нормальная аналитика
  • управленческие решения принимаются по данным

Принцип простой:
UTM → сайт → Telegram → /start → сохранение источника.

Для агентства или бизнеса это не «фишка», а базовый уровень контроля маркетинга.

Вот сам код, неизменно вставляйте его и наслаждайтесь еще более точными данными в аналитике.

Этот скрипт сам найдет все ссылки на телеграм бота и добавит к ним данные из UTM меток

  • в <head>
  • перед </body>
  • в кастомный HTML/JS-блок (Tilda, WordPress, Webflow, самописные сайты)

<script>
(
function () {
const params = new URLSearchParams(location.search);

const src = params.get('utm_source') || '';
const med = params.get('utm_medium') || '';
const cmp = params.get('utm_campaign') || '';

if (!src && !med && !cmp) return;

const clean = (v, max) =>
v.toString()
.trim()
.replace(/\s+/g,'-')
.replace(/[^A-Za-z0-9_-]/g,'')
.slice(0, max);

const payload = (
`s_${clean(src,12)}-m_${clean(med,12)}-c_${clean(cmp,24)}`
).slice(0,64).replace(/-$/,'');

const buildHref = (href) => {
try {
const url = new URL(href);
if (!/^(t\.me|telegram\.me)$/.test(url.hostname)) return null;

const parts = url.pathname.split('/').filter(Boolean);
if (!parts[0]) return null;

return `https://t.me/${parts[0]}?start=${payload}`;
}
catch {
return null;
}
};

const updateLinks = () => {
document.querySelectorAll('a[href*="t.me/"], a[href*="telegram.me/"]').forEach(a => {
const newHref = buildHref(a.href);
if (newHref && a.href !== newHref) {
a.href = newHref;
}
});
};

updateLinks();

const observer = new MutationObserver(updateLinks);
observer.observe(document.body, {
childList: true,
subtree: true,
attributes: true
});
})();
</script>

Бонус

Для тех, кто не хочет собирать UTM вручную, мы сделали онлайн-генератор UTM-меток для Telegram — бесплатный и уже готовый к работе:
👉
https://utm.dfaktor.ru

#seo #маркетинг