Считаем рентабельность вложений в рекламу в Google Analytics для интернет-магазинов
Каждый рекламодатель хочет понимать, насколько окупается каждый рубль, вложенный в рекламу. Но мало кто рассчитывает рентабельность инвестиций в рекламу, а это можно сделать просто с Google Analytics

Если быть точным, то, конечно же рассчитывают, но получаемые данные очень приблизительные, например:
  • расчет по валовой прибыли. Вложили 50 000 рублей в рекламу, заработали сверх средней прибыли — 100 000 рублей и делают вывод — реклама эффективна, надо продолжать. В этом случае не отслеживается реальный источник продаж, и вполне возможно, что часть прибыли сгенерированная рекламной кампании окажется небольшой.

  • расчет по каналу. В этом случае на сайте настроен Google Analytics модуль электронной торговли . Вложили 50 000 рублей в Яндекс Директ, и получили прибыль в 100 000 рублей и также, продолжают рекламу. Но как правило, из десятка групп объявлений и кампаний, приносящими прибыль оказывает ограниченное число.

  • расчет по группам объявлений/ключевым запросам. Как и в прошлом случае, всё настроено, и в Google Analytics передаются расходы по затратам (базовая интеграция с Google AdWordsили Яндекс Директ). При этом в Google Analytics видим затраты по каждой группе ключевых слов, и доход сгенерированным ими.

Но реальность такова, что не обладая точными данными о затратах по каждому рекламному каналу и прибыли, которую получает компания, судить о эффективности вложений в рекламу очень сложно.

Кроме того, в случае, если на сайте настроен стандартный модуль электронной торговли, он говорит нам не о реальных продажах, а о намерениях пользователя купить тот или иной товар. По нашей статистике от 40-70% пользователей, полностью оформивших заказ не совершают оплату и этот факт очень негативно влияет на статистику эффективности рекламных кампаний.

Также, и наценка для каждой группы товаров может значительно отличаться, и если для одного товара это может быть 5%, то для другой 300%, и в этом случае показатель ROI ни о чём не говорит.

Таким образом отображаемый ROI в 1000%, может оказаться — 20%.

Для красоты картины, проведем небольшой расчет (спасибо Andrii Horbatiuk):

Пример 1:

Себестоимость товара для бизнеса 10 долларов. Продаем 2 товара за 22 доллара. Маржа 10%. На рекламу тратим 11 долларов.

Итоговый результат для бизнеса: -9 долларов. Бизнес в убытке.

В случае если мы не грузим наценку, а общий доход, в Google Analytics будет отображена цифра ROI = 100%.

Пример 2:

Себестоимость товара для бизнеса 10 долларов. Продаем его за 100 долларов. Маржа 1000%. На рекламу тратим 50 долларов. Получаем roi 100%.

Итоговый результат для бизнеса: 40 долларов прибыли.

И в этом случае, также, 100%.

То есть, в обоих случаях у нас 100%, хотя реальная эффективность разная.

Если же, мы используем наценку, то в первом случае roi будет: -81%, а во втором +81%. Что значительно ближе к реальности.
Так как же узнать, сколько денег мы зарабатываем, вкладывая в платную рекламу?
А ответ на этот вопрос простой — в Google Analytics необходимо передавать только те конверсии, которые привели к оплате и передавать сумму без себестоимости.

Большинство существующих CRM позволяет обрабатывать тригерные события, например, в случае совершения факта оплаты, возможно вызвать код, который сможет отправлять в Google Analytics информацию о совершенной транзакции и сумму товара без себестоимости.

То есть, меняем схему учёта транзакций:
Для реализации этой схемы, во-первых необходимо расширить поля с информацией о клиенте в CRM новым полем — ClientID. В это поле, вместе с информацией о заказе, необходимо записывать уникальный идентификатор клиента, который устанавливает Google Analytics для каждого устройства. Это значение храниться в куках и его можно получить, используя простой код:
<?php
/*
* Name: Universal Analytics Cookie Parser Class
* Description: Parses the new format Universal Analytics cookie.
* Developer: Matt Clarke
* Date: January 10, 2013
*/
class UniversalAnalyticsCookieParser{
// Parse the _ga cookie if found
function __construct() {
if( isset($_COOKIE["_ga"]) ){
echo $this->getCid();
}
}
// Handle the parsing of the _ga cookie
public function parseCookie()
{
list($version,$domainDepth, $cid1, $cid2) = split('[\.]', $_COOKIE["_ga"],4);
return array('version' => $version, 'domainDepth' => $domainDepth, 'cid' => $cid1.'.'.$cid2);
}
// Get cid
public function getCid()
{
$contents = $this->parseCookie();
return $contents['cid'];
}
}?>
Так как не все пользователи оформляют заявку через сайт, а используют другие каналы коммуникации, важно отслеживать их все. Наиболее распространенные каналы:

Телефон. Для отслеживания этого канала необходимо использовать динамический call-tracking, который подменяет телефонные номера не по каналу или кампании, а по сессии посетителя, что позволяет вытащить cid и также передать его в CRM. Например istat.com.ua решает эту задачу.

Онлайн-чат. Не все онлайн-чаты поддерживают возможность передачи параметров, но некоторые, например http://livetex.ru/ имею возможность задания кастомных параметров, куда мы просто записываем наш cid и, далее, переносим в CRM.

Заявка через сайт. Тут всё просто, вместе с данными заказа отправляем cid, создав новое поле.

После совершения оплаты, статус заказа в CRM переходит в статус "оплачено", и в этот момент срабатывает триггер, который, используя Measurment Protocol, отправляет в Google Analytics данные о транзакции:
$.ajax({ type: "POST", url: "http://www.google-analytics.com/collect", data: "v=1 tid: 'UA-xxxxx-1', //Идентификатор аккаунта Google Analytics cid: '12xx916x95.13x6127xx4', //Значение ClientID t: 'transaction', ti: '44473', ta: 'SITE', tr: '19990.00'
" });
И о купленных товарах:
$.ajax({ type: "POST", url: "http://www.google-analytics.com/collect", data: "v=1 tid: 'UA-xxxxx-1', //Идентификатор аккаунта Google Analytics cid: '12xx916x95.13x6127xx4', //Значение ClientID t: 'item', ti: '44473', in: 'Название товара', ip: '19990.00', iv: 'Категория товара'
" });
После чего, в различных отчетах Google Analytics можно видеть эффективность платной рекламы с точным показателем ROI:
Made on
Tilda