TRAFMATE
Self-hosted · Go · ClickHouse

Трекер решает, кто перед ним, до того как сработает редирект.

Фильтрация трафика, потоки и постбеки на одном движке. Ставится вашим docker compose, данные не выходят за периметр, конфиг применяется на лету.

Нужен свой сервер. Никакого SaaS, общей базы и посредника между вами и вашим трафиком.

поток идёт
4 прошло3 отсечено1 white
ВремяПосетительВердиктМаршрут
14:22:07176.32.14.9 · DE · Android 14PASSmoney
14:22:0752.14.220.4 · US · DatacenterBOT404
14:22:0891.108.5.61 · UA · iOS 17PASSmoney
14:22:0834.90.11.77 · NL · AzureISP404
14:22:09188.43.9.120 · RU · DesktopGEOwhite
14:22:0937.115.2.8 · UA · Android 13PASSmoney
14:22:1020.55.19.3 · US · PalladiumRBLwhite
14:22:1146.211.88.4 · UA · Android 14PASSmoney

Каждый клик проходит фильтры потока и получает маршрут. Здесь показана форма реальной строки лога: время, посетитель, вердикт, куда ушёл.

7 300 / с
кликов в секунду, замерено
33
типов фильтров из коробки
91
измерений в отчётах
< 2 с
применение конфига

Что умеет движок

Шесть вещей, которыми вы будете пользоваться каждый день. Полный список - на странице возможностей.

01 / Фильтры

Фильтры и антибот

Гео, ISP, тип устройства, прокси, реферер, язык, списки IP, бот-сигнатуры. Palladium и Adspect подключаются как обычные условия потока.

02 / Потоки

Приоритет и распределение

Сначала форс-потоки, затем обычные по весам, затем дефолт. Действия: редирект, отдать локальный HTML, вернуть 404, перебросить в другую кампанию.

03 / Офферы

Мультиоффер с весами

Один поток крутит несколько офферов с весом на каждом. Лимит кликов и лимит конверсий останавливают поток на заданной цифре.

04 / Постбеки

S2S в обе стороны

Приём конверсий с алиасами параметров под формат вашей сети и раздача в источник с ретраями. Одна конверсия на клик, смена статуса пересчитывает отчёт.

05 / Отчёты

Конструктор на ClickHouse

Двухуровневая группировка с подытогами, drill-down по клику на значение, свои метрики формулой, базис по дате клика или конверсии.

06 / Команда

Изоляция по группам

Баер видит только свои кампании, офферы и отчёты. Root-аккаунт защищён триггерами базы, а не только интерфейсом.

Главное отличие

Антибот - часть трекера, а не вторая подписка.

Binom продаёт защиту от ботов отдельным продуктом поверх лицензии. Keitaro даёт встроенные фильтры, но внешний антифрод оставляет на вашу самодеятельность. В TrafMate Palladium и Adspect - такие же типы фильтров, как гео и устройство: добавляете в поток и ставите accept или reject.

White-страница или 404

Краулеры, дата-центры, прокси, не то гео.

Лендинг и оффер

Живой человек из того гео, устройства и оператора, за которые вы заплатили.

Самые ходовые из 33 типов фильтров10
  • База бот-сигнатур (IP, user agent, отпечаток)
  • Страна, регион и город по IP
  • ISP и оператор - отсев дата-центров
  • Тип устройства, ОС, версия ОС, браузер
  • Детект прокси и VPN
  • Реферер, пустой реферер, GET-параметры, sub_id
  • Язык браузера
  • Белые и чёрные списки IP
  • Palladium (rbl.palladium.expert) как нативный фильтр
  • Adspect по stream UUID как нативный фильтр
Попробуйте

Задайте посетителя - увидите вердикт.

Та же цепочка фильтров, которую движок прогоняет на каждом клике, и в том же порядке: reject-правило выигрывает в момент совпадения. Меняете посетителя - меняется маршрут.

Посетитель
Страна
Устройство
Сеть
Реферер
Антифрод
Цепочка фильтров5
  1. country · accept UA, DE, PLпрошёл
  2. device_type · accept mobileпрошёл
  3. isp · reject дата-центрпрошёл
  4. empty_referrer · rejectпрошёл
  5. paladiumklo · reject при попаданиипрошёл
MONEY

Лендинг, затем оффер. Это тот посетитель, за которого вы заплатили.

Упрощённая модель пяти фильтров из пятнадцати, которые есть в движке. В панели каждое правило - строка на потоке, и режим accept или reject задаёте вы сами.

Команды

Байеры не видят чужую работу.

Доступ ограничивают два независимых слоя: какие разделы пользователь может открыть и какие сущности он видит внутри них. Изоляция по группам означает, что кампании, офферы, лендинги и отчёты баера принадлежат только ему.

Две роли

У админа есть всё. Баер получает ровно то, что разрешает ACL - остального нет ни в интерфейсе, ни в API.

Защищённые аккаунты

Root-аккаунт нельзя удалить, отключить или лишить прав админа. Ограничение стоит на триггерах базы, поэтому его не сломать и прямым SQL.

API-ключи

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

Источники и сервисы

Что подключается сейчас и что ещё в планах. Пишем и то и другое, потому что сайт трекера, который прячет роадмап, - это сайт трекера, которому нельзя верить.

Работает сейчас12
  • Антифрод Palladium
  • Антифрод Adspect
  • Входящие постбеки от любой сети (алиасы параметров)
  • Исходящие S2S с макросами и ретраями
  • On-demand TLS от Let's Encrypt для доменов кампаний
  • Базы MaxMind GeoIP
  • Facebook Conversions API, упакованная интеграция
  • TikTok Events API
  • Офлайн-конверсии Google Ads
  • Подключение домена через Cloudflare в один клик
  • Импорт конверсий из файла
  • Управление списками ботов в интерфейсе
