Нулевые показатели

В этом руководстве объясняется, почему в отчетах Google Ads API появляются строки с нулевыми показателями и как исключить или обработать их в запросах.

Нулевые показатели в результатах поиска

При выполнении запроса вы можете столкнуться с нулевыми значениями показателей для объектов. Возможные причины:

  • Объекты не подходят для показа.
  • Они были приостановлены в течение диапазона дат отчета.

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

Как исключить нулевые показатели с помощью предиката

Предикат – это выражение, которое принимает значение TRUE, FALSE или UNKNOWN. Предикаты используются в условиях поиска в предложениях WHERE в языке запросов Google Рекламы.

В следующем запросе показано, как явно удалить нулевые показатели с помощью предиката:

SELECT
  campaign.id,
  metrics.impressions
FROM campaign
WHERE metrics.impressions > 0

Как исключить нулевые показатели с помощью сегментирования

При сегментировании отчета нулевые показатели всегда исключаются, если все выбранные показатели равны нулю (см. раздел Строки с нулевыми показателями).

Чтобы сегментировать отчет, добавьте любое поле segments в условие SELECT поискового запроса. Если вы отфильтруете базовый сегмент дат в условии WHERE, не выбрав его в условии SELECT, отчет не будет сегментирован. Например, если вы сегментируете отчет по параметру segments.date, показатели будут разбиты по строкам для каждой даты. Даты, для которых нет показателей, в отчет не включаются.

В отчете по следующему запросу не будет строк с нулевыми показателями:

SELECT
  campaign.name,
  metrics.impressions,
  segments.date
FROM campaign
WHERE segments.date DURING LAST_30_DAYS

Возвращенные строки с нулевыми показателями

Строки, в которых все выбранные показатели равны нулю, не будут возвращены при сегментировании. Например, рассмотрим следующий запрос, который выбирает metrics.impressions, metrics.clicks и metrics.conversions:

SELECT
  ad_group_criterion.criterion_id,
  metrics.impressions,
  metrics.clicks,
  metrics.conversions,
  segments.date
FROM keyword_view
WHERE segments.date BETWEEN '2026-01-01' AND '2026-01-31'

В итоговом отчете не будет строк, в которых все три выбранных показателя равны нулю, но будут строки, в которых хотя бы один из трех выбранных показателей больше нуля.

При запросе статистики за период, превышающий срок хранения данных, подробные данные за период более 37 месяцев будут недоступны и строки не будут возвращены. Запросы подробных сегментов дат (segments.date, segments.week и segments.hour) для диапазонов более 37 месяцев возвращают ошибку DateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTED в версии 24 и более поздних (или DateRangeError.UNKNOWN в версии 23). Обобщенные агрегированные данные (segments.month, segments.quarter и segments.year) хранятся в течение 11 лет, начиная со следующего полного календарного периода. Например, если 11-летний период ретроспективного анализа заканчивается 2015-03-22 (или 2015-03-01), то ежемесячные данные доступны начиная с первого полного календарного месяца после окончания периода (2015-04-01). Подробнее о диапазонах дат…

Скрытие показателей охвата и нулевые значения

Помимо объектов, для которых не было выполненных показов, показатели охвата (например, metrics.unique_users и показатели частоты показов metrics.unique_users_two_plus–metrics.unique_users_ten_plus) могут быть равны нулю или отсутствовать, если данные об охвате не учитываются. Показатель metrics.unique_users (и metrics.unique_users_info) поддерживается в медийных и видеокампаниях, а также в кампаниях для приложений и для создания спроса. Показатели диапазона частоты показов metrics.unique_users_*_plus (и metrics.unique_users_*_plus_info) применяются к видеокампаниям.

Охват может быть ограничен по нескольким причинам:

  • Пороговые значения конфиденциальности. Данные об охвате не показываются, если количество пользователей не соответствует пороговым значениям конфиденциальности (например, k-анонимности), которые нужны для защиты идентификационных данных пользователей.
  • Пороги качества. Данные об охвате могут не показываться, если они не соответствуют стандартам качества.
  • Хранение данных. Статистика охвата хранится в течение трех лет (36 месяцев). Запросы, охватывающие даты за пределами этого 3-летнего периода хранения, не могут возвращать показатели охвата. Запросы, охватывающие даты от 36 до 37 месяцев назад, выполняются без возврата DateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTED, описанного в предыдущем разделе, но они пропускают показатели охвата (и возвращают DATE_RANGE_BEYOND_RETENTION, когда выбраны метаданные сопутствующего охвата).

В версии 26 и более поздних у каждого показателя охвата уникальных пользователей есть сопутствующее поле метаданных типа ReachMetricInfo (например, metrics.unique_users_info и metrics.unique_users_two_plus_info–metrics.unique_users_ten_plus_info).

В языке запросов Google Рекламы (GAQL) поля сопутствующего охвата – это показатели MESSAGE, выбранные непосредственно в пункте SELECT (например, metrics.unique_users_info). Не добавляйте .reach_metric_states в пункт SELECT, поскольку выбор вложенных полей сообщений в GAQL приводит к ошибке UNRECOGNIZED_FIELD. Вместо этого при выборе metrics.unique_users_info возвращается сообщение ReachMetricInfo, содержащее повторяющееся поле перечисления reach_metric_states типа ReachMetricState, которое описывает, был ли показатель скрыт или он полный.

Если показатель охвата скрыт или находится за пределами окна хранения (PRIVACY_SUPPRESSION, QUALITY_SUPPRESSION или DATE_RANGE_BEYOND_RETENTION), его поле optional int64 в Metrics не задано (что соответствует 0, если наличие поля не проверяется), а в LOW_QUALITY по-прежнему указывается числовой показатель:

  • COMPLETE – показатель охвата полный, без исключений.
  • PRIVACY_SUPPRESSION: данные об охвате скрыты для защиты конфиденциальности.
  • QUALITY_SUPPRESSION: данные об охвате скрыты из-за проблем с качеством.
  • LOW_QUALITY – показатель охвата рассчитан, но помечен как низкокачественный.
  • DATE_RANGE_BEYOND_RETENTION: показатели охвата недоступны, поскольку выбранный диапазон дат выходит за пределы трехлетнего срока хранения данных об охвате.

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

SELECT
  campaign.id,
  campaign.name,
  metrics.unique_users,
  metrics.unique_users_info,
  metrics.unique_users_two_plus,
  metrics.unique_users_two_plus_info,
  metrics.unique_users_ten_plus,
  metrics.unique_users_ten_plus_info
FROM campaign
WHERE campaign.advertising_channel_type = 'VIDEO'
  AND segments.date DURING LAST_30_DAYS