Google Ads Scripts: почему мониторингу не нужен ваш пароль

Google Ads Script выполняется внутри аккаунта, по расписанию Google, под доступом владельца. Поэтому аккаунт отчитывается наружу, ничего наружу не выдавая.

Опубликовано 20 августа 2026 г. · 7 мин чтения

Предложите байеру подключить аккаунт к внешнему инструменту — возражение прилетит раньше, чем вы договорите: какой доступ ему нужен и что он с ним сделает. Возражение правильное. Большинство интеграций отвечают на него экраном OAuth и списком разрешений, который принимают не читая.

Есть другой способ вынести данные из аккаунта Google Ads, и это штатная возможность самого Google Ads.

Что такое скрипт на самом деле

В разделе «Инструменты и настройки» есть пункт «Скрипты». Он принимает JavaScript и выполняет его внутри аккаунта, на инфраструктуре самого Google, по расписанию, которое вы выбираете, — минимальный полезный шаг это час. Код работает с доступом того, кому принадлежит аккаунт, потому что выполняется в его аккаунте. Никто снаружи не аутентифицируется: снаружи никого нет.

Именно это свойство и делает схему интересной для мониторинга. Скрипт читает то, что аккаунт знает о себе, — показы, клики, расход, конверсии, статусы кампаний и объявлений, ограничения по политике — и отправляет цифры на URL. С точки зрения внешнего инструмента аккаунт это клиент, который к нему постит, а не ресурс, в который он лезет. Инструмент не хранит доступов и не может зайти в аккаунт, потому что заходить некуда.

Что это даёт на практике

Установка — это вставка файла. Скопировать в аккаунт, поставить расписание, запустить один раз. При первом запуске Google попросит владельца авторизовать скрипт — владелец авторизует собственный код, в этом и смысл, — и на этом всё: ни сервисного аккаунта, ни стороннего скоупа на проверку, ни ожидания администратора MCC.

Данные — собственные данные аккаунта. Скрипт читает те же отчёты, что и интерфейс, поэтому цифры, за которыми вы следите, и цифры, которые вы увидите, открыв аккаунт, — одни и те же. Ничего не выводится из кликов и не восстанавливается по тегу.

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

Лендингов это не касается вообще. Скрипт читает рекламный аккаунт, а не трафик. На ваших страницах нет ни сниппета, ни куки, ни лишнего запроса между объявлением и оффером.

Где это заканчивается

Границ две, и инструмент, который их прячет, с вами нечестен.

Расписание принадлежит Google, а не вам. Часовой скрипт выполняется примерно раз в час. Для «аккаунт перестал тратить» и «одобрения провалились» этого достаточно с запасом — оба события разворачиваются часами, — но это не поток в реальном времени. Любое обещание мгновенного обнаружения, построенное на скриптах, обещает что-то другое.

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

Чего это не делает само по себе

Чтение — одно направление. Если инструмент ещё и действует — ставит объявление на паузу, останавливает кампанию, меняет бюджет, — этому действию тоже надо где-то выполняться, и со скриптом ответ тот же: оно выполняется в аккаунте, из очереди, которую собственный скрипт аккаунта заберёт на следующем проходе.

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

Такова форма подхода: ни доступов, ни OAuth, ни кода на ваших страницах, а взамен — частота, измеряемая часом, а не секундой, и файл, который принадлежит вам и потому требует вашего обслуживания.

Все статьи