Bulk RSA Builder
Write RSAs in a Google Sheet — one row per ad, 15 headline and 4 description columns — and the script validates character limits and creates them in bulk. Copywriters work in the sheet; nobody pastes ads into the UI one by one.
by Google (RSA Builder concept), chiliad (rewrite)·github.com/google/responsive-search-ads-builder
Overview
Bulk RSA Builder is the first creation tool in the workflow: RSAs are written in a spreadsheet (campaign, ad group, up to 15 headlines, up to 4 descriptions, paths, final URL), the script validates every row against Google's limits — 30-char headlines, 90-char descriptions, minimum counts, path lengths, https URLs — and creates the valid ads in bulk. Every row gets its outcome written into the Result column (CREATED, or the exact validation error), and processed rows are never touched twice.
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.
- 3Run once — the script creates the template sheet and logs its URL. Put it into SPREADSHEET_URL.
- 4Fill one row per ad. Keep PREVIEW_MODE = true for the first pass to see validation results without creating anything.
- 5Set PREVIEW_MODE = false and run (or schedule daily to pick up new rows). Clear a Result cell to reprocess that row.
Configuration Variables
| Variable | Default |
|---|---|
SPREADSHEET_URL | (empty) |
SHEET_NAME | RSAs |
PREVIEW_MODE | true |
EMAIL_ADDRESS | (empty) |
Expected Output
=== Bulk RSA Builder (LIVE) === Created: 8 Skipped/invalid: 2 Brand — Exact > Core: CREATED Shoes — Generic > Running: CREATED Sneakers > Promotions: SKIPPED: headline over 30 chars: "Our Biggest Summer Sale Ever Starts Now" (39 chars) Generic — Broad > Catch-all: SKIPPED: ad group not found Email sent to you@example.com
Notes
New ads are created ENABLED in their ad group; pause old ads separately if you're replacing copy. Pinning isn't supported in the sheet (deliberately — pinning hurts more than it helps in bulk workflows). Ads still pass Google's policy review after creation — CREATED means submitted, not approved. Concept from Google's Apache-licensed RSA Builder, rebuilt on the current Scripts API.