A/B тестирование — это мощный маркетинговый инструмент для повышения эффективности работы вашего интернет-ресурса. С помощью A/B тестов повышают конверсию посадочных страниц, подбирают оптимальные заголовки объявлений в рекламных сетях, улучшают качество поиска.
Мне часто приходится сталкиваться с задачами организации A/B тестирования в различных интернет-проектах. В этой статье хочу поделиться необходимыми базовыми знаниями для проведения тестов и анализа результатов.
Зачем нужны А/B тесты?
Итак, представим ситуацию, наш проект запущен в жизнь, на нем собирается трафик, пользователи активно используют ресурс. И в один прекрасный день мы решили что-то поменять, например, разместить всплывающий виджет для удобства подписки на новости.
Наше решение — это интуитивное предположение о том, что пользователям ресурса станет проще подписываться на новые материалы, мы ожидаем повышения числа подписчиков.
Наши предположения и гипотезы строятся на основе личного опыта и наших взглядов, которые совсем не обязательно совпадают со взглядами аудитории нашего ресурса. Другими словами, наше предположение вовсе не означает, что после внесения изменений мы получим желаемый эффект. Для проверки таких гипотез мы и проводим A/B тесты.
Как проводим тесты?
Идея A/B тестирования очень проста. Пользователи ресурса случайным образом делятся на сегменты. Один из сегментов остается без изменений — это контрольный сегмент “A”, на основе данных по этому сегменту мы будем оценивать эффект от вносимых изменений. Пользователям из сегмента “B” показываем измененную версию ресурса.
Чтобы получить статистически значимый результат, очень важно исключить влияние сегментов друг на друга, т.е. пользователь должен быть отнесен строго к одному сегменту. Это можно сделать, например, записав метку сегмента в cookies браузера.
Для снижения влияния внешних факторов, таких как рекламные кампании, день недели, погода или сезонность, замеры в сегментах важно делать параллельно, т.е. в один и тот же период времени.
Кроме того, очень важно исключить и внутренние факторы, которые также могут существенно исказить результаты теста. Таким факторами могут быть действия операторов call-центра, служба поддержки, работа редакции, разработчики или администраторы ресурса. В Google Analytics для этого можно воспользоваться фильтрами.
Число пользователей в сегментах не всегда удается сделать равным, в связи с этим метрики, как правило, выбираются относительные, т.е. без привязки к абсолютным значениям аудитории в сегменте. Нормирование осуществляется либо на число посетителей, либо на число просмотров страниц. Например, такими метриками могут быть средний чек или CTR ссылки.
Одной из причин делить аудиторию непропорционально может быть существенное изменение в интерфейсе. Например, полное обновление устаревшего дизайна сайта, изменение системы навигации или добавление всплывающей формы для сбора контактной информации. Такие изменения могут привести как к положительным, так и к отрицательным эффектам в работе ресурса.
Если есть опасение, что изменение может иметь сильное негативное влияние, например, привести к резкому оттоку аудитории, то, на первом этапе, имеет смысл тестовый сегмент делать не очень большим. В случае отсутствия негативного эффекта, размер тестового сегмента можно постепенно увеличить.
Что улучшаем?
Если вы собираетесь провести A/B тестирование на своем ресурсе, то наверняка у вашего проекта уже сформированы основные показатели, которые необходимо улучшить. Если таких показателей еще нет, тогда самое время о них задуматься.
Показатели прежде всего определяются целями проекта. Ниже приведу несколько популярных метрик, которые используются в интернет-проектах.
Конверсия
Конверсия вычисляется как доля от общего числа посетителей, совершивших какое-либо действие. Действием может быть заполнение формы на посадочной странице, совершение покупки в интернет-магазине, регистрация, подписка на новости, клик на ссылку или блок.
Экономические метрики
Как правило, эти метрики применимы для интернет-магазинов: величина среднего чека, объем выручки, отнесенный на число посетителей интернет-магазина.
Поведенческие факторы
К поведенческим факторам относят оценку заинтересованности посетителей в ресурсе. Ключевыми метриками являются: глубина просмотра страниц — число просмотренных страниц, отнесенное к числу посетителей на сайте, средняя продолжительность сессии, показатель отказов — доля пользователей, покинувших сайт сразу после первого захода, коэффициент удержания (можно считать, как 1 минус % новых пользователей).
Одного показателя не всегда достаточно для оценки эффекта от вносимых изменений. Например, после изменений на сайте интернет-магазина средний чек может уменьшиться, но общая выручка вырасти за счет повышения конверсии посетителя в покупателя. В связи с этим, важно контролировать несколько ключевых показателей.
Анализ результатов
Отлично, ключевые показатели определены, тест запущен и мы получили первые данные. В этот момент, особенно если данные соответствуют нашим ожиданиям, возникает соблазн сделать поспешные выводы о результатах тестирования.
Торопиться не стоит, значения наших ключевых показателей могут меняться день ото дня — это значит, что мы имеем дело со случайными величинами. Для сравнения случайных величин оценивают средние значения, а для оценки среднего значения требуется некоторое время, чтобы накопить историю.
Эффект от внесения изменения определяют как разность между средними значениями ключевого показателя в сегментах. Тут возникает следующий вопрос, насколько мы уверены в достоверности полученного результата? Если мы еще раз проведем тест, то какова вероятность того, что мы сможем повторить результат?
Ниже на картинках приведены примеры распределения значений показателя в сегментах.
Графики распределения характеризуют частоту появления того или иного значения случайной величины в выборке. В данном случае все значения распределены вокруг среднего.
На обеих картинках средние значения показателя в соответствующих сегментах одинаковы, картинки отличаются только разбросом значений.
Данный пример хорошо иллюстрирует, что разности средних значений недостаточно для того, чтобы считать результат достоверным, необходимо также оценить площадь пересечения распределений.
Чем меньше пересечение, тем с большей уверенностью мы можем сказать, что эффект действительно значим. Эта “уверенность” в статистике называется значимостью результата.
Как правило, для принятия положительного решения об эффективности изменений уровень значимости выбирают равным 90%, 95% или 99%. Пересечение распределений при этом равно соответственно 10%, 5% или 1%. При невысоком уровне значимости существует опасность сделать ошибочные выводы об эффекте, полученном в результате изменения.
Несмотря на важность этой характеристики, в отчетах по A/B тестам, к сожалению, часто забывают указать уровень значимости, при котором был получен результат.
Кстати, на практике примерно 8 из 10 A/B тестов не являются статистически значимыми.
Стоит отметить, что чем больше объем трафика в сегментах, тем меньше разброс среднесуточных значений показателя. При небольшом трафике из-за большего разброса значений случайной величины потребуется больше времени для проведения эксперимента, но в любом случае это лучше, чем вовсе не проводить эксперимент.
Оценить значимость результатов
Для сравнения случайных величин математики придумали целый раздел под названием проверка статистических гипотез. Гипотез всего две: “нулевая” и “альтернативная”. Нулевая гипотеза предполагает, что разница между средними значениями показателя в сегментах незначительна. Альтернативная гипотеза предполагает наличие существенной разницы между средними значениями показателя в сегментах.
Для проверки гипотез существует несколько статистических тестов. Тесты зависят от характера измеряемого показателя. В общем случае, если мы считаем среднесуточные значения, можно воспользоваться тестом Стьюдента. Этот тест хорошо зарекомендовал себя для небольших объемов данных, т.к. учитывает размер выборки при оценке значимости.
В качестве примера приведу сравнение средней длительности сессии в сегментах на одном из ресурсов, для которых я проводил эксперимент: studentttest.xls.
Тест Стьюдента — универсален, его можно применять как для измерений конверсии, так и для таких количественных показателей как средний чек, средняя глубина просмотра или время, проведенное пользователем на сайте.
В случае, если вы измеряете только конверсию, то вы имеете дело с бинарной слуайной величиной, которая принимает только два значения: посетитель “сконвертировался” и “не сконвертировался”. Для оценки статистической значимости в этом случае можно воспользоваться он-лайн калькулятором.
Инструменты
Для организации теста необходим инструмент, позволяющий разметить аудиторию по сегментам и посчитать значения ключевых показателей отдельно в каждом сегменте.
Если ваши ресурсы позволяют, то такой инструмент можно реализовать самостоятельно на основе анализа логов действий пользователей. Если ресурсы ограничены, то стоит воспользоваться сторонним инструментом. Например, в Google Analytics есть возможность задавать пользовательские сегменты.
Существует ряд сервисов, которые позволяют полностью автоматизировать процесс тестирования, например, тотже Google Analytics Experiements, примеры других сервисов можно найти в обзоре.
А дальше?
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.