Немного о статистике или Курс Профессионального Шпионажа

Ни для кого уже, наверное, не секрет, что одним из важнейших инструментов в маркетинге является аналитика.

Каким бы бизнесом Вы ни занимались: онлайновым или оффлайновым, какие бы продажи ни осуществляли: прямые или «не прямые», что бы ни продвигали на рынок: товары или услуги, настоящий бизнес, приносящий стабильную прибыль, не мыслим без системы анализа.

В этот раз я не буду использовать любимый прием в написании статей и затягивать интригу до последних абзацев, так что сразу же открою карты…

Сегодня мы поговорим об отслеживании трафика из Яндекса, а также затронем его сервис платной рекламы и создадим алгоритм для правильного проведения рекламных компаний.

Я, честно говоря, накопил за последние пару лет очень много информационных бриллиантов, которые, конечно же, подумываю периодически из бесценных конвертировать в имеющие конкретную цену и продавать через Мастершоп, но, с другой стороны, так как этих самых бриллиантов у меня с каждым месяцем становится в копилке все больше и больше, а 2012 год уже не за горами (в этот год обещали конец света, если верить блокбастеру, который недавно гремел во всех кинотеатрах), решил я кое-какими фишками поделиться без купюр.

Итак, первое, чем мы займемся с Вами сегодня – это напишем скрипт сбора статистики о том, сколько посетителей Вашего сайта приходит с Яндекса, по каким поисковым запросам и с какой из страниц выдачи они попадают на Ваш сайт (как известно, самые лучшие места в выдаче ПС – это с 1 по 10, что соответствует первой странице выдачи). Мы будем определять примерное место Вашего сайта в выдаче Яндекса, руководствуясь тем, на какой по счету странице он находится.

Далее по тексту статьи я буду приводить листинг php-кода. Если это Вам неинтересно, и Вы не понимаете ничего в php, смело скрольте ниже. В конце статьи будет ссылка на архив со всем скриптом.