В планах1
  • Автоматизация доменов через Namecheap

Namecheap остался единственным и лежит в бэклоге до запроса клиента. Домены сегодня подключаются через Cloudflare в один клик.

Что подключаетсяРаботаетВ планах
PalladiumАнтифрод
AdspectАнтифрод
MaxMindGeoIP
Let's EncryptTLS
FacebookS2S-макросы
TikTokS2S-макросы
BigoS2S-макросы
KadamS2S-макросы
MintegralS2S-макросы
Facebook CAPIВ один клик
Google AdsОфлайн-конв.
CloudflareДомены
NamecheapДомены

Источники с пометкой «S2S-макросы» работают уже сейчас через постбек-URL с макросами. Упакованная настройка в один клик для Facebook CAPI, Google Ads и Cloudflare пока в планах.

Архитектура

Написано под горячий путь.

Клик-движок не ходит в PostgreSQL, пока посетитель ждёт. Он держит кампании, потоки, фильтры, офферы и домены в памяти и обновляет их в фоне. Аналитика пишется асинхронно через Redis Stream, поэтому запись клика не может затормозить ответ.

trafficGo

Приём клика, фильтры, выбор потока, редирект, входящие постбеки

workerGo

Redis Stream в ClickHouse батчами, исходящие S2S с ретраями

adminGo + SPA

CRUD, дашборд, конструктор отчётов, ACL, инструменты трекинга

landerFrankenPHP

Локальные лендинги и PWA-шаблоны с макросами

PostgreSQL16

Конфигурация всех сущностей

ClickHouse25

Клики, LP-клики, конверсии

Redis7

Очередь, уникальность, sticky-визитор, кэш вердиктов

Caddy2

Reverse-proxy, автоматический TLS для доменов кампаний

Установка

Одна команда на чистом сервере.

curl -fsSL https://get.trafmate.com/install.sh | sudo bash

Debian 12 или Ubuntu 22+. Никуда не надо логиниться: compose и Caddyfile вшиты в скрипт, а лицензионный ключ панель спросит сама при первом входе. Ставится текущая стабильная версия, а не latest, поэтому установка воспроизводима и её можно откатить.

Как мы стоим рядом с Keitaro и Binom

Коротко. Полная таблица, включая то, чего у нас нет, - на странице сравнения.

Полное сравнение
Как мы стоим рядом с Keitaro и BinomTrafMateKeitaroBinom
АнтиботPalladium и Adspect нативно, в ценеВстроенные фильтры, внешний антифрод самиОтдельный платный продукт
ПользователиБез лимита, изолированы по группамОт 1 до 5 в зависимости от тарифаБез лимита, без изоляции по группам
ЛендингиРедактор файлов в панели, PHP-песочница, существующие ЛП едут как естьРедактор на старших тарифахХостите сами
ХостингТолько свой серверСвой серверСвой сервер или облако

Тарифы

Клики не считаются никогда, ни на одном тарифе. Домены считаются, но щедро: тариф Keitaro, сопоставимый с вашим, даёт их заметно меньше и стоит дороже.

Все тарифы и полная таблица
SoloЧерновик
$59/мес

Один байер со своими кампаниями

TeamЧерновик
$129/мес

Команда байеров с разделением работы

ScaleЧерновик
$199/мес

Команда, которой стало тесно в Team

AgencyЧерновик
$299/мес

Агентство, которое льёт на клиентов

Что спрашивают

Есть облачная версия?
Нет. TrafMate только self-hosted. Вы поднимаете его через docker compose на своём сервере, и данные кликов оттуда не уходят. Это осознанное решение по продукту, а не этап, который мы проходим.
Какой нужен сервер?
На несколько миллионов кликов в месяц комфортно на машине с 8 ядрами, 16 ГБ памяти и NVMe. Диск в первую очередь нужен ClickHouse. Конфигурацию посчитаем вместе до покупки.
Вы ставите сами?
Да, и это ничего не стоит. Вы даёте чистый сервер, мы поднимаем стек, направляем домены и передаём админский аккаунт. Входит во все тарифы, включая Solo.
Можно переехать с Keitaro без потери истории?
Да. Переносятся кампании, потоки, фильтры, офферы, лендинги, источники трафика, пользователи и история кликов. Наша собственная миграция перенесла 2 274 973 клика, отчёты после неё сошлись.
Мои лендинги будут работать?
Да. Сервис lander крутит PHP 8.3 под FrankenPHP и отдаёт локальные страницы и PWA-шаблоны с теми же макросами, поэтому страницы, сделанные под Keitaro, переписывать не нужно.
Вы забираете долю трафика или видите мои данные?
Нет. Никакого phone-home, общей базы и трафика, который идёт через нас. Наружу трекер ходит только туда, куда вы его настроили: антифрод, постбеки и выпуск сертификатов.
Сколько сверху стоит бот-фильтр?
С нашей стороны нисколько. Palladium и Adspect - сторонние сервисы со своими ценами: если вы уже за один платите, просто вводите ключи и он работает как фильтр.
Чего нет по сравнению с Keitaro?
Упакованных интеграций с рекламными кабинетами, импорта конверсий из файла, симуляции трафика, редактирования списков ботов в интерфейсе, глобального поиска и архива с TTL. Всё это перечислено на странице сравнения, а не спрятано.

Поставьте его на свой сервер.

Лицензия покупается за пару минут: выбираете тариф, платите, ключ приходит на почту. Установка - одной командой на вашем сервере.

Купить лицензию