This script helps you monitor the average weighted Quality Score for one base campaign and its experiment campaigns. It focuses on impressions so high-volume keywords count more than low-volume ones. By default it looks at the last 7 days, but you can switch it to the last 30 days or last business week.
You choose a base campaign name. The script then automatically finds all related experiment campaigns whose names start with that same base name. This is why a clear naming convention is important. Your experiment campaign name must include the original campaign name at the start. For example:
1.2 search - nb - nike // 20230831 // more direct ad copy
The script pulls keyword data from Google Ads and calculates:
A weighted average Quality Score for each campaign in the date range
A daily weighted Quality Score per campaign for each of the last 7 days
The results are sent to a Google Sheet, using a template that the script copies from the provided spreadsheet URL.
You get two main views in the sheet:
Summary view (Sheet1)
A compact log where each row shows:
Today’s date
Campaign name
The date range (for example LAST_7_DAYS)
The weighted average Quality Score
Daily view (Sheet2)
A day-by-day overview where each row shows:
Date
Campaign name
Daily weighted Quality Score
This makes it easy to:
Compare original vs experiment campaigns on Quality Score
Spot trends, like improving or declining Quality Scores over the last week
Keep a daily history for reporting or further analysis
Tips
Always start experiment campaign names with the exact same base name as the original campaign.
Use a clear naming pattern that includes a date and what you changed, so you remember the test later.
Run the script on a schedule to keep your Quality Score tracking up to date.
