How to Scrape the Google Ads Transparency Center in 2026
Pull every Google ad a competitor runs — Search, Display, Shopping, YouTube — with impressions ranges, spend tiers and creative variants. How the RPC backend works and how to batch domains.
Meta’s Ad Library made competitor ad spying a normal part of marketing. Google’s equivalent — the Ads Transparency Center — is just as rich but far less convenient: there’s no clean public API, the UI is a JavaScript-heavy single-page app, and the data you actually want (impressions, regions, spend tiers, creative variants) is buried behind lazy-loaded RPC calls. This guide covers what’s exposed, how the backend actually serves it, and how to pull every ad a set of competitors is running at scale.
What the Transparency Center exposes
Google is legally required to disclose advertising, and the Transparency Center is where that disclosure lives. For any advertiser you can pull their live and historical creatives across Search, Display, Shopping, YouTube and Discovery, plus a layer of regulatory metadata. The fields worth collecting:
- Creative assets — image, text, and video creatives, with dimensions and rich-media iframe previews.
- Format and surface — which Google surface the ad runs on and its format classification (text/image/video/display).
- Impressions — impression ranges (Google reports bands, not exact counts) and per-region impression breakdowns.
- Spend tiers — banded spend estimates per advertiser/region.
- Creative variants — A/B variant URLs and variation counts, so you can see how aggressively a competitor is testing.
- Timing — first-shown and last-shown timestamps per creative.
- Audience taxonomy — the audience classification Google attaches.
- Funder / payer info — for political ads, the disclosed funder, for accountability and journalism.
The anti-bot reality (and why it’s gentler than you’d expect)
Here’s the pleasant surprise: you don’t need a headless browser for this one. The Transparency Center front-end is heavy, but its data comes from direct HTTP RPC requests — the same JSON-RPC calls the page makes after it loads. This actor talks to those endpoints directly rather than rendering the SPA. The upshot:
- No Playwright, no Chromium, no fingerprint juggling.
- Far lower compute cost and far higher throughput than a browser-based scraper.
- One record per creative, combining the asset and its disclosure metadata.
The trade-off is that RPC payloads are terse and undocumented — the parsing and field-mapping is the hard part, which is exactly what the actor handles for you. You don’t have to reverse-engineer Google’s RPC schema or keep up when they reshuffle it.
Batching competitors
You can target advertisers by domain, advertiser identifier, or brand name, and the actor takes multi-target batch queries — point it at a list of competitor domains and it fans out with automatic deduplication. You can scope by region (ISO country, or global) and filter by format. A typical competitive-intel setup:
- List your competitor set (up to a few dozen domains in one run).
- Set region scope — a single market you compete in, or global for a full picture.
- Enable impressions and spend enrichment if you want share-of-voice math.
- Schedule it weekly and diff the creative set to catch new launches.
▶ Run the Google Ads Transparency Center Scraper — batch up to dozens of competitor domains across Search, Display, Shopping and YouTube. Impressions ranges, spend tiers, A/B variants. Pure HTTP, no login.
What a creative record looks like
{
"advertiser_name": "Example Corp",
"advertiser_domain": "example.com",
"creative_id": "CR0123456789",
"format": "video",
"surface": "youtube",
"regions": ["US", "GB", "DE"],
"impressions_range": "100K-1M",
"impressions_by_region": { "US": "100K-1M", "GB": "10K-100K" },
"spend_tier": "$50K-$100K",
"variant_count": 4,
"variant_urls": ["https://...", "https://..."],
"first_shown": "2026-03-11",
"last_shown": "2026-05-25",
"asset_url": "https://...",
"audience_taxonomy": ["Shoppers", "In-market: Software"],
"funder": null
}
Typical use cases
- Competitive ad monitoring — track which Google ads competitors run, where, and at what scale, on a schedule.
- Programmatic ad-library feed — archive competitor creatives over time to study how campaigns evolve.
- Creative swipe files — collect competitor images and rich-media previews to analyze formats and visual themes.
- Regional strategy intelligence — use per-region impressions to map where a competitor is concentrating spend.
- Share-of-voice analysis — aggregate impressions and spend tiers to estimate category share across an advertiser set.
- Lead generation — active advertisers are warm leads for agencies and ad-tech sales.
- Political ad accountability — surface funder/payer disclosures for research and journalism.
Cost math
Pay-per-event: a per-run start fee plus roughly a tenth of a cent per creative returned. Because there’s no browser and no residential proxy bill, the marginal cost is genuinely low. Monitoring 30 competitor domains weekly — say a few hundred to a couple thousand creatives per run — costs a few dollars a month. A one-off deep pull across a large advertiser set with full enrichment still lands in single dollars.
The build-your-own version means reverse-engineering Google’s RPC layer, mapping its undocumented field encodings, and re-fixing your parser every time Google tweaks the schema. The HTTP approach is cheap to run but expensive to maintain — which is the whole argument for letting someone else carry the parser.
Pitfalls to plan for
- Impressions are ranges, not numbers. Google reports bands like “100K–1M.” Don’t treat the midpoint as truth; model with the band.
- Spend tiers are coarse. They’re directional for share-of-voice, not exact budgets. Aggregate across many creatives for a usable signal.
- Coverage varies by region and ad type. Some disclosures (political funder data, EU impressions) are richer in regulated markets. Expect nulls outside them.
- Creative IDs are your dedup key. The same ad can appear across regions/surfaces; dedupe on
creative_idbefore counting. - Last-shown lags. “Last shown” can trail real-world pause dates. Use it as a recency hint, not a precise stop signal.
Wrapping up
Google’s ad disclosures are a goldmine of competitive intelligence — if you can get past the SPA and the undocumented RPC layer. A managed scraper talks to those endpoints directly, no browser, and hands you one clean record per creative with impressions, spend tiers, and variants ready to analyze. Point it at your competitor set and let it run weekly.
▶ Open the Google Ads Transparency Scraper on Apify — multi-domain batch, multi-region, pure HTTP, no login. Pay per creative. Start with Apify’s free monthly credit.
Related guides
How to Audit Influencer Fake Followers in 2026
A practical methodology guide to vetting YouTube creators before you sponsor them — engagement quality, inflated-subscriber signals, brand-safety scans and a fit verdict.
How to Find YouTube Influencers by Niche with Engagement Data in 2026
Discover YouTube creators by keyword niche and get subscriber count, average views, computed engagement rate, business email and social links for influencer outreach.
How to Scrape Competitor Ads in 2026
A practical guide to pulling competitor ad data from Google's Ads Transparency Center — active-ad volume, creative format mix, sample previews, and a strategy read.