Сейчас в сети: 536
Настройка целей, отслеживание электронной торговли, многоканальные последовательности и тд
Подсказки
star_border
Ответить

Электронная коммерция

Студент ✭

Добрый день. 

 

В нашем  интернет магазине возникла такая проблема, терялась часть заказов в google. 

 

В админке все ок, в гугле теряется примерно  20-22% заказов. 

 

Посоветовали использовать вместо js кода, php, - заказы все так же теряются  правда не больше 1 % и не определяется источник (direct) / (none) - все продажи попадают сюда, при этом с других каналов трафик увеличился. 

 

Вот сам код: 

 

<?php
// Получаем массив с данными заказа
$order_info = …
// Генерируем уникальный идентификатор
$user_id = func_gen_uuid();
// Формируем массив с параметрами транзакции
$transaction_data = array(
‘v’ = 1,
‘tid’ = 'UA-74070132-1',
//Необходимо поставить данные из битрикса
cid’ = $user_id,
‘t’ = ‘transaction’,
‘ti’ = $order_info[‘order_id’],
‘ta’ = $order_info[‘store_name’],
‘tr’ = $order_info[‘total’],
‘ts’ = $order_info[‘shipping_cost’],
‘tt’ = $order_info[‘order_tax’],
‘cu’ = ‘RUB’
);
// Отправляем параметры транзакции
func_send_data_to_ga($transaction_data);
// Перебираем все товары
foreach($order_info[‘products’] as $order_product) {
// Формируем массив с информацией о товаре
$item_data = array(
‘v’ = 1,
‘tid’ = ‘UA-xxxxxxxx-x’,
‘cid’ = $user_id,
‘t’ = ‘item’,
‘ti’ = $order_info[‘order_id’],
‘in’ = $order_product[‘product_name’],
‘ip’ = number_format($order_product[‘price’], 2, ‘.’, »),
‘iq’ = $order_product[‘quantity’],
‘ic’ = $order_product[‘sku’],
‘iv’ = $order_product[‘category_name’],
‘cu’ = ‘RUB’
);
// Отправляем данные о товаре
func_send_data_to_ga($item_data);
}
function func_gen_uuid() {
return sprintf( ‘%04x%04x-%04x-%04x-%04x-%04x%04x%04x’,
mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ),
mt_rand( 0, 0xffff ),
mt_rand( 0, 0x0fff ) | 0x4000,
mt_rand( 0, 0x3fff ) | 0x8000,
mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff )
);
}
function func_send_data_to_ga($params) {
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, ‘ http://www.google-analytics.com/collect ‘);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($params));
$ret = curl_exec($curl);
curl_close($curl);
}
?>

В чем может быть причина? И если нужно вернуть js код - то как избежать потерь? 

 

Спасибо!

1 Ответ экспертаverified_user

Утвержденные решения
Лучший ответ.
Решение
Утвердил автор темы Людмила М
Ноябрь

Электронная коммерция

Ведущий участник

Привет всем
non interactrion - вряд ли тут причастно.
1% - это хороший результат. Если у клиента cid пустой - то аналитикс данные не примет. 
Не стоит забывать, что есть блокировщики рекламы и рекламных кодов.
И это только одна из причин.
Через протокол  - можно отправлять принудительно источник канал и т.п
Включая gclid, что сильно повышает точность (до 100% по кол-ву)

C уважением,
Павел

Просмотреть решение в исходном сообщении


Все ответы

Электронная коммерция

Бакалавр ✭ ✭ ✭

Добрый вечер, Людмила!

 

В вашем случае причина в том, что при отложенных событиях аналитика инициализирует новую сессию канал и источник становятся (direct) / (none).

Вам надо добавить в запросы ni=1 - в соответствии с инструкцией - https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters?hl=ru#ni

И как итог - увидете реальные данные)

 

На моей практике - потерь заказов при отправке по протоколу (как у вас) - 0

Если присутствуют потери, передайте программистам - пусть займутся логированием каждого запроса с сохранением его в базу к каждому заказу.

И вы сразу найдете причину.

Лучший ответ.
Решение
Утвердил автор темы Людмила М
Ноябрь

Электронная коммерция

Ведущий участник

Привет всем
non interactrion - вряд ли тут причастно.
1% - это хороший результат. Если у клиента cid пустой - то аналитикс данные не примет. 
Не стоит забывать, что есть блокировщики рекламы и рекламных кодов.
И это только одна из причин.
Через протокол  - можно отправлять принудительно источник канал и т.п
Включая gclid, что сильно повышает точность (до 100% по кол-ву)

C уважением,
Павел