Google Ads Scripts
Automate your Google Ads campaigns with ready-to-install scripts for budget management, bid adjustments and performance reporting. Browse the full library and preview any script for free.
What are Google Ads Scripts?
Google Ads Scripts are JavaScript-based programs that run directly inside your Google Ads account. They connect to your campaign data and can make changes automatically — pausing underperforming ads, adjusting bids based on stock levels, sending Slack alerts when spend spikes, or generating scheduled reports in Google Sheets.
A script you install once can run on a schedule — hourly, daily, or weekly — without any manual work. That turns hours of repetitive account management into a background process. The library below contains scripts built and maintained by Google Ads professionals.
Google Ads Scripts (19)
Previously known as Performance Labelizer
This is our most popular paid script, designed to improve campaign management by analyzing product performance and creating labels for campaign segmentation.
Products are categorized as ‘Index’, ‘Over-index’, ‘Near-index’, ‘Under-index’, or ‘No-index’ based on your selected ROAS or CPA targets and other performance metrics.
Purchasing this script grants lifetime access to all versions, including future updates and new releases. You can try version 1.1 for free to test the basic functionality before upgrading.
The Flowboost Price Labelizer is a paid Google Ads script for price-based campaign management. It uses Merchant Center price data to group products and create labels for campaign segmentation.
Products are categorized as ‘Exact’, ‘Below’, or ‘Above’ by comparing their price with the benchmark price, using a configurable absolute or percentage difference. The spreadsheet also shows product-level advertising metrics and price insights, including suggested prices and predicted changes in impressions, clicks, and conversions where Merchant Center data is available.
The script can only include products for which Merchant Center provides Price Competitiveness or Price Insights data, so products sold by too few retailers or with little Shopping or free-listing traffic may not appear. Purchasing this script grants lifetime access to all versions, including future updates and new releases, and version 1.1 is available free as a trial.
This paid script helps adjust campaign budgets to capture available volume while keeping CPA or ROAS performance within your targets, using budget utilization and performance thresholds.
It calculates each campaign’s seven-day budget utilization rate from spend and daily budget, then increases or decreases the budget when it meets your utilization, conversion, and ROAS or CPA rules. You set the utilization thresholds, adjustment percentage, minimum and maximum adjustment amounts, conversion lag, and optional campaign label filter.
Purchasing this script grants lifetime access to all versions, including future updates and new releases. The free version provides basic budget scaling, while the full version adds email recaps and a per-campaign dashboard with detailed graphs.
This paid script helps you maintain tighter match-type control in selected campaigns by comparing search terms with enabled keywords and adding non-matching terms to shared negative keyword lists.
In modified broad match mode, it requires every keyword word to appear in the search term, while allowing controlled misspellings through Levenshtein distance. You can also use phrase or exact matching and apply an ROAS or CPA threshold, so only non-matching search terms that meet your criteria are excluded.
Purchasing this script grants lifetime access to all versions, including future updates and new releases. You can use version 1.0 for free to test strict exact-match control before upgrading.
This paid script helps manage Search campaigns by benchmarking keyword and search term performance, then grouping each item into performance buckets for campaign segmentation.
Keywords and search terms are categorized as ‘Over-index’, ‘Index’, ‘Near-index’, ‘Under-index’, or ‘No-index’ based on your selected ROAS or CPA target, clicks, conversions, and conversion rate. The spreadsheet also includes impressions, cost, conversion value, CPC, CTR, CPA, ROAS, and average order value for each item.
Purchasing this script grants lifetime access to all versions, including future updates and new releases.
This free script helps you plan seasonal budget changes by comparing campaign performance across seasonal periods and generating recommendations for seasonality adjustments and daily budget optimization.
It analyzes performance across periods such as before Black Friday, pre-Black Friday, Black Friday, and post-Black Friday. The latest version can also separate brand and non-brand performance across Search, Shopping, and Performance Max campaigns.
It is designed for seasonal planning and reporting, giving you recommendations to review before making campaign changes.
This free script helps you monitor how Performance Max spend is distributed across Display, Video, Shopping, and Search by comparing recent channel performance with a longer-term average.
It records channel data for each Performance Max campaign, then compares the rolling average, which defaults to 7 days, with the longer reporting period, which defaults to 30 days. When a channel’s cost distribution changes beyond your configured threshold, the script sends an email alert with a campaign-level breakdown.
Set the spreadsheet URL, email recipients, alert threshold, and reporting periods before running the script. It only reports campaigns with eligible Performance Max data.
This free MCC script helps keep campaigns running by checking landing page URLs in ads, keywords, and sitelinks across your account hierarchy and reporting broken or unreachable pages.
It records issues such as 404 responses in a Google Spreadsheet and can send email alerts. You can also use custom validation rules and failure strings to flag URLs based on conditions you define.
Set the spreadsheet URL, email recipients, and optional account label filter before running the script. Schedule it hourly to keep the report current.
This free script helps you keep campaign search terms under control by comparing them with an approved list and adding unapproved terms to a shared negative keyword list.
It collects search terms from selected campaigns and checks whether they meet your click threshold. Terms that are not on the approved list are added to the negative keyword list.
Run the script hourly and set daysAgo between 1 and 7 days. It is designed for campaigns where you want to allow only selected search terms.
This free script helps you identify when higher CPCs reduce account or campaign profitability by grouping click costs by hour and day and visualizing them in heatmaps.
It analyzes CPCs per hour and weekday, placing the data into CPC buckets. You can set a maximum CPC for campaigns and use heatmaps and cumulative graphs to understand which CPC levels are profitable.
It is an analysis tool: setting a lower maximum CPC can limit lead or purchase volume, so set thresholds after reviewing performance.
From August 17, 2026 campaigns that are limited by budget and use a target-based bid strategy (Target ROAS / Target CPA) no longer overachieve their target. Google uses the headroom to buy extra volume until the campaign lands on the target you configured. A campaign that ran at 800% ROAS on a 500% target will drift back towards 500%.
This script counters that on campaigns where the budget is fixed. Every day it measures the Budget Utilization Rate (BUR) per campaign. When a campaign runs into its budget it ratchets the target up in small steps, so Google keeps buying the good auctions only. When the campaign is no longer budget limited it walks the target back down, step by step, until it reaches the base target you actually want. The base target is a hard floor - the script never goes below it.
The base target per campaign lives in the "Targets" tab. On the first run it is seeded from whatever target the campaign has right now. Edit that column if you want a different floor. Lowering a target by hand in the Google Ads interface also moves the floor, so a deliberate change is never undone by the script.
The first run only seeds and reports. From then on the target steps at most once per day.
Note: this script never touches budgets. If you also run "Autoscale with Budgets", do not point both scripts at the same campaigns.
This free script helps you monitor Google Ads performance with a customizable dashboard that compares short- and long-term moving averages.
Set your own moving-average periods and conversion lag to account for delayed conversion data. The script creates a dashboard with six graphs, including ROAS, to show changes in performance over time.
It is designed for analysis and reporting, with settings for both moving-average periods and conversion lag.
This free script helps keep standard Shopping and Search campaigns focused by finding search queries that do not contain your chosen terms and adding them to a negative keyword list.
Add brand terms, misspellings, or selected generic terms to the queryString variable. The script excludes queries that do not contain those terms after they meet the impressions threshold you set.
It works with standard campaign types and does not support Smart Shopping or Performance Max. Create the negative keyword list before running the script and select its name in the configuration.
This free script helps you prepare for the Enhanced CPC sunset by scanning all Google Ads accounts in your Manager Account and identifying campaigns that use Enhanced CPC bidding.
For each matching campaign, it logs the account name, campaign name, budget, and status. This creates a clear report for reviewing affected campaigns.
It is designed for checking and reporting across MCC accounts.
This free script helps account managers improve keyword management by automatically adding performing search queries to the ad groups where they were found.
It checks search queries from enabled campaigns and ad groups over your chosen date range, then selects queries that meet every active threshold for impressions, clicks, conversions, CTR, CPA, and cost. Qualifying queries that are not already keywords are added in your chosen exact, phrase, or broad match types, then receive a date label and custom label; the script sends an email recap of the additions.
Configure the date range, performance thresholds, match types, recap email address, and label name before running the script.
This free script tracks the average weighted Quality Score for Google Ads campaign experiments by matching campaigns with a shared base name.
It records the weighted Quality Score per day for the last 7 days by default. You can also set the reporting period to the last 30 days or the last business week.
It requires a consistent naming convention: experiment campaign names must start with the base campaign name you set in the script.
This free script helps you spot unexpected increases in Google Ads spend by comparing current spend with last month’s spend and sending an email alert.
It checks whether spend is close to the previous month’s spend. When the alert condition is met, the script sends a custom email notification.
It is designed for monitoring spend against the previous month and receiving email notifications.
This free script lets you request fresh fetches for enabled file-based Google Merchant Center data sources and log the outcome in a Google Spreadsheet.
It checks each data source in your Merchant Center account and requests a fetch when file input and fetch settings are enabled. The report includes the date and time, Merchant Center ID, data source name and ID, fetch URL, source type, and fetch status.
Enable the Merchant API Accounts and DataSources services, then provide your Merchant Center ID and the email address of the Google account that authorizes the script. That account needs Admin access to the Merchant Center account. If its Admin access sits on an advanced (manager) account, add that account ID as the registration account. Leave the spreadsheet URL empty if you want the script to create a new report spreadsheet.
This free script helps protect Shopping campaigns by checking advertised products for Merchant Center disapprovals, limitations, and out-of-stock statuses, then sending an email alert when products need attention.
It reviews products with impressions during your selected period, which defaults to 30 days, and checks their Shopping Ads status in Merchant Center. Alerts include the product ID, title, issue type, disapproved countries, and severity.
Enable the Merchant API Accounts and Reports services, then set your Merchant Center ID, recipient email addresses, and the email address of the Google account that authorizes the script. That account needs Admin access to your Merchant Center account, or to the advanced (manager) account above it.
Also explore: Google Ads Custom Columns
Custom columns let you build your own metrics directly in Google Ads — no scripts needed. Combine existing columns with formulas to surface the data that matters most to you.
Browse Google Ads Custom Columns →