Как разработчик собрал инструмент аналитики и A/B‑тестирования с помощью Claude Code

Разработчик описал создание собственного инструмента аналитики и A/B‑тестирования, построенного с использованием Claude Code. В первой части проекта события из браузера отправлялись в Postgres, однако простой подсчёт просмотров страниц делает систему лишь упрощённой версией Google Analytics. Целью было получить функции, которые в готовых сервисах часто скрыты за корпоративными тарифами: проведение полноценных экспериментов и просмотр реальных пользовательских сессий. Как пишет Towards AI, обе задачи в итоге опираются на один технический приём, использование хеш‑функции.
Для A/B‑тестов автор отказался от типичного подхода, при котором библиотека изменяет DOM уже после загрузки страницы, из‑за чего пользователь на долю секунды видит исходную версию. Вместо этого тест состоит из двух URL, control и variant, а трекер перенаправляет часть трафика ещё до отображения страницы. Вариант создаётся как отдельная полноценная страница, что устраняет «мигание» интерфейса, хотя требует поддерживать две версии страницы.
Назначение варианта выполняется без серверной базы соответствий. Идентификатор посетителя объединяется с идентификатором теста и пропускается через хеш‑функцию FNV-1a, после чего получается число от 0 до 1, по которому определяется «корзина» пользователя с учётом веса вариантов. Такой подход обеспечивает, что один и тот же посетитель каждый раз попадает в тот же вариант, а добавление ID теста не позволяет предсказать результаты для других экспериментов. При редиректе также сохраняется query string, чтобы не терять UTM и параметры рекламных кликов, а запрос назначения варианта имеет тайм‑аут 2 секунды: при любой ошибке страница просто загружает control‑версию.
Результаты тестов считаются по событиям с меткой ab_variant: количество посетителей и конверсий по каждому варианту агрегируется одним запросом. Для оценки различий используется two‑proportion z‑test, а ключевым показателем автор считает доверительный интервал. Например, результат «3.2%» для Variant B дополняется интервалом Wilson, «3.2%, somewhere between 1.1% and 5.9%», что помогает не делать выводы по небольшим выборкам, например после всего сорока посетителей.
Ключевые факты
Создан инструмент аналитики и A/B тестирования с использованием Claude Code.
Для тестирования используется метод редиректа трафика перед загрузкой страницы.
Каждый посетитель всегда попадает на одну и ту же версию благодаря хеш-функции.
Статистический анализ выполняется без сторонних библиотек и с минимальным объемом кода.