Итак, создадим один единственный файл, который будет определять, какую страницу посетитель загрузил в браузер, а также, откуда он к нам пришел; если посетитель пришел из поисковика, то по какому запросу он нашел сайт, а также на каком месте в выдаче по этому запросу сайт находится (с точностью до 10 позиций). Напоследок, чтобы наш статмодуль был совсем уж настоящим, запишем также точное время прихода и ip посетителя.


    <?php

    // Папка, в которую складывать всю статистику. Слэш ни вначале, ни в конце НЕ НУЖЕН (!)
    $statp="stat";

    // Логин и пароль для доступа к статистике
    $alogin="login";
    $apassword="passs";

    ############ Далее ничего не трогаем! ##############################################

    if(isset($_POST['alogin']) and isset($_POST['apass']) and $_POST['alogin']==$alogin and $_POST['apass']==$apassword) $aview="ok"; else $aview="no";

    analize();

    ############ Далее идут функции ####################################################

    // Основная функция, которая занимается сбором, анализом и сохранением информации...
    function analize()
    {
    global $statp;

    if(isset($_REQUEST['printstat'])) return printstat();

    if(!isset($_SERVER['HTTP_REFERER']) or empty($_SERVER['HTTP_REFERER']) or $_SERVER['HTTP_REFERER']==NULL or strpos($_SERVER['HTTP_REFERER'], $_SERVER['SERVER_NAME'])) return;
    if(file_exists($statp."/".date("dmY").".txt")) $stats=unserialize(file_get_contents($statp."/".date("dmY").".txt"));
    $sinfo=searchMe();
    $uipinfo=$_SERVER['REMOTE_ADDR'];
    if($uipinfo==NULL) $uipinfo="none";
    $stats[]=$uipinfo."|".time()."|".whereIAm()."|".$_SERVER['HTTP_REFERER']."|".$sinfo['text']."|".$sinfo['pos'];
    $fp = fopen ($statp."/".date("dmY").".txt", "w");
    flock ($fp, LOCK_EX);
    $ret=fwrite($fp, serialize($stats));
    flock ($fp, LOCK_UN);
    fclose ($fp);
    }

    // Функция определяет страницу, которая загружена в браузер посетителя...
    function whereIAm()
    {
    return 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
    }

    // Функция определяет траффик c поисковика, поисковый запрос и позицию в выдаче...
    function searchMe()
    {
    $reff=$_SERVER['HTTP_REFERER'];
    $search='none';
    if(strpos($reff, "yandex")) $search = 'yandex';
    $ret['text']=$ret['pos']='-';
    if($search == 'yandex')
    {
    eregi("text=([^&]*)", $reff."&", $query);
    if(strpos($reff, "yandpage")!=NULL) $ret['text'] = convert_cyr_string(urldecode($query[1]), "k", "w"); else $ret['text'] = urldecode($query[1]);
    if(eregi("p=([0-9]{1,4})", $reff."&", $query2)) $ret['pos'] = (($query2[1]*10)-9).'-'.($query2[1]*10);
    $ret['text']=iconv("utf-8", "windows-1251", $ret['text']);
    }
    return $ret;
    }

    // Функция просмотра статистики
    function printstat()
    {
    global $aview, $statp;
    if($aview=="ok")
    {
    $dh=opendir($statp);
    while (false !==($dbfile=readdir($dh))) {
    $dbf[]=$dbfile;
    }
    closedir($dh);
    $secho='<table width="100%" border="1">
    <tr><td width="80"><center><b>IP</b></center></td><td width="80"><center><b>Дата</b></center></td><td width="200"><center><b>Страница</b></center></td><td width="200"><center><b>Реффер</b></center></td><td><center><b>Поисковый запрос</b></center></td><td width="55"><center><b>Место</b></center></td></tr>
    ';
    foreach($dbf as $u)
    {
    if($u!='.htaccess' and $u!='.' and $u!='..')
    {
    $tmp=unserialize(file_get_contents($statp."/".$u));
    foreach($tmp as $y)
    {
    $tmp2=explode("|", $y);
    if(strlen($tmp2[2])>29) $tmp22=substr($tmp2[2], 0, 12).'[...]'.substr($tmp2[2], -12);
    if(strlen($tmp2[3])>29) $tmp23=substr($tmp2[3], 0, 12).'[...]'.substr($tmp2[3], -12);
    $secho.='<tr><td width="80"><center>'.$tmp2[0].'</center></td><td width="80"><center>'.date("d.m.Y H:i:s", $tmp2[1]).'</center></td><td width="200"><center>'.$tmp22.'</center></td><td width="200"><center><a href="'.$tmp23.'">'.$tmp2[3].'</a></center></td><td><center>'.$tmp2[4].'</center></td><td width="55"><center>'.$tmp2[5].'</center></td></tr>
    ';
    }
    }
    }
    $secho.='</table>';
    die($secho);
    }
    else
    {
    die("<center><form method='POST'>Логин: <input name='alogin'>   Пароль: <input name='apass'>   <input type='submit' value='Показать статистику'></form>");
    }
    }

    ?>

Скачать дистрибьютив скрипта

Как видите, мы уместились всего в 99 строк php-кода, однако можем:

  • отслеживать активность посетителей по датам и времени;
  • отслеживать сайты, которые на нас ссылаются;
  • если на сайт ссылается Яндекс, определить по какому поисковому запросу;
  • определить на каком месте в выдаче Яндекса по запросу, по которому посетитель пришел, находится наш сайт.

Для начала дам несколько комментариев по использованию данного скрипта тем, кто не вникал в его php-код, а потом расскажу, как же полученную информацию анализировать и использовать.

Итак, что касается использования данного скрипта:

1) Настройки

Собственно настроек тут кот наплакал. Единственное, что необходимо изменить – это логин и пароль для доступа к статистике:


    // Логин и пароль для доступа к статистике
    $alogin="login";
    $apassword="passs";

Эти настройки Вы найдете в начале кода файла stat.php

Кроме этого, Вы можете изменить имя папки, в которой будут храниться базы данных статистики:


    // Папка, в которую складывать всю статистику. Слэш ни вначале, ни в конце НЕ НУЖЕН (!)
    $statp="stat";

… а можете тут все оставить по-дефолту!

2) Подключение

Для того чтобы модуль собирал статистику по посещаемости той или иной страницы, необходимо подключить к этой странице файл stat.php, написав следующий код:


    <?php
    include_once("stat.php");
    ?>

(Естественно, сам файл stat.php должен лежать в той же папке, в которой находится файл страницы, к которой мы подключаем модуль…)

Как видите код на языке php, так что страница, к которой Вы будете подключать статмодуль, тоже должна иметь расширение *.php

Если Вы будете использовать модуль на мини-сайте, то проблем, думаю, не будет абсолютно никаких. Вам лишь нужно изменить расширение файла главной страницы, если оно еще не *.php, а потом добавить в самое его начало приведенный выше код.

Если же Вы будете подключать модуль к какому-нибудь движку, например, NanoCMS от Ласто, то ищите там основной файл или файл с шаблоном дизайна и подключайтесь к нему.

К NanoCMS скрипт подключается следующим образом…

Нужно отредактировать корневой файл index.php, добавив после строки:


    <?php /* Выше этой строки в файле ничего не должно быть */

… еще одну строку:


    include_once(“stat.php”);

После чего в корень NanoCMS добавьте файл stat.php и папку stat

3) Просмотр статистики

Для того, чтобы лицезреть статистику по посещаемости Вашего сайта, необходимо обратиться браузером к файлу stat.php, пририсовав вконец знак ‘?’ и слово ‘printstat’. Получится:

stat.php?printstat

Логин и пароль Вы уже меняли, так что, думаю, с этим проблем не возникнет…

Как же полученную информацию анализировать и использовать?

Ну, тут есть множество вариаций!
Я не знаток глубоких тонкостей SEO, да и не экономист по образованию, так что дам лишь самые общие представления и по поводу первого и по поводу второго…
Что до SEO, то тут есть два самых логичных способа использовать полученную информацию:

  1. Если одна из страниц Вашего сайта находится в первой десятке по какому-нибудь запросу, который прямо не связан с тематикой этого сайта, но очень близок по тематике к другому Вашему сайту или сайту Вашего партнера, Вы можете добавить в видном месте страницы баннер или рекламный блок, предлагающий посетить тот сайт, который прямо в тему поискового запроса. Таким образом, если Вы поставите ссылку на другой Ваш сайт, Вы, с одной стороны, дадите ему целевой трафик и, с другой стороны, увеличите значимость с точки зрения Яндекса (что потом должно сказаться на ТиЦ). Если же Вы поставите ссылку, например, на продающий мини-сайт, в партнерской программе которого Вы состоите, это даст Вам увеличение партнерских продаж.
  2. Если уж какая-то страница Вашего сайта оказалась пусть не в первой десятке, но близко к ней (например, на 11-20 месте) по очень конкурентному и интересному Вам запросу, Вы можете приложить усилия к тому, чтобы максимально оптимизировать ее под этот запрос и вывести-таки в топ Яндекса.
Если касаться исключительно вопроса статистических исследований рынка, то обилие посетителей, приходящих на Ваш сайт по различным запросам говорит о настроении и потребностях рынка. Так, если у Вас сайт про маркетинг в интернете, а множество людей, приходящих из поиска Яндекса запрашивают информацию о «маркетинговых исследованиях рынка в интернете», так не пора ли заняться активным изучением и освещением именно темы «анализа интернетовского рынка»?
В подтверждение своей мысли скажу, что в большинстве случаев, когда поисковик приводит посетителя на сайт, который хоть и не прямо отражает смысл поискового запроса, но близок по тематике, посетитель не сразу же уходит, а переходит по нескольким ссылкам сайта, чтобы убедиться, что на нем уж точно таковой информации нет.
Таким образом, если на сайт идет активный поисковый трафик по близким, но еще не освещавшимся как следует темам, самое время задуматься о том, чтобы эти темы осветить!
Итак, думаю, насчет статистического модуля можно считать статью завершенной, но я еще обещал поделиться идеями о том, как эффективно пользоваться платной рекламой в выдаче Яндекса…
Если Вы никогда ранее не работали с сервисом покупки слов у Яндекса, обязательно создайте тестовую рекламную компанию и поглядите, как проходит весь процесс от написания текста объявления и до подбора ключевых слов (это бесплатно, если Вы не решите впоследствии эту рекламную кампанию проплатить!)
Работа с платной рекламой происходит так: Яндекс предлагает написать текст объявления, выбрать ключевые слова, по которым это объявление будет выводиться посетителям и финальным аккордом проплатить кампанию. Если так и поступить, Вы получите дополнительный приток платных посетителей на сайт от Яндекса, часть из которых купят Ваш товар, а часть лишь посмотрят сайт и уйдут.
Яндекс берет деньги за клик, а значит ему все равно, купят ли пришедшие на сайт посетители что-то или нет. Таким образом, о том, чтобы сайт посещали именно потенциальные клиенты волноваться нужно Вам!
Можно ли отделить потенциальных клиентов от простых зевак?
Как показывает практика – можно!
При исследовании статистики отношения посетителей, которые заходят на сайт по платным ссылкам к тем, кто совершает покупку, можно выявить, что существует некоторая разница в конверсии посетителей, пришедших с Яндекса по разным ключевым запросам.
Объясню: при создании кампании на Яндексе Вы указываете несколько ключевых слов и фраз, по которым Ваше объявление должно выводиться в платном блоке. Ну, например, «php», «mysql», «как создать сайт на php», «php+mysql», «сайтостроение для чайников» и т.п.
Так вот, оказывается, что среди тех, кто вводит в форму поиска Яндекса запрос «сайтостроение для чайников» и потом кликает на ссылку в платном блоке, количество покупателей в разы выше, чем среди тех, кто искал, например, «php+mysql».
Таким образом, чем проплачивать ключевые слова с малой конверсией продаж, лучше вложить больше средств в оплату кампании по тем словам, что имеют более высокую конверсию.
И все бы хорошо, скажет мне мой дорогой читатель, но как же определить эту самую конверсию?
Элементарно, Ватсон! :D
Для начала нужно отказаться раз и навсегда от рекламных кампаний сразу по нескольким ключевым словам и фразам! Пока Вы платите за поисковый компот (как вариант, сборную поисковую солянку), отделить зерна от плевел будет невозможно…
Для начала отберите 5-10 ключевых слов и фраз, по которым Вы собираетесь проплачивать рекламу, а потом создайте для каждого отдельную рекламную кампанию.
После того, как Вы будете иметь 5-10 разных рекламных кампаний, нужно подумать, как Вы будете определять на сайте, по какому же из ключевых слов к Вам пришел проплаченный посетитель.
Так как очень многие из читателей данного блога промышляют маркетингом с помощью мини-сайтов и специального скриптового ПО, могу предложить эффектное решение для продающего сайта…
Наверняка, если Вы продаете через мини-сайт, у Вас установлен скрипт автоматического приема заказов и онлайн оплаты (это может быть скрипт от Александра Долгу «ORDER MASTER», «LastoShopGold» от Вадима Ласто или же другие подобные решения), а в этом скрипте наверняка есть модуль «Партнерская программа». Так вот, для того, чтобы точно определять источник трафика с Яндекса, достаточно создать для каждой рекламной кампании отдельный партнерский аккаунт, а в настройках самих кампаний ставить не прямые ссылки на сайт, а партнерские.
В результате этих нехитрых действий Вы будете иметь полную статистику заходов на сайт и статистику выписанных и оплаченных счетов в магазине. Теперь, когда бюджет всех кампаний иссякнет, Вы поочередно зайдете в каждый из аккаунтов партнерки и посмотрите, где же было совершено больше продаж, а где меньше или нет совсем.
Таким образом, через несколько месяцев исследований можно точно вывести, какие ключевые слова для сайта можно и нужно проплачивать, а какие являются пустым расходованием бюджета.
Ну что ж, надеюсь и скрипт и «рецепт для платной рекламы на Яндексе» окажутся Вам полезны, я же на этом блогпост заканчиваю, а Ваше ИМХО с удовольствием прочту ниже в комментариях… :)

Мой блог находят по следующим фразам:

Поделиться в соц. сетях

Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники

Комментарии

  1. Отличное решение для тех, кто может сразу с сайта принимать деньги, без переговоров и работает с мини сайтами. Хотела еще попутно спросить, как вообще можно давать рекламу с Яндекса. Я пользуюсь только рекламой на Гугле, так как Яндекс мне пигшет, что рекламу могут давать только предприниматели официально работающие и зарегистрированные в России.

  2. Артем сказал:

    Спасибо! Это то что я искал.
    Я уже хотел сам код писать

  3. Алекс сказал:

    Почему-то в рассылке оповещение о новой записи не пришло! 0_0

    Инфа реально уникальная – не так давно искал нечто подобное в рунете но не нашел….

  4. Руслан Сафин сказал:

    А можно такую же под гугл?
    Был бы очень благодарен!
    И вообще ты Свят делаешь как надо. Без лишнего гемора.
    Минимализм рулит епта=)

Выскажите Ваше мнение

*