INOTrackбыстрота, надежность и ахуенность
статья · 7 мин чтения

Сквозная аналитика расходов: FB, TikTok, Директ и push-сети

Расход из кабинетов, доход из постбеков и деньги в одном отчёте — без ежедневной таблицы. Как это устроено и где подводные камни.

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

Сквозная аналитика — это когда расход, клик, конверсия и выплата связаны одним ключом и лежат в одном отчёте. Ниже — как это устроено в трекере на примере Facebook, TikTok, Яндекс.Директа и push-сетей, и где обычно ломается.

Три вопроса сквозной аналитики

  1. Откуда берётся расход — из API кабинета, вручную или из параметра ссылки.
  2. Как расход связывается с кликами — по какому ключу трекер понимает, что эти 1000 рублей потрачены на эту кампанию.
  3. В какой валюте всё считается — расход в долларах, выплата в рублях, налог в рублях, а смотреть хочется в одной цифре.

Ответ на каждый вопрос определяет, будет ли ROI в отчёте правдой.

Откуда берутся расходы

Рекламные кабинеты по API

inotrack забирает расходы из пяти кабинетов:

Кабинет Как подключается Уровень данных
Яндекс.Директ OAuth одной кнопкой кампания, группа, объявление; без НДС
VK Реклама OAuth одной кнопкой кампания, группа, объявление
Facebook токен доступа и ID рекламного аккаунта кампания, группа, объявление
TikTok токен доступа и ID рекламодателя кампания, группа, объявление
Google Ads OAuth-ключи и developer token кампания, группа, объявление

Синхронизация идёт каждый час: трекер забирает расход, показы и клики за текущий день, а в начале нового дня ещё раз перечитывает вчерашний — кабинеты часто досчитывают расходы задним числом. Токены хранятся на вашем сервере в зашифрованном виде (AES-256-GCM).

Подробно о каждой интеграции — на странице импорта расходов и в каталоге интеграций.

Push-сети

Синхронизации расходов по API с push-сетями в inotrack сейчас нет. Для них — и для попандеров, посевов, агентских кабинетов — есть ручной расход в карточке источника. Два режима:

  • Сумма — вы вносите, сколько потрачено за период по источнику или кампании;
  • CPC — вы указываете цену клика, и трекер сам умножает её на число кликов источника за период. Боты и тестовые клики в расчёт не входят.

Второй режим удобен для push-сетей с фиксированной ставкой: расход растёт вместе с трафиком без ежедневного ввода. Ручной расход сразу попадает в отчёты и P&L так же, как импортированный, а валюта выбирается при вводе — рубли, доллары или евро.

Почему не из параметра ссылки

Некоторые трекеры принимают стоимость клика параметром в ссылке. В inotrack такого нет намеренно: расходы идут из интеграции источника или вручную. Цена из ссылки — это ставка, а не списание: она не учитывает скидки, возвраты, перерасход и досчёты кабинета.

Как расход связывается с кликами

Это самая частая причина «кривого» ROI. Трекер должен понять, что строка расхода из кабинета и клики в его базе относятся к одной кампании. В inotrack связка идёт по трём ключам: кампания, группа и объявление. Клик берёт их из параметров ссылки — utm_campaign, utm_content, utm_term (или campaign, adset, creative), а интеграция пишет расход в те же ключи.

Готовые шаблоны ссылок, при которых расход ложится на те же клики:

  • Яндекс.Директ: utm_campaign={campaign_id}&utm_content={gbid}&utm_term={ad_id}
  • VK Реклама: utm_campaign={{ad_plan_id}}&utm_content={{campaign_id}}&utm_term={{banner_id}} — в макросах VK campaign_id означает группу объявлений
  • Google Ads: utm_campaign={campaignid}&utm_content={adgroupid}&utm_term={creative}

У Директа и VK связка по умолчанию идёт по ID. У Facebook и TikTok — по названиям кампаний, групп и объявлений, поэтому в ссылку передаются их имена через динамические параметры площадки. Для Google Ads можно выбрать режим по ID или по названиям. Шаблоны ссылок подсказывает форма интеграции и конструктор ссылки потока в админке — вручную собирать не нужно.

Типичные ошибки связки

  • Переименовали кампанию в Facebook. Связка по имени разорвалась: старые клики под одним именем, новый расход под другим. Переименовывайте до запуска, а не во время.
  • Одинаковые имена у разных кампаний. Клон кампании с тем же названием смешает расходы двух кампаний.
  • Шаблон ссылки не тот. Например, в Директе в utm_content передаётся объявление вместо группы — расход ляжет мимо кликов.
  • Площадка не дописала свой click ID. Для отдачи конверсий в кабинет нужны gclid, yclid, rb_clickid и подобные — их площадки дописывают сами, если не отключена автопометка.

Валюты

Facebook считает в долларах, Директ — в рублях, сеть платит в рублях или в долларах. inotrack держит рубли, доллары и евро на равных: каждая строка расхода пересчитывается по курсу ЦБ на свою дату. Курсы обновляются раз в сутки, недостающая история догружается сама.

