Skip to content

Managing Scripts

John Williams edited this page Mar 13, 2026 · 1 revision

Managing Scripts

Original Scripts ★

negative-keyword-conflict-resolver.js

Lines: 794 | Level: Single Account

Identifies and removes negative keywords that conflict with your positive keywords at ad group, campaign, and shared negative keyword list levels. Supports broad, phrase, and exact match conflict detection with dry-run mode and email reporting.

const CONFIG = {
  dryRun: true,
  detectPartialConflicts: true,
  emailAddress: 'you@company.com',
};

negative-keyword-blocker.js

Lines: 100 | Level: Single Account

Scans search term reports for specified trigger words (e.g., "cheap", "buy", "free") and automatically adds matching queries as exact match negative keywords at campaign or ad group level.

const CAMPAIGN_NAME = 'Your Campaign Name';
const TRIGGER_WORDS = ['buy', 'cheap', 'sell', 'used'];
const DAYS_TO_ANALYZE = 30;
const ADD_AT_CAMPAIGN_LEVEL = true;

mcc-label-assigner.js

Lines: 153 | Level: MCC

Reads a Google Sheet with Customer IDs and label names, then assigns those labels across your MCC child accounts. Auto-creates labels at the MCC level if they don't exist.

symbol-remover.js

Lines: 347 | Level: Single Account

Strips trademark symbols (™, ®, ℠, ©) from Responsive Search Ads and Performance Max campaigns. Uses a safe approach: creates new clean ads and pauses the old ones rather than editing in place.


Community Scripts

See the Managing category README for the full list of 15 community scripts covering budget management, label copying, audience copying, duplicate detection, and more.

Clone this wiki locally