Про digital

Долой сэмплирование: строим отчеты в Google Analytics на основе полных данных

Сэмплирование — это отличный способ прийти к обобщенным выводам, когда вы не можете или просто не считаете нужным анализировать все собранные данные. В Google Analytics данный метод работает так: сервис берет только часть всей информации и строит отчеты на ее основе. Проблема в том, что так вы получаете не точные данные, а лишь приблизительные. Виктор Осадчий, Creative writer из OWOX BI рассказывает, почему Google Analytics применяет сэмплирование и как с ним бороться.

Почему и когда Google Analytics применяет сэмплинг данных

Google Analytics работает с огромным объемом сырых данных, которые приходится обрабатывать максимально быстро. Это нагружает серверы и увеличивает время, нужное для составления отчетов. Поэтому сервису приходится брать лишь часть данных на анализ, чтобы мы могли быстрее увидеть нужные данные, хотя их точность снижается. Вы можете понять, что Google Analytics использовал выборку — для этого кликните по иконке щита возле названия отчета. Сразу после этого появится надпись «Отчет создан на основе анализа N% от общего числа сеансов». Если N будет менее 100%, данные были сэмплированы.

что такое сэмплирование и как его избежать, сэмплинг данных

Сэмплинг Google Analytics в различных видах отчетов

Сэмплированная статистика в отчетах по умолчанию (Default Reports)

Отчеты «Аудитория», «Источники трафика», «Поведение» и «Конверсии» содержат агрегированные отчеты с набором параметров и метрик на основе несэмплированных данных, даже если было более 500 тысяч сессий. В этих наборах данных информация обновляется каждый день и расчеты происходят быстро, так как в отчеты не добавляются дополнительные параметры и нагрузка на серверы Google Analytics не увеличивается. Поэтому системе не имеет смысла делать выборку.

Пример отчета, который основан на 100% данных:
Пример отчета, который основан на 100% данных

Быстрые отчеты (Ad-hoc Reports)

Как только вы меняете стандартные отчеты (используете фильтры, сегменты, и т. д.), Google Analytics использует данные, которые уже были собраны и агрегированы заранее. Сервис поступает так же, когда вы создаете пользовательские отчеты, с параметрами и показателями, которых нет в дефолтных отчетах. Если Google Analytics не находит нужной информации в заранее собранных таблицах, сервис использует те данные, которые еще не обработал. В случае, когда в периоде для анализа набралось более 500 тысяч сессий, Google Analytics применяет выборку.

что такое сэмплирование и как его избежать
Отчет, построенный на сэмплированных данных

Визуализация переходов (Flow-visualization Reports)

Лимит сессий для отчетов «Карта поведения», «Карта событий» и прочих карт переходов Google Analytics, составляет 100 тысяч — при его превышении сервис сэмплирует данные. Объем данных в таких отчетах может существенно отличаться от стандартных. В итоге получается, что информация по одним и тем же показателям в картах переходов Google Analytics может не соответствовать цифрам в дефолтных отчетах. Например, общее количество посещений, пользователей и т. д. в стандартных отчетах по поведению и конверсиям будут отличаться от данных в картах поведения и целей.

что такое сэмплирование и как его избежать
Отчет «Карта целей», в котором данные были сэмплированы

Отчеты по многоканальным последовательностям и атрибуции

Тут можно избежать сэмплирования, если не вносить изменения — например, не добавлять параметры или сегменты. Если вы все же это сделаете, то помните, что Google Analytics применит выборку в таких отчетах сразу же после превышения лимита в 1 миллион конверсий.

Что не так с сэмплированием

Выборка не так уж страшна, если отчет построен на основе 90% данных и более. Но чем меньший процент информации используется для анализа, тем ниже точность полученных результатов. Представим, что Google Analytics использовал 1% данных из 100 сессий, то есть всего 1 сессию, а затем умножил ее на 100 и создал отчет. При этом целых 99% данных так и остались покрыты мраком неизвестности.

Для примера давайте вспомним, как производители стиральных порошков рекламируют свой товар, утверждая, что 8 из 10 домохозяек предпочитают использовать их продукцию. Мы автоматически воспринимаем «8 из 10» как 80% опрошенных. А что, если было опрошено всего 10 человек, а эти самые 8 домохозяек работают в компании, которая производит порошок? Не зная точное количество респондентов и как производилась выборка, мы не можем объективно судить о достоверности данных. Так же работает и сэмплирование в Google Analytics.

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

Полезная статья по теме — «Как проверить эффективность контекстной рекламы».

Как бороться с сэмплированием

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

В пределах интерфейса Google Analytics

1. Сократить отчетный период

Объем данных для обработки Google Analytics напрямую связан с длительностью периода для анализа. Чем он длиннее, тем больше информации и выше вероятность применения выборки — и наоборот. К примеру, если вам нужен отчет за шесть месяцев, велика вероятность, что Google Analytics создаст его, используя сэмплированные данные по причине большого количества сеансов. В качестве альтернативы одному большому отчету вы можете создать шесть (по одному на каждый месяц) и сложить полученные результаты.

что такое сэмплирование и как его избежать

2. Не использовать быстрые отчеты

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

К примеру, вам нужны цифры по каналу organic. Для этого воспользуйтесь стандартным отчетом «Каналы», просмотрев трафик с помощью параметра «Страницы входа» в качестве основного. Такой отчет сформирован на 100% сеансов, в отличии от «Страницы входа» с сегментом «Бесплатный трафик».

Но тут есть оговорка — в дефолтных отчетах за день должно быть не более 50 тысяч строк, а в быстрых отчетах такой лимит составит 1 миллион строк. Если лимит будет превышен, Google Analytics объединит все данные сверх него в «Другие» (other).

