Surrika

Пропуски дней в рекламных данных по кампаниям

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

Отчеты и данные

Как считать

  1. Берем кампании, которые показывали рекламу в последнем месяце выгрузки, и для каждой находим первый день с записями.
  2. Строим по каждой кампании все календарные дни от первого дня работы до конца месяца.
  3. Отмечаем дни, где нет ни одной строки с показами.
  4. Считаем число таких дней и их долю в днях работы кампании.
  5. Сортируем кампании по числу пропущенных дней.

Расчет на выгрузках магазина

Пример посчитан на выгрузках вымышленного мебельного магазина: продажи сайта и трех маркетплейсов, реклама, сделки CRM и остатки за 2024-2025 годы.

Какие дни выпали из рекламных данных по кампаниям за последний месяц и как это проверить?

Дни без данных по кампаниям за последний месяц

SQL, по которому посчитано

WITH bounds AS (
    SELECT date_trunc('month', max(date)) AS month_start,
           max(date) AS last_date
    FROM ads
),
days AS (
    SELECT CAST(unnest(generate_series(b.month_start, b.last_date, INTERVAL 1 DAY)) AS DATE) AS day_date
    FROM bounds b
),
campaigns AS (
    SELECT a.source,
           a.campaign,
           min(a.date) AS first_date
    FROM ads a
    CROSS JOIN bounds b
    WHERE a.date >= b.month_start
    GROUP BY a.source, a.campaign
),
grid AS (
    SELECT c.source,
           c.campaign,
           d.day_date
    FROM campaigns c
    CROSS JOIN days d
    WHERE d.day_date >= c.first_date
)
SELECT g.source,
       g.campaign,
       count(*) AS days_in_period,
       count(*) FILTER (WHERE a.date IS NULL) AS missing_days,
       round(count(*) FILTER (WHERE a.date IS NULL) * 1.0 / count(*), 3) AS missing_share
FROM grid g
LEFT JOIN ads a
       ON a.source = g.source
      AND a.campaign = g.campaign
      AND a.date = g.day_date
GROUP BY g.source, g.campaign
ORDER BY missing_days DESC, g.campaign
LIMIT 30

Где в выгрузках появляются пропуски дней в рекламных данных

Директ и VK Реклама отдают статистику по дням за весь период, а продвижение на маркетплейсах приходит из кабинета продавца и часто содержит строку только за день с показами. Пропуск появляется, когда кампания стоит на паузе, бюджет закончился утром, ставка не дала показов или выгрузка собрана с задержкой. Сверьте дату последнего обновления отчета в кабинете с датой последней строки в своей таблице. Если отчет обновлен позже, часть дней догрузится сама и проверять их не нужно.

Чем пропуск дня отличается от нулевых показов

Строка с нулевыми показами значит, что кампания была включена и не получила трафика. Отсутствие строки значит, что данных за этот день нет совсем. Перед выводами откройте статус кампании и историю изменений ставок за спорную дату. Для сверки бюджета важен второй случай, потому что расход и заказы за пропущенный день в сумму не попадут.

Как прочитать пропуски по кампаниям в结果

В результате видно, сколько дней работы у каждой кампании закрыто записями и сколько дней выпало. Длинная серия пропусков подряд обычно означает остановку кампании или смену стратегии. Одиночные дни чаще связаны со сбоем выгрузки. Кампании с самыми длинными сериями проверяйте первыми, они сильнее всего искажают суммы за месяц.

Что делать с найденными пропусками дней в рекламе

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

Частые ошибки

Средний расход считают по всем дням месяца

Если дни без записей принимают за нули, средний дневной расход и цена клика падают. Делите расход на число дней, когда показы были.

Сравнение числа пропусков между площадками

Механика продвижения на маркетплейсах и в Директе разная, и одинаковое число пропусков значит разное. Сравнивайте кампании внутри одного источника, а между источниками сопоставляйте долю пропущенных дней от дней работы.

Вопросы

Как часто проверять пропуски в рекламных данных?

Раз в месяц перед сверкой бюджета. Для кампаний с сезонным спросом добавляйте проверку за квартал.

Влияют ли пропуски на окупаемость рекламы?

Да, расход и заказы за месяц оказываются неполными, и окупаемость смещается. Сравнивайте окупаемость после восстановления данных или считайте ее по дням с записями.

Можно ли восстановить пропущенные дни из другого отчета?

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

Посчитайте это на своих выгрузках

Бросьте выгрузки на доску Surrika и задайте вопрос обычными словами. Ответ придет графиком, а под ним будет SQL, по которому он посчитан.

14 дней бесплатно, карта не нужна.

По теме

Все задачи