Важная деталь: строка из API без курса не записывается нулём, а попадает в ошибки синхронизации. Нулевой расход в отчёте опаснее отсутствующего — он делает убыточную кампанию «бесплатной».

ROI и P&L

Когда расходы связаны с кликами, метрики считаются в отчёте сами:

  • профит = выплата − расход;
  • ROI = профит / расход × 100%;
  • CPC = расход / клики.

Отчёт строится по любым измерениям — источник, кампания, группа, объявление, гео, sub-метки — и раскрывается до отдельных кликов. Смотрите отчёты и аналитику.

Но ROI по кампании — ещё не прибыль команды. В финмодуле P&L считается как подтверждённый доход минус расход на трафик минус прочие расходы. В прочие расходы входят серверы, хостинг, домены и CDN: их стоимость трекер раз в сутки забирает из API Timeweb Cloud, Hetzner, Cloudflare и Namecheap.

Подтверждённый доход, а не ожидаемый

Сквозная аналитика честна, только если доход — это то, что сеть действительно засчитала. Поэтому в P&L идёт подтверждённый доход, а не лиды в холде. А чтобы проверить, что сеть засчитала всё, есть сверка: загружаете выгрузку из кабинета сети, трекер сопоставляет её со своими конверсиями по clickid и показывает расхождения. Как настроить постбеки так, чтобы сверка сходилась, — в статье о постбеках Unicom24, Leads.su и Admitad.

Боты и расходы

Кабинет списывает деньги за все клики, включая ботов. Трекер считает ботов отдельно, поэтому в отчёте видно, какая доля оплаченного трафика была мусором и в каких зонах. Для push-сетей это особенно полезно: зоны с высокой долей ботов трекер помечает сам, а дальше решаете вы — отключить зону в кабинете сети или блокировать её в трекере. Как устроен детект — в статье о бот-фильтрации.

Следить, а не только считать

Сквозной отчёт полезен, когда на него смотрят вовремя. Чтобы не открывать его каждый час, в inotrack есть три способа узнать о проблеме раньше:

  • Аномалии. Трекер строит базовую линию кликов, CR и EPC и сообщает, когда метрика проваливается ниже неё, а отдельный алерт — когда постбеки перестают приходить. Это частые признаки того, что сломалась ссылка или сеть перестала слать постбеки, пока расход продолжает идти.
  • Правила. Например: CR ниже порога за час — пауза оффера и алерт. Правило работает по метрикам трекера, а не по ощущениям баера.
  • Telegram. Сводки /today, /week, /roi и /balance прямо в чате, а алерты — о капе, падении CR и пропаже постбеков. Подробнее — на странице API, MCP и Telegram.

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

Как запустить за один день

  1. Подключите кабинеты. Директ и VK — OAuth одной кнопкой, Facebook, TikTok и Google Ads — токенами.
  2. Поправьте ссылки объявлений. Возьмите шаблон из формы интеграции и вставьте в объявления, иначе расход не ляжет на клики.
  3. Заведите ручные расходы. Для push-сетей и площадок без API — режим CPC или сумма за период.
  4. Дождитесь цикла. Через час расход появится в отчётах; вчерашний день досчитается на следующие сутки.
  5. Проверьте одну кампанию. Сравните расход в отчёте трекера с кабинетом за тот же день и в той же валюте.
  6. Отдайте конверсии обратно. Подключите исходящие постбеки в кабинеты, чтобы их алгоритм учился на заявках — подробнее на странице постбеков.

Итог

Сквозная аналитика держится не на красивом дашборде, а на трёх скучных вещах: расход приходит сам, ключ связки один и тот же в кабинете и в трекере, валюты пересчитываются по курсу на дату. Настройте их один раз — и утренняя таблица больше не понадобится.

Дальше

Другие статьи

статья

Как выбрать трекер для арбитража в 2026

Чек-лист из двенадцати пунктов: что проверить в трекере до того, как вести на него деньги, и как сделать это за неделю теста.

статья

Self-hosted трекер vs облачный: что выгоднее

Разбираем, из чего на самом деле состоит счёт за трекер, и при каких условиях свой сервер выгоднее облака — а при каких нет.

статья

Как настроить постбек Unicom24, Leads.su и Admitad в трекере

Пошагово: clickid в ссылке оффера, постбек-URL трекера в кабинете сети, статусы и суммы, проверка и сверка — на примере трёх CPA-сетей.

статья

Бот-фильтрация и защита лендов от скрейпинга

Боты съедают бюджет, портят статистику и уносят ленды. Разбираем, как трекер отличает их от людей и что безопасно с ними делать.

статья

Переезд с Keitaro за 10 минут

Импорт сам переносит настройки из Keitaro. Разбираем, что именно он забирает, что остаётся на тебе и в каком порядке переключать трафик.

Поставь inotrack на свой сервер

Установка одной командой на чистый VPS за 10–15 минут. Ключ — сразу после оплаты на сайте или бесплатный на 7 дней.

Вопросы — в Telegram @SmokeJung.

Поддержка