В аналитике эффективность рекламных каналов сложно полноценно оценить без знания того, что конкретная цепочка действий\переходов привела к тому для чего все затевается - продажи, конверсии.
В основном, во внимание принимается общий объем трафика, промежуточные цели, заполнение форм, звонки. Но это не конверсии.
Речь идет об анализе в Google Analytics.
Промежуточные цели (заполнение формы на сайте, звонок и .тд) бесспорно важны. Но их анализ - это вопрос уточнения, дополнительная информация, которая помогает понимать почему не долшло дело до конверсии.
На эти вопросы трудно ответить без знания факта конверсии с привязкой к каналу.
Проблема заключается в том, что не отслеживается\не передается в инструмент аналитики факт продажи\конверсии. Нет, с интернет-магазинами, например, где конверсия может быть отслежена уже на сайте - проблемы особой нет. Условно, на сайте, при нажатии на кнопку "оформить заказ", возникает событие “заказ”. В электронную торговлю GA уходит информация о товарах заказа и их стоимости. Цель достигнута и зафиксирована.
При небольшом проценте отказов от оформленных заказов или любой другой причине мешающей фактической отгрузке, такой точности для анализа эффективности может быть вполне достаточно. Но если факт продажи фиксируется во внешней системе, относительно сайта (CRM), или вообще не фиксируется - это проблема.
Например, когда организация не имеет продуктов, которые можно выставить по фиксированной цене, т.е услуга и цепочка продажи состоит из (заявка-формирование КП-договор-оплата).
Все это может выходить за границы web-приложения в этом случае. Отслеживать конверсию и собирать данные для аналитики уже сложнее.
Т.е у нас есть источник\каналы рекламы: директ, adwords, seo, smm, mail маркетинг, контент маркетинг и т.д
Способы взаимодействия: звонок, заявка-форма на сайте и дальнейшая обработка лида в CRM системе.
А какой источник какую роль сыграл для конверсии - не известно до конца.
Описанной интеграцией можно закрыть эту проблему.
Все, что к вам приходит из вне (звонок или заявка на сайте) будет отслежено.
В целом задача сводится к тому, чтобы по всем источникам получить идентификатор Google Analytics клиента и провести его до конверсии, передав связку идентификатор+событие конверсии в GA
В качестве примера мы покажем общую схему интеграции - 1c-bitrix + calltouch + bitrix24 + google analytics
Общая схема путешествия идентификатора GA выглядит так Обращения (заявка, звонок) -> bitrix24 (обработка) -> Google analytics.
Сначала мы сделаем привязку идентификатора ga к результату формы. Для примера мы возьмем форму заказа обратного звонка.
Добавим новое скрытое необязательное поле с идентификатором ga_cid
Таким образом, состав полей формы может получиться следующим
Теперь в настройках формы, на вкладке CRM сопоставим новое поле полю в crm.
Выбрано поле SOURCE_DESCRIPTION как более близкое по смыслу.
Значение ga_cid будет в результате помечено специальным маркером #ga_cid#ИДЕНТИФИКАТОР#ga_cid#
Добавим функцию получения ga_cid и обработчик для добавления значения в результат формы. Это можно сделать в файле init.php, либо поместить код в любое другое место, где вы описываете обработчики.
class UniversalAnalyticsCookieParser{
public function parseCookie()
{
list($version,$domainDepth, $cid1, $cid2) = split('[\.]', $_COOKIE["_ga"],4);
return array('version' => $version, 'domainDepth' => $domainDepth, 'cid' => $cid1.'.'.$cid2);
}
public function getCid()
{
$contents = $this->parseCookie();
return $contents['cid'];
}
}
function addGaCid2Form($WEB_FORM_ID, &$arFields, &$arrVALUES)
{
global $APPLICATION;
$rsField = CFormField::GetBySID('ga_cid', $WEB_FORM_ID);
$arField = $rsField->Fetch();
if($arField)
{
$rsAnswer = CFormAnswer::GetList($arField['ID']);
$arAnswer = $rsAnswer->Fetch();
$UaParser = new UniversalAnalyticsCookieParser();
$arrVALUES['form_hidden_'.$arAnswer["ID"]] = "#ga_cid#".$UaParser->getCid()."#ga_cid#";
//AddMessage2Log($arrVALUES['form_hidden_'.$arField["ID"]]);
}
}
AddEventHandler('form', 'onBeforeResultAdd', 'addGaCid2Form');
Сделаем тестовое заполнение и убедимся, что лид создается и идентификатор ga попадает в нужно поле SOURCE_DESCRIPTION bitrix24.
Сервис calltouch предоставляет api интерфейс, который дает доступ к информации о совершенных звонках.
Делая запрос, мы в формате json получаем информацию о всех звонках, которые были совершены и что важно для нас - идентификатор GA для каждого из звонков
Есть два варианта доставки информации в b24. Зависит от схемы работы телефонии в компании:
В первом случае нам нужно добавить к уже созданному лиду информацию о звонке, в т.ч и ga_cid
Получить список звонков из calltouch -> По ключу-номеру ОБНОВИТЬ лид в b24
Во втором - автоматически создать лид, с нужной информацией
Получить список звонков из calltouch -> По ключу-номеру СОЗДАТЬ лид в b24
В итоге должна получиться такая картинка.
Помимо ga_cid мы загружаем доступную информацию из calltouch - метки utm, длительность звонка, запись звонка и т.д
Для решения этой части интеграции мы написали небольшое приложение для bitrix24, которое отслеживает событие “изменение сделки” и в случае успешного завершения сделки передает информацию о цели и идентификаторе GA в Google Analytic.
Также можно настроить соответствие всех остальных статусов сделки целям в GA
Провести настройки достаточно просто. Нужно только сопоставить события CRM - целям в GA и установить код id формата UA-XXX-XX
Теперь аналитику можно проводить уже в контексте самых точных показателей результативности!
Стратегии проведения рекламных кампаний становятся обоснованными - их эффективность легко оценить.
Оценивайте эксперименты по фактам реальных продаж, выявляйте самые эффективные способы достижения целей!
При успешном завершении сделки или любом другом отслеживаемом статусе сделки информация о событии передается в Google Analytics.
Теперь для тестового лида, который был сформирован из формы на сайте, создадим сделку и переведем ее в статус “Сделка заключена”
В Ga должна появиться информация о событии.
ВНИМАНИЕ! Появившиеся webhooks в bitrix24 существенно упрощают подобные интеграции. См описание Интеграция Bitrix24 и Google Analytics с помощью Webhooks