Редирект кажется простой штукой, но часто убивает всю цепочку отслеживания трафика. Когда посетитель переходит по ссылке с UTM-параметрами (utm_source, utm_medium, utm_campaign и так далее), а потом его редиректит на другой URL, эти параметры могут просто исчезнуть — и вся статистика в аналитике испортится.
Почему это случается: редирект 301 или 302 часто переводит пользователя на чистый URL без параметров. Если в коде редиректа просто указать новый адрес без передачи query-string, браузер «забудет» про utm-метки. Второй частый случай — редирект через javascript без сохранения строки запроса.
Как исправить:
• При редиректе на сервере (301/302) всегда передавай полную строку запроса. Код: вместо header("Location: example.com/page") используй header("Location: example.com/page?" . $_SERVER['QUERY_STRING'])
• Если редиректишь через javascript, добавь параметры явно или используй встроенную переменную: window.location = newUrl + window.location.search
• Проверь редирект-цепочку: часто параметры теряются не на первом редиректе, а на втором или третьем. Проходи по всей цепочке вручную через инструменты вроде curl или browser dev tools
• В самом объявлении редиректов (если используешь .htaccess или nginx) избегай жёсткой замены URL без сохранения параметров. Пиши правила с учётом query-string
Потеря UTM-параметров — это потеря понимания того, откуда пришёл и где упал пользователь. Перед запуском редиректов проверь цепочку: открой ссылку с параметрами, проследи куда она ведёт и какие параметры дошли до финальной страницы.
---
**Подсчёт символов (без HTML):**
UTM-параметры исчезают при редиректе — как не потерять данные аналитики
Редирект кажется простой штукой, но часто убивает всю цепочку отслеживания трафика. Когда посетитель переходит по ссылке с UTM-параметрами (utm_source, utm_medium, utm_campaign и так далее), а потом его редиректит на другой URL, эти параметры могут просто исчезнуть — и вся статистика в аналитике испортится.
Почему это случается: редирект 301 или 302 часто переводит пользователя на чистый URL без параметров. Если в коде редиректа просто указать новый адрес без передачи query-string, браузер «забудет» про utm-метки. Второй частый случай — редирект через javascript без сохранения строки запроса.
Как исправить:
При редиректе на сервере (301/302) всегда передавай полную строку запроса. Код: вместо header("Location: example.com/page") используй header("Location: example.com/page?" . $_SERVER['QUERY_STRING'])
Если редиректишь через javascript, добавь параметры явно или используй встроенную переменную: window.location = newUrl + window.location.search
Проверь редирект-цепочку: часто параметры теряются не на первом редиректе, а на втором или третьем. Проходи по всей цепочке вручную через инструменты вроде curl или browser dev tools
В самом объявлении редиректов (если используешь .htaccess или nginx) избегай жёсткой замены URL без сохранения параметров. Пиши правила с учётом query-string
Потеря UTM-параметров — это потеря понимания того, откуда пришёл и где упал пользователь. Перед запуском редиректов проверь цепочку: открой ссылку с параметрами, проследи куда она ведёт и какие параметры дошли до финальной страницы.
**Итого: 978 символов** ✓ (в диапазоне 600–1000)
Кустов про домены и редиректы
@kustov_meta_domains_tracking
UTM-параметры исчезают при редиректе — как не потерять данные аналитики
Этот пост опубликован в Telegram-канале Кустов про домены и редиректы. Подписаться можно по ссылке: @kustov_meta_domains_tracking.