что такое сэмплирование и как его избежать
Отчет, в котором данные свыше лимита были собраны в графу «Другие» (other)

 3. Фильтры на уровне представления

Данные в Google Analytics сэмплируются уже после того, как были применены фильтры уровня представления. Это означает, что выборка производится на основе сессий, прошедших фильтр. Поэтому можно собирать в представлении только нужные данные. Например, вместо использования сегмента «Бесплатный трафик» можно создать еще одно представление и отфильтровать в нем лишь органический трафик.

что такое сэмплирование и как его избежать

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

Не рекомендуем использовать фильтр по параметрам на уровне страницы, особенно, если вы работаете в нише ecommerce, и у вас сайт с массой категорий товаров и веб-страниц. В этом случае отдельные представления для каждого типа страницы приведут к тому, что в разных представлениях будет учтена сессия одного и того же пользователя, а объем всех сеансов окажется непомерно большим.

4. Создать отдельный ресурс под каждый сайт

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

что такое сэмплирование и как его избежать

За пределами интерфейса Google Analytics

Помимо описанных вариантов избавления от выборки, можно получить несэмплированные данные Google Analytics в BigQuery или Google Sheets. Главное, не забывать, что сырые демографические данные из Google Analytics экспортировать невозможно, ведь сервис их агрегирует в любом случае.

1. Google Analytics API

Еще один способ победить сэмплирование — это Reporting API, вариант обращения к данным с помощью уже готового программного функционала. Хотя и так есть шанс получить сэмплированные данные при выборе длительного периода для анализа. Правда, API позволяет самостоятельно определить объем данных и уровень сэмплирования для каждого запроса.

ВАЖНО: Такой вариант не подходит для сайтов с большим объемом трафика, так как придется выполнять несколько сотен запросов для получения несэмплированных данных. Если это вам подходит, помните, что Reporting API дает возможность отправлять не более 50 тысяч запросов в день для одного проекта, а также возвращать не более 10 тысяч строк в ответ на запрос.

Главный минус использования API — придется потратить много времени и запускать вручную огромное количество запросов. Можно автоматизировать этот процесс, но только с помощью программирования. И еще один недостаток — допускается использование не более семи параметров и десяти показателей в пределах одного отчета.

что такое сэмплирование и как его избежать

Обращаем внимание, что в любом из запросов должен присутствовать минимум один показатель и есть ограничения на комбинации параметров.

2. Google Analytics Spreadsheet Add-on

Это официальное дополнение, которое помогает получить информацию из Google Analytics в привычных таблицах Google, рассчитать новые показатели и параметры, построить отчеты и даже поделиться ими с коллегами или партнерами. В отличие от Reporting API, здесь можно выгружать не семь, а девять параметров.

что такое сэмплирование и как его избежать

Единственным, но довольно серьезным ограничением Google Analytics Spreadsheet Add-on является количество ячеек в одной таблице — до 400 тысяч. Поэтому вряд ли удастся экспортировать и обработать большие объемы данных.

3. Google Analytics 360

Платная версия Google Analytics может предложить несколько вариантов преодоления сэмплирования.

  1. Более высокий порог для выборки — до 100 миллионов сеансов для одного представления, что в 200 раз больше, чем на обычной версии Analytics.
  2. «Полные отчеты» (Unsampled Reports), в которых может содержаться до 3 миллионов уникальных строк данных. Вы сможете запускать этот отчет согласно расписанию или один раз по вашему запросу.
  3. Специальные таблицы (Custom Tables), которые предоставят до миллиона строк в день. Также будет моментальный доступ к данным, которые будут агрегированы по нужной вам комбинации параметров, показателей, сегментов и фильтров, а главное — без сэмплирования. В каждой такой таблице может быть до 6 параметров, 25 показателей, пять фильтров и четыре сегмента.

Так как порог выборки в Google Analytics 360 гораздо выше, вы получите отчеты на основе 100% данных:

что такое сэмплирование и как его избежать

Помимо уже перечисленных преимуществ, Google Analytics 360 предлагает нативную интеграцию с BigQuery, что позволит загружать в облачное хранилище данные без сэмплирования, а также за секунды строить отчеты с любой структурой, комбинируя показатели и метрики, как вам удобно, с помощью SQL-запросов. Также всем пользователям Google Analytics 360 предоставляется купон на 500$ каждый месяц, чтобы оплатить затраты на BigQuery.

Google Analytics 360 — это отличное решение, но для больших компаний, так как придется выложить довольно крупную сумму. Также этот вариант можно рассматривать, если количество хитов на вашем сайте свыше 10 миллионов в месяц, а выборка постоянно предоставляет искаженные данные.

4. OWOX BI Pipeline

Если вы не готовы приобрести Google Analytics360 или автоматизировать запросы к API, рассмотрите OWOX BI Pipeline в качестве альтернативы. Инструмент поможет отправлять сырые и несэмплированные данные в BigQuery прямо с сайта в режиме реального времени. Чтобы это сделать, нужно лишь создать Custom Task или Custom HTML тег в контейнере Google Tag Manager, а остальное сделает OWOX BI Pipeline.

У сервиса собственный алгоритм для формирования сессий. Поэтому ваши отчеты всегда будут построены на основе информации без выборки и независимо от количества сеансов в Google Analytics. Стоимость подписки OWOX BI Pipeline стартует от 115$, но первые 14 дней можно попробовать сервис бесплатно.

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

Об авторе

Редактор блога Ringostat. Автор статей для изданий о диджитал и больших СМИ про бизнес. Изучала журналистику в Одесском национальном университете имени И. И. Мечникова.