Как передавать данные о погоде в Google Analytics (бесплатно)


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

В отчетах это может выглядеть так:



Так же, имея такие данные можно понять, как именно нужно настроить управление ставками для объявлений в контекстной рекламе в зависимости от погодных условий, чтобы максимизировать прибыль. Можно это сделать даже автоматически, благодаря готовым решениям на AdWords Scripts.


Ну и вообще это можно сделать чисто ради фана :)


Как настроить сбор данных о погоде в своем GA (знаменитая 5-ти минутная установка):
  1. Скачайте JSON-конфигурацию.
  2. Импортируйте конфигурацию в свой Google Tag Manager.
  3. Задайте собственный ключ к API сервиса OpenWeatherMap в переменную «APPID from openweathermap.org» (нужно зарегистрироваться здесь).
  4. Задайте свой Google Analytics Tracking ID в переменную «GAID».
  5. Опубликуйте изменения.


Примечание: решение работает только для сайтов на HTTPS.


Результат:
В результате работы скрипта, в Google Analytics отправляет событие с категорией Weather, в которое передается характеристика погодных условий (в Действие) и температура воздуха (в Ярлык). Так же, в этом событии задаются параметры
уровня сессии в Custom Dimension 6 и 7 (вы можете использовать свои слоты, для этого нужно поправить индексы в настройках тега), для того, чтобы данные о погоде относились ко всем действиям на сайте в рамках сессии.


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


Описание работы скрипта: За основу решения взят код Simo Ahava. Но он почти
полностью переделан для того, чтобы использовать открытые сервисы, которые
предоставляют лучшие условия использования в бесплатном тарифе.
Так же, скрипт работает без зависимостей jQuery.


Кратко процесс выглядит так: когда пользователь заходит на сайт — у него
запрашивается доступ к данным о геолокации. Если он предоставляет этот
доступ — скрипт считывает GPS-координаты посетителя и для этих координат
возвращает данные о погоде. Если пользователь запрещает доступ к данным
о геолокации — координаты определяются по IP-адресу посетителя сайта.
Этот вариант является менее точным, но тем не менее погода будет определяться
у всех посетителей сайта. Конечно же, если пользователи используют VPN — данные
о погоде будут вообще не точными.


Так же в скрипте используются куки, за счет чего скрипт запрашивает данные
о погоде один раз на 30 минут т.е. 1 раз на 1 сессию каждого посетителя сайта.
Ограничения используемых бесплатных систем:

OpenWeatherMap в бесплатном тарифе позволяет делать 60 запросов в минуту (3600 в час). Этого вполне должно хватить для проектов с маленькой и средней посещаемостью. Если вам будет нужно делать больше запросов — можно просто изменить тариф на платный (подробно о ценах здесь). Что касается freegeoip.net, то он позволяет делать 15 000 запросов в час. Если вы достигнете этого ограничения — есть открытый исходный код проекта на GitHub, который позволит развернуть такую же систему на своих серверах.

Комментарии

Популярные сообщения из этого блога

Настройка Conversions API (Server-Side API) для Facebook Pixel

Как незаметно поломать систему аналитики для сайта на базе SPA

Как бесплатно настроить автоматический импорт расходов на Facebook Ads в Google Analytics