Audience List Health Check
Audits every audience list for the silent breakers: lists under the 1,000-member Search minimum, (near) empty lists from dead tags or broken imports, and closed customer match lists.
by Dmytro Tonkikh·chiliad.io
Overview
Audience strategies break silently: the site tag stops firing, a customer match upload halts, membership durations expire — and the campaigns keep 'running' while matching nobody. Audience List Health Check audits every user list and reports three conditions: (near) empty lists (dead tags or broken imports), lists below the 1,000-member minimum required for Search serving (RLSA setups that quietly stopped), and lists closed to new members.
Setup
- 1Open your Google Ads account and go to Tools → Bulk Actions → Scripts.
- 2Click the + button to create a new script and paste the code below.
- 3Set EMAIL_ADDRESS to receive the report; leave blank for logs only.
- 4Preview once to verify, then schedule weekly.
Configuration Variables
| Variable | Default |
|---|---|
SEARCH_MINIMUM | 1000 |
EMPTY_THRESHOLD | 10 |
EMAIL_ADDRESS | (empty) |
Expected Output
=== Audience List Health Check === Lists checked: 22 (Near) empty: 2 Below Search minimum (1000): 3 Closed: 1 --- (NEAR) EMPTY - dead tags or broken imports --- "Checkout abandoners" (RULE_BASED) search: 0 display: 4 --- BELOW SEARCH MINIMUM - cannot serve on Search --- "Pricing page 7d" (RULE_BASED) search: 412 display: 890 --- CLOSED - no longer accepting members --- "Customers 2024 upload" (CRM_BASED) search: 8210 display: 8210 Email sent to you@example.com
Notes
List sizes are Google's estimates and lag reality by a day or two. An empty rule-based list almost always means the tag or the rule broke — check the tag first. Customer match lists shrink as memberships expire; schedule regular uploads to keep them warm.