Ad automation · 10 min read
Google Ads Editor Alternative: Bulk Upload, Scripts, API
Four official ways to change many Google Ads items at once, compared on stated limits, validation, error handling and review: Google Ads Editor, web bulk upload, scripts and the Google Ads API, with a decision table.
By The Vexio team Published Updated
Google Ads Editor alternative: which method fits the job?
| If the job is… | Use | Why |
|---|---|---|
| Reviewed, hands-on edits by one person or a small team | Google Ads Editor | Offline drafts, undo, search and replace, Check changes before posting |
| Spreadsheet changes with no install, or one sheet across accounts under a manager account | Bulk upload in the web interface | Download a report or template, edit, preview, apply |
| A rule that runs on a schedule: pause, alert, report | Google Ads scripts | JavaScript that Google hosts and schedules |
| Changes that start in another system, need your own approvals, or run at volume | Google Ads API | Full control, and you build the review and infrastructure yourself |
Google provides all four. Editor is not a problem to be replaced for most jobs: if a person is making reviewed edits to a large account, it is usually the right tool. The sections below give the stated limits of each method as documented on 2026-10-14, how each validates changes, and what it costs you in build effort.
Google Ads Editor
Google describes Editor as a free, downloadable application for managing Google Ads campaigns. The basic process in Google’s words: download one or more accounts, make changes offline, then upload the changes. Its help pages list bulk editing, search and replace across ad groups or campaigns, copying or moving items between them, undo and redo of multiple edits, drafts, statistics, offline work and managing several accounts at once.
Review and validation in Editor
Google’s six-step guide has you review your settings, download, edit, optionally share proposed changes with colleagues, run Check changes, and post. It says to address the errors and warnings Check changes reports before posting. Editor can export and import files to share proposals, so a reviewer can send edits back.
CSV import
Editor imports CSV files to add or change many items. Google’s guidance:
- Account > Import, then choose a file or paste CSV text, and fix any wrong column headers from the drop-down.
- The first row is treated as the header. Using Editor’s standard headers is recommended.
- Each row should describe one item, such as a campaign or an ad.
- Editor does not import XLS files. From Excel, save as Unicode text.
- The preview shows part of the file. Files with more than 100 rows are imported in full.
- Imported changes appear as proposed changes. You can keep all, reject all or review one by one, and revert the import later.
- A column named “#Original” holds a field’s original value. Edit the other column.
- Import is greyed out while other proposed changes are pending.
Limits of Editor
The Editor pages checked on 2026-10-14 state no file size or row limit for CSV import and describe no scheduling, so repeated tasks mean repeated manual runs. Each person works in a local copy.
When Editor is the better choice
Choose Editor for reviewed edits by a few people, offline drafting of a large restructure, or one-off changes where undo and search and replace beat building automation.
Google Ads bulk upload in the web interface
Bulk upload means downloading a spreadsheet, making line-item changes offline and uploading it. From a manager account, one spreadsheet can affect accounts across the hierarchy.
How a bulk upload works
- Get a sheet: download a report with “Editable columns for Bulk Upload” ticked, or start from a template for new items. Google recommends keeping a copy of the original download.
- Edit it offline.
- Upload it. For one account, use the upload icon on the Campaigns, Ad groups, Ads or Keywords page. For several accounts, go to Tools, Bulk actions, Uploads in a manager account, choose Multiple Accounts, and include a Customer ID column.
- Preview, then Apply. For uploads over 1,000 rows, Google says all rows are uploaded although the preview shows the first 1,000.
Stated limits and errors
- Formats: Google Sheets, .xls, .xlsx, .tsv or .csv.
- Size: 50 MB or less and 1 million rows or less. Uploads time out after 2 hours of processing.
- Errors: the uploads list shows an error count in the Results column, and each error has a reason. Google’s list includes a missing header row, missing required values, invalid IDs, wrong value types and conflicting changes when someone else edits the account.
- Details of an applied upload are viewable for 90 days.
- Scheduled uploads exist for conversions (Goals, Conversions, Uploads). The pages checked do not describe schedules for other bulk edits.
When bulk upload is the better choice
Choose it for spreadsheet changes with no installation, work across accounts from a manager account, or many similar items created from a template.
Google Ads scripts
Google calls scripts a serverless automation platform. You write modern JavaScript (ES6+) in a browser-based editor, Google hosts it, and you can schedule runs hourly, daily, weekly or monthly, or run on demand. Documented uses include changing bids and budgets from performance data, building reports with GAQL, running manager scripts across child accounts, and connecting to Sheets, Drive and BigQuery.
Script limits
Google’s limits page states:
- An advertiser-account script runs for at most 30 minutes, then is cancelled.
- A manager script that uses
executeInParallelwith a callback can run up to 60 minutes and process up to 50 accounts. - Iterators default to at most 50,000 results, and
withIds()accepts at most 10,000 IDs. - Each account can have up to 250 authorized scripts.
- Scripts that use bulk uploads are bound by the same 50 MB and 1 million row file limits.
Google adds that limits can change without warning.
Validation in scripts
AdsApp.mutateAll sends an array of operations in one request, and results return in input order. Partial failure defaults to true, so valid operations run and failed ones return errors. Pass {partialFailure: false} to make the batch all-or-nothing. Scripts have no review screen, so teams build one with logging, a dry-run mode that writes proposed changes to a sheet, or an email summary.
When scripts are the better choice
Choose scripts for rules that repeat: pause ads over a threshold, alert on budget pacing, email a report. You need someone who can maintain JavaScript.
Google Ads API
Google describes the API as the programmatic interface to Google Ads, recommended for developers comfortable writing code and managing their own software infrastructure. It points to scripts for custom logic without servers, and to bulk uploads or Editor for bulk management without code.
API limits and controls
- A
GoogleAdsService.Mutaterequest allows up to 10,000 operations, or 20,000 when all are ad group criterion operations. A request may contain at most 100 action operations. - A batch job can hold up to 1,000,000 operations, added at up to 10,000 per
AddBatchJobOperationscall. - By default, a mutate request rolls back entirely if one operation fails. Set
partial_failureto commit the valid operations. Not every service supports it, and children of a failed parent that use a temporary ID fail too. validate_onlychecks a request without executing it. Google says it works on most mutate requests and onGoogleAdsService.Search, but not onSearchStream.- Group operations by resource type and put parents before children.
Access levels and authentication
Google’s access-levels page lists Test, Explorer, Basic and Standard. Production daily limits are 2,880 operations for Explorer, 15,000 for Basic, and unlimited for Standard, subject to per-service rate limits. Standard goes through a manual review. This part changed: Google’s developer-token page says developer tokens were sunset on September 9, 2026, and access levels now attach to the Google Cloud project that owns your OAuth client or service account. Sending a developer token is optional and ignored by the servers. New Basic and Standard applications require brand verification. Some other API pages still mention the token, so confirm against your client library version. Google offers a service account workflow for accounts you already manage and a user authentication workflow for apps that act for other users.
API versions and sunsets
Google’s deprecation page states that major versions last around 12 months, that it aims to keep at most five major versions available, and that you will need at most two upgrades per year. As documented on 2026-10-14, v26 was released that day. v23 has a tentative sunset of February 2027 and v24 of May 2027. A tentative date means the sunset could happen any time in that month, so read the table when you plan.
When the API is the better choice
The API has no review screen. If your team needs approval before changes go live, you build a staging table, a diff, an approval step, an audit log and a rollback plan. That is the main cost of the route and its main advantage, because your rules apply before anything is written. Choose it when changes start in a catalog or feed, when you manage many accounts, or when you are building a product on top of Google Ads.
Editor vs API: the trade-off
Editor gives a person a reviewable local copy with no engineering. The API gives software the same reach with your own validation, but you own versioning, access and error handling. For reporting data rather than writing changes, Google points to the BigQuery Data Transfer Service; see Google Ads to BigQuery options. Whichever route writes changes, a downstream pipeline should survive restatements: idempotent ad reporting pipelines shows how, and marketing ETL explained covers the wider design. For help scoping that work, see the data engineering services buyer’s guide.
Combining the four methods
Most teams mix them: scripts for monitoring, Editor for restructures, the API for integrations, and web bulk upload for the person who needs to change one column. Pick by who makes the change, how often, and whether anyone must approve it. The Google Ads platform page has more context.
Where the campaign builder fits
Vexio builds spreadsheet-to-approval workflows and Google Ads integrations as custom engagements. The campaign builder starts with Google Ads. Each row is validated, the proposed changes are reviewed and approved, and only then are they published. Read about the campaign builder or request a demo.
Sources
Checked on 2026-10-14.
- Google Ads Editor Help, About Google Ads Editor: https://support.google.com/google-ads/editor/answer/2484521 (features)
- Google Ads Editor Help, 6 steps to using Google Ads Editor: https://support.google.com/google-ads/editor/answer/47659 (workflow)
- Google Ads Editor Help, Import a CSV file: https://support.google.com/google-ads/editor/answer/30564 (CSV import)
- Google Ads Editor Help, Prepare a CSV file for import: https://support.google.com/google-ads/editor/answer/56368 (CSV format)
- Google Ads Help, Intro to bulk uploads: https://support.google.com/google-ads/answer/10702932 (downloads, templates)
- Google Ads Help, Upload spreadsheets and apply changes: https://support.google.com/google-ads/answer/10702433 (upload locations)
- Google Ads Help, Bulk uploads and edits tips: https://support.google.com/google-ads/answer/10702623 (size and row limits)
- Google Ads Help, Fix issues with your spreadsheet: https://support.google.com/google-ads/answer/9040754 (error reasons)
- Google Ads scripts, Product overview: https://developers.google.com/google-ads/scripts/docs/start (language, scheduling)
- Google Ads scripts, Limits: https://developers.google.com/google-ads/scripts/docs/limits (run times, file limits)
- Google Ads scripts, Mutate: https://developers.google.com/google-ads/scripts/docs/concepts/mutate (partial failure)
- Google Ads API, Overview: https://developers.google.com/google-ads/api/docs/start (API purpose)
- Google Ads API, Mutate best practices: https://developers.google.com/google-ads/api/docs/mutating/best-practices (operation limits)
- Google Ads API, Partial failure: https://developers.google.com/google-ads/api/docs/best-practices/partial-failures (partial failure)
- Google Ads API, Testing and validate_only: https://developers.google.com/google-ads/api/docs/best-practices/testing (validate_only)
- Google Ads API, Access levels: https://developers.google.com/google-ads/api/docs/api-policy/access-levels (levels, daily limits)
- Google Ads API, Developer token: https://developers.google.com/google-ads/api/docs/api-policy/developer-token (token sunset)
- Google Ads API, OAuth overview: https://developers.google.com/google-ads/api/docs/oauth/overview (authentication)
- Google Ads API, Deprecation and sunset: https://developers.google.com/google-ads/api/docs/sunset-dates (versions, sunsets)