Привет, меня зовут Пётр, я занимаюсь продуктовой аналитикой уже около 12 лет, специализируюсь преимущественно на продуктовых рисерчах и экспериментальной аналитике.
Я работал в разных командах, и везде был разный подход к экспериментам. Разные сервисы, которые используются на ключевых этапах жизни гипотезы, разный формат документации, несогласованность в рассчётах, костыли в сложных или нестандартных дизайнах.
Эта боль и легла в основу проекта.
Недавно мы с командой выпустили в открытую бету b2b SaaS платформу для менеджмента и анализа продуктовых экспериментов.
В этом обзоре хочу рассказать что это такое, кому будет полезно и что умеет.

Концепция
С точки зрения дизайна приложения, нам хотелось объединить разрозненные инструменты для планирования, анализа и хранения данных экспериментов в едином пространстве и стиле, чтобы свести максимум рутины в одно поле, и чтобы хранить историю экспериментов в едином формате с удобным поиском и фильтрами.
Важный момент - система не занимается запуском и сплитом траффика, весь фокус мы сд��лали на рассчёты и менеджмент. Сплитовать траф вы можете любым удобным способом, будь то VWO, Firebase, Sigma или своя разработка.
Движок анализа, базовый рассчёт эксперимента
Ключевая фича приложения это его аналитический движок.
В разработке движка принимали участие опытные АБ-шники, но чтобы совсем усилиться, мы привлекли ещё 2-х действующих профессоров статистики из ВШЭ и University of York.
Как оно работает:
На вход подаётся датасет, сгруппированный по дням и единицам рандомизации (далее ЕР, но почти всегда это по юзерам), в строках день/ЕР, в столбцах аггрегированные метрики и сегменты, например гео или платформа;
Далее препроцессор анализирует таблицу и определяет типы метрик (умеет работать со всеми типами - конверсионными, числовыми и ratio-метриками) и формат эксперимента - AB или мультивариативный ABC+;
После этого, препроцессор начинает последовательно анализировать распределение метрик, чтобы определиться с обработкой данных. Датасет может быть насколько угодно сырой, система сама найдёт выбросы, скошенные распределения, рассчитает эксцесс, учтёт бимодальность и преобразует данные одним из 4-х методов:
Жесткая очистка для редких и сильных выбросов;
Логарифмирование для положительных лог-нормальных распределений;
Винзоризация по 5% для относительно стабильных распределений;
Винзоризация по 1% как дефолт для почти чистых данных;
Когда данные подготовлены, система применяет статистические методы для оценки доверительных интервалов и расчёта p-value, основываясь на типах метрики и эксперимента. В распоряжении движка 6 классов тестов, от простого z-теста конверсий до более сложных, вроде Welch ANOVA + Games-Howell для мультивариантных экспериментов);
Для корректной работы с ratio-метриками, система применяет линеаризацию;
Для мультивариативных экспериментов, само собой, всегда применяются поправки на множественные сравнения, а для A/B опционально можно применить Family FDR коррекцию, если она требуется дизайном эксперимента;
Если выборки небольшие, система предложит включить Монте-Карло ресэмплирование для повышения надежности рассчётов.

Движок анализа, прогнозирование результата
Прогноз — это инструмент для досрочной остановки активного эксперимента, когда бизнес не может ждать полного набора выборки.
Типичный сценарий - вы запланировали эксперимент на 3 недели, но бизнесу нужно решение быстрее. Запускаете на 1 неделю, загружаете промежуточные данные и получаете прогноз: с какой вероятностью эксперимент будет успешным, если довести его до конца.
Прогноз основан на Байесовском инференсе через априорные и постериорные вероятности, корректно работать начинает уже от ~30% собранных данных и анализирует вероятности получения положительной разницы между группами (P(Δ>0)) и вероятности прокраса метрики по заданной альфе к концу эксперимента (P(α)).
Для мультивариативных экспериментов дополнительно вычисляется вероятность варианта быть лучшим в своей группе (P(Top)).

Движок анализа, мониторинг
Сколько бы я не работал в области АБ, всегда есть заказчики, которые ну очень хотят посмотреть как там движется эксперимент. Классическая статистика это запрещает, т.к. ранние расчёты приводят к нарушениям. Но подглядеть же хочется.
Мы учли этот момент и имплементировали sequential-testing на основе того же Байеса, мы не корректируем p-value, а оперируем вероятностями успеха.
Тут рассчитываются вероятности успеха по Global p (для ABC+, вероятность что хоть какая-то группа будет лучше контроля), лучший вариант, а так же health-check эксперимента - равное распределение групп и прогресс набора выборки.

Функция доступна только для экспов, полученных по API, об этом ниже.
Менеджмент метрик
Всё начинается с заполнения каталога метрик. По сути это просто справочник, чтобы держать команду в синхроне. Используется в sequential-тестах и в создании гипотез.

Метрики можно заводить в ручную или просто загрузить датасет эксперимента - система автоматически вычислит где там у вас потенциальные метрики и предложит добавить в каталог всей пачкой сразу.
Если отметить ключевую денежную метрику (Revenue, Gross, GMV и т.д.), то спустя время можно будет ретроспективно оценить профитность вашей стратегии экспериментов в разделе "Статистика".
Предварительная подготовка на этом за��анчивается, можно переходить к наполнению бэклога.
Создание гипотезы
В разных компаниях исторически свой формат дизайна гипотез, кто-то совсем минималистично описывает суть, кто-то заморачивается с предварительными исследованиями и требует обязательного документа-основания.
Мы попытались собрать тот формат, который нам кажется наиболее полным, но не очень перегруженным.
Заказчики заводят карточки гипотез в одноименном разделе. Тут Всего 2 обязательных поля - название гипотезы и, собственно, её суть. Текстовое поле гипотезы поддерживает markdown, так что сюда можно и ссылки прикрутить, и таблицы, если очень хочется.
Рекомендуется, конечно, заполнять все поля, скажете себе спасибо за контекст спустя время. Но для быстрых набросков заморачиваться не обязательно.

Единственное поле тут, которое может вызывать вопросы у заказчиков - это Требуемый размер выборки на эксперимент.
Для рассчёта выборки имеется дополнительный инструмент, который позволяет сконфигурировать почти любой дизайн эксперимента и рассчитать выборку по конверсионной или числовой метрике, с любым количеством групп и кастомным сплитом.

После создания гипотезы она появляется в разделе "Гипотезы" со статусом Backlog. Тут можно отфильтровать список новых идей и обсудить с командой приоритеты, а после запланировать проведение экспериментов.
Запланированные эксперименты наглядно можно посмотреть в разделе "Календарь", он выполнен на основе диаграммы Ганта, клик по названию гипотезы подкручивает на нужные даты.

В целом всё готово, осталось только планомерно запускать эксперименты на своей стороне и собирать данные для анализа.
После сбора данных загружаем их через CSV или, ещё проще в будущем, собираем витрину по экспам и просим инженеров настроить ETL-процесс для автоматической загрузки данных по API. Так все активные эксперименты будут сразу доступны для анализа, прогноза и sequential-тестирования.
После анализа эксперимента сохраняем результаты в нужную гипотезу и описываем выводы для команды. Если лень, или нет идей, можно воспользоваться помощью AI-ассистента, который проанализирует гипотезу, посмотрит на варианты, выборки (целевую и фактическую), изучит результаты во всех доступных сегментах и сам опишет свои наблюдения на всех доступных языках локализации. Вам останется только перечитать и поправить, если AI где-то не доглядел.

Готовую карточку эксперимента можно пошерить в команду для других участников, которых не добавили в команду в AB-Labz. Шеринг генерит токен в URL экспа и разрешает доступом по ссылке. Удалить токен и закрыть доступ можно в любое время.
API
REST API позволяет программно загружать датасеты экспериментов в AB-Labz без ручной загрузки через UI.
У подхода через API есть 2 преимущества:
На дашборде можно следить за всеми экспериментами, однако автоматический анализ после каждой отправки обновлённых данных доступен только для экспериментов, которые поставляются через API (SRM, Текущая выборка, прогноз успеха)
Автоматическая синхронизация. С настроенной синхронизацией не нужно вручную выгружать данные, каждый новый эксперимент становится сразу доступен в списке загрузки данных.
Логика работы API простая - вы собираете витрину на своей стороне и пушите аггрегированные данные по экспам в наш S3. Там данные хранятся в зашифрованном виде и удаляются автоматически через 30 дней после последнего обновления. В интерфейсе, в разделе API есть зеркало на вашу папку в S3, где можно удалить датасет эксперимента в ручную, он так же безвозвратно удалится и в S3.
Для аутентификации используется bearer-токен, который можно получить в интефейсе в разделе API. На одну компанию можно создать один ключ, но его всегда можно регенерировать, если он был утерян или скомпрометирован.
Раздел доступен только администраторам организации.

Ретроспектива
При наборе 10 завершённых экспериментов, открывается доступ к разделу "Статистика".
Эта страница представляет собой дашборд по стратегии экспериментов. Выводит как основные показатели: количество проведённых экспов, WinRate по ключевой метрике, средний достигнутый эффект по метрикам, средняя длительность экспа, так и считает накопительные эффекты: вроде "за время экспериментирования удалось повысить CR1 совокупно на 15%" или "Предотвращенные потери - 250000 Revenue, на не выкатке негативных фичей".
Если у вас установлена ключевая денежная метрика, то система анализирует значимые положительные эксперименты и высчитывает ориентировочный профит, который команда АБ смогла достичь своими внедрениями.
В этом же разделе есть блок инсайтов, в котором AI-ассистент ищет ваши паттерны в экспериментах, например "Слишком часто используется одна метрика в качестве ключевой, что может ограничивать потенциал оптимизации" или "Обратите внимание, эксперименты на покраску кнопок у вас почти всегда успешны, можно продолжать работать в этом направлении".

Приятные мелочи
Проект заточен под европейский рынок, поэтому root на английском, но доступна русская локализация. В ближайшем будущем планируется немецкий, французский и испанский. Уже доступна поддержка тёмной и светлой темы, планируется ещё кастомизация под стиль клиента.
Бета-тестирование
Сейчас проект в стадии открытой беты, присоединиться и попробовать можно, зарегистрировавшись на сайте проекта и написав нам письмо с темой запроса бета-доступа через форму саппорт (иконка с жуком в футере). Мы активируем доступ до конца бета-периода. В рамках беты весь функционал открыт.
Конец беты намечен на 31 марта 2026 года, но всё, как обычно, будет зависеть от обработки логов sentry и вашей обратной связи.
Если вам интересно посмотреть как можно оптимизировать работу аналитического отдела по направлению экспериментов, буду рад подключить вас к бете.
Сайт проекта: https://ab-labz.com/
Документация: https://library.ab-labz.com/
Консоль: https://workbench.ab-labz.com/
Спасибо за внимание!
