How to manage Google Ads scripts across many client accounts
The practical ways to run the same script in many Google Ads accounts, and what each costs you in maintenance.
Running one script in one account is easy. The work starts when the same script has to run for thirty clients, each with its own budget, email address and report sheet.
The three approaches
- Copy and paste into each account. Simple to start, painful to maintain: every fix or improvement has to be repeated in every account, and the copies drift apart.
- One script at manager (MCC) level. A manager script can loop over client accounts with
AdsManagerApp. You keep one copy, but per-client settings end up hard-coded in the script or kept in a spreadsheet you have to maintain, and one run can only process a limited number of accounts in parallel. - A hosted script with a loader. The code lives in one place outside Google Ads. Each account, or the manager account, holds a tiny loader that downloads the current code on every run.
How chiliad does it
chiliad uses the third approach and adds the parts that are otherwise missing:
- One copy of the code, with version history. Saving a change updates every account on its next run.
- Assignments. You choose which accounts run which script. At manager level the loader runs only the accounts you assigned.
- Per-account values. Each variable has a default and can be overridden per account in a table, so the code stays identical everywhere.
- Run history and alerts across all accounts in one place.
To set this up for a script, follow Scripts and deployment.
- 1
The legend explains the three cell states.
- 2
Override — this account uses its own value.
- 3
Missing — the variable has no default and no value for this account, so the script would run with an empty setting.
- 4
Save changes takes effect on each account's next run. The loader in Google Ads does not change.