GAQL (Google Ads Query Language)
GAQL — мова запитів Google Ads API: кожен SQL-подібний запит називає один ресурс і поля, сегменти та метрики, які потрібно для нього повернути.
Як працює
Запиту потрібні SELECT і FROM; WHERE, ORDER BY, LIMIT і PARAMETERS необов’язкові. FROM називає один ресурс. JOIN немає: щоб отримати поля пов’язаного ресурсу, наприклад кампанії групи оголошень, їх додають у SELECT.
GROUP BY теж немає: кожен сегмент у SELECT, як-от segments.date, розбиває метрики на окремий рядок для кожного значення. Якщо ви вибираєте сегмент дати, WHERE має задавати скінченний діапазон дат. WHERE поєднує умови лише через AND; замість OR Google радить IN або REGEXP_MATCH.
Для звітності за товарами shopping_performance_view містить метрики товарів, які показували рекламу, shopping_product — поточний стан кожного товару, а asset_group_product_group_view — групи товарів (listing groups) Performance Max. Ті самі запити працюють у скриптах Google Ads і на MCP-сервері Google. Робочі запити та пастки в даних, яких слід уникати, — у матеріалі про Google Ads API для звітності за товарами.
Приклад
Приклад на вигаданому магазині, числа не клієнтські.
SELECT segments.product_item_id, metrics.impressions, metrics.cost_micros
FROM shopping_performance_view
WHERE segments.date DURING LAST_30_DAYS
Магазин посуду отримує 1 200 рядків, по одному на кожен товар із показами; решта 1 800 із його 3 000 товарів рядка не отримують. Витрати повертаються в мікроодиницях, мільйонних частках грошової одиниці: на тарілку з cost_micros 25 000 000 витрачено 25.
Не плутати з
- Google Ads API — інтерфейс, через який працює GAQL. GAQL лише читає дані; зміни надсилаються окремими запитами mutate.
- BigQuery Data Transfer Service — завантажує звіти Google Ads у таблиці BigQuery не частіше ніж раз на добу. Запит GAQL може задавати власний звіт, але збережені таблиці ви опитуєте вже в BigQuery.
Правильне й неправильне прочитання
- Неправильно: «
WHERE segments.product_item_id = 'PLT-0457'нічого не повертає, отже, тарілка ніколи не показувалася». Правильно: в акаунтах наших клієнтів звіти за товарами повертають ID товару малими літерами, а=чутливий до регістру. Фільтруйте за'plt-0457'або скористайтеся LIKE, який регістр ігнорує. - Неправильно: «У звіті з розбивкою за датами немає рядка за 14 березня, отже, дані не завантажилися». Правильно: після сегментації звіту рядки, у яких усі вибрані метрики дорівнюють нулю, пропускаються.
Джерела
- Google Ads Query Language, Query structure і Google Ads Query Language grammar (англійською) — частини запиту, неявні об’єднання, сегменти, лише AND. Перевірено 02.10.2026.
- Case sensitivity і Zero metrics (Google Ads API, англійською). Перевірено 02.10.2026.
- Reporting (Google Ads API, Shopping, англійською) — звіти за товарами. Перевірено 02.10.2026.
- Money (Google Ads API, англійською) — суми в мікроодиницях. Перевірено 02.10.2026.
- Дані GetProfit: звіти Google Ads за товарами магазинів клієнтів — ID товарів малими літерами.