Как продолжать глубоко прорабатывать поисковые запросы в Google Ads (вопреки введённым ограничениям)

Не так давно Google сильно урезал отчет о поисковых запросах. Не то чтобы совсем, но уж как-то существенную их часть. Учитывая, что это был источник постоянного пополнения семантики и минус-фраз, рынок специалистов выдал громкий нецензурный вой и стал придумывать, как дальше не упустить из-под контроля одну из самых важных основ оптимизации рекламных кампаний. Хочу поделится своим решением данного вопроса.

Как продолжать глубоко прорабатывать поисковые запросы в Google Ads (вопреки  введённым ограничениям)

для начала попробуем понять, как много запросов мы теряем - это можно сделать с помощью ниже прикрепленного скрипта

/*************************************************** * Undefined Search Terms Report * @version 1.1 * @author: Naman Jindal (Optmyzr) ****************************************************/ var LAST_N_DAYS = 30; // Number of previous days to include in report var EMAILS = ['example@example.com']; // Array of Emails to be notified and given access to the results in a Google Sheet var PRIMARY_METRIC = 'Cost'; // E.g. Impressions, Cost, Clicks function main() { var map = {}; var DATE_RANGE = getAdWordsFormattedDate(LAST_N_DAYS, 'yyyyMMdd') + ',' + getAdWordsFormattedDate(1, 'yyyyMMdd'); var query = [ 'SELECT Date, Impressions, Cost, Clicks FROM ACCOUNT_PERFORMANCE_REPORT', 'WHERE AdNetworkType1 = SEARCH', 'DURING', DATE_RANGE ].join(' '); var rows = AdsApp.report(query).rows(); while(rows.hasNext()) { var row = rows.next(); map[row.Date] = { 'ACTUAL': 0, 'QUERIES': 0 }; map[row.Date].ACTUAL = parseInt(row[PRIMARY_METRIC], 10); } var query = [ 'SELECT Date, Query, Impressions, Cost, Clicks FROM SEARCH_QUERY_PERFORMANCE_REPORT', 'WHERE AdNetworkType1 = SEARCH', 'DURING', DATE_RANGE ].join(' '); var rows = AdsApp.report(query).rows(); while(rows.hasNext()) { var row = rows.next(); map[row.Date].QUERIES += parseInt(row[PRIMARY_METRIC], 10); } var output = []; for(var date in map) { output.push([date, map[date].ACTUAL, map[date].QUERIES, (map[date].ACTUAL - map[date].QUERIES) / map[date].ACTUAL]); } if(!output.length) { Logger.log('No data in the account'); } var TEMPLATE_URL = 'https://docs.google.com/spreadsheets/d/1G1-zPqm0kqQjZSPEwS8cfndYVzkswbyl80SiLlqiPF8/edit#gid=0'; var template = SpreadsheetApp.openByUrl(TEMPLATE_URL); var ss = template.copy(AdsApp.currentAccount().getName() + ' - Undefined Search Terms Report by ' + PRIMARY_METRIC); ss.addEditors(EMAILS); var tab = ss.getSheets()[0]; tab.getRange(2,1,tab.getLastRow(),tab.getLastColumn()).clearContent(); tab.getRange(2,1,output.length,output[0].length).setValues(output).sort([{'column': 1, 'ascending': true}]); var msg = 'Hi,\nPlease find below the undefined search terms report for your Google Ads account:\n'+ss.getUrl(); MailApp.sendEmail(EMAILS.join(','), AdsApp.currentAccount().getName() + ' - Undefined Search Terms Report by ' + PRIMARY_METRIC, msg); Logger.log("Your report is ready at " + ss.getUrl()); } function round_(num,n) { return +(Math.round(num + "e+"+n) + "e-"+n); } function getAdWordsFormattedDate(d, format){ var date = new Date(); date.setDate(date.getDate() - d); return Utilities.formatDate(date,AdsApp.currentAccount().getTimeZone(),format); }

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

Как продолжать глубоко прорабатывать поисковые запросы в Google Ads (вопреки  введённым ограничениям)

на моих проектах получились цифры до 50% по непоказанным кликам и до 80% по скрытым показам, согласитесь цифры впечатляющие.
и нужно что-то с этим делать.


поехали по шагам.

1. заходим в Google Analytics, отчет по поисковым запросам Google Рекламы

Как продолжать глубоко прорабатывать поисковые запросы в Google Ads (вопреки  введённым ограничениям)

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

Как продолжать глубоко прорабатывать поисковые запросы в Google Ads (вопреки  введённым ограничениям)

сохраняем себе этот набор данных в кастомных отчетах - он нам пригодится и на других проектах, да и найти можно его теперь легким движением мышки

Как продолжать глубоко прорабатывать поисковые запросы в Google Ads (вопреки  введённым ограничениям)


2. дальше
работа уже с экспортированным в excell вариантом того же отчета, где нам нужно убрать все знаки препинания и символы из ключевого слова (для этого существует много методик, самая простоя через Ctrl + H), и через формулу сравнить слова в двух соседних ячейках

Как продолжать глубоко прорабатывать поисковые запросы в Google Ads (вопреки  введённым ограничениям)

полученный результат отфильтровываем по типу ЛОЖЬ и получаем запросы, которые не совпадают с ключами и с которыми в дальнейшем и нужно работать, в принципе это и есть запросы НЕ совпадающие с нашими ключами. дальше кто как привык - можно фильтровать по названиям РК, количеству показов, кликов или конверсий, в зависимости от специфики вашего проекта.


3. в том
же excell файле создаем рядом лист, названия столбцов в котором должны совпадать с названием столбцов в Google Редакторе и через формулу ставим знак равенства с нужными нам данными из соседнего листа

Как продолжать глубоко прорабатывать поисковые запросы в Google Ads (вопреки  введённым ограничениям)

все.

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

Как продолжать глубоко прорабатывать поисковые запросы в Google Ads (вопреки  введённым ограничениям)

лично мне в Редакторе больше с руки раскидывать запросы но группам и кросс минусовать лишнее уже непосредственно на уровне групп.


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

но сервисов реально много по данной опции, тут уже кому что нравится.

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

1818
18 комментариев

Мне оочень стыдно, но...  вот этот скрипт... его куда?))

этот скрипт никуда
он просто для понимания, сколько запросов гугл от нас прячет

Спасибо за материал. Я прорабатываю запросы из Google Analytics с условием фильтрации "если 0 кликов по поисковому запросу, то запрос НЧ" - и скорее всего запрос не отображается в интерфейсе Google Ads, но Ваш метод более детальный 

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

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

нет, скрипт для понимания масштаба трагедии, сама методика уже после него. 

Отличная статья! Интересно и полезно 👍