Shared Negative List Coverage
Verifies every Search and Shopping campaign carries your universal shared negative lists — and can attach missing ones automatically, because every new campaign starts unattached.
by Dmytro Tonkikh·chiliad.io
Verifies every Search and Shopping campaign carries your universal shared negative lists — and can attach missing ones automatically, because every new campaign starts unattached.
by Dmytro Tonkikh·chiliad.io
Uses Claude AI to analyze your search terms and recommend negative keywords with clear reasoning. Each term is evaluated for business relevance, intent, and conversion potential — then exported to a Google Sheet with actionable suggestions.
Finds brand search terms leaking into non-brand campaigns (inflating their stats and misleading Smart Bidding) and generic traffic riding in brand campaigns — with the misrouted spend quantified.
Measures how much of your exact-match spend actually flows through close variants and lists the zero-conversion variants — the most surgical negative keyword candidates in the account.
Reads negative keywords and placement exclusions from a Google Sheet and syncs them to multiple campaigns via shared negative keyword and placement lists. Optionally filters to campaigns with a specific label.
Quantifies spend on search queries containing competitor names, with conversion performance and a period-over-period trend — whether competitor bidding is your strategy or your broad-match accident.
Shows what your Dynamic Search Ads decided on their own: waste queries to negate, the landing pages absorbing DSA spend, and converting queries to promote into real keywords.
Universal negative lists only protect campaigns they're attached to — and every new campaign starts with zero attachments. Shared Negative List Coverage checks that every enabled Search/Shopping campaign carries each list you name in REQUIRED_LISTS, reports the gaps, and with AUTO_ATTACH enabled closes them automatically, logging every attachment it makes.
| Variable | Default |
|---|---|
REQUIRED_LISTS | ['Universal negatives'] |
AUTO_ATTACH | false |
EMAIL_ADDRESS | (empty) |
=== Shared Negative List Coverage (24 campaigns) === "Universal negatives": missing from 2 campaign(s) - New Launch — Phrase - Shopping — Seasonal Attached automatically: 2 "Universal negatives" -> New Launch — Phrase "Universal negatives" -> Shopping — Seasonal Email sent to you@example.com
List names must match exactly (case-sensitive). AUTO_ATTACH only ever adds attachments — it never detaches anything. This is the structural guarantee that makes a master-negative-list strategy actually hold as the account